Как стать автором
Обновить
11.56

Google API *

API, предоставляемый сервисами Google

Сначала показывать
Порог рейтинга
Уровень сложности

Разработка навыка для «Алисы» на основе Google Keep заметок

Время на прочтение4 мин
Количество просмотров3.9K

На данный момент я активно пользуюсь приложением Google Keep для управления заметками на смартфоне. Для покупок в магазине достаточно удобно пользоваться заметками вида "чеклист", о которых и пойдет речь ниже.

Как правило для покупок в магазине используется один и тот же набор наименований. Если заполнить такой список, то в последующем при добавлении новых пунктов будут отображаться подсказки по уже добавленным, что достаточно удобно.

Казалось бы причем тут Алиса... так вот еще удобнее было бы добавлять такие пункты покупок в список, используя голосовой помощник от Яндекса.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии6

Android Studio. Kotlin. Подключение Google календаря через Content Provider

Время на прочтение18 мин
Количество просмотров6.2K

Подробно с демонстрацией своего кода рассказываю о том, как я реализовал в своем приложении на Kotlin добавление, редактирование, удаление и чтение событий из Google календаря при помощи Content Provider. Описываю "грабли", на которые наступал, не найдя в сети помощи и поддержки в тяжелое для себя время...

Читать далее
Всего голосов 3: ↑2 и ↓1+1
Комментарии5

Голосовой помощник, которого можно научить ругаться матом (часть 2)

Время на прочтение3 мин
Количество просмотров3.9K

Это вторая часть статьи про голосового помощника. Первую часть можно наути тут.

Читать далее
Всего голосов 3: ↑2 и ↓1+1
Комментарии1

Гугл скрипт в помощь молодому отцу

Время на прочтение2 мин
Количество просмотров9.8K

Если у вас есть маленькие дети, один или несколько, то возможно вам будет интересен скрипт который ежемесячно создаёт событие в гугл календаре, в котором точно указан возраст ребенка, а также указаны значимые события из жизни родителей.

С этим скриптом вам не придётся помнить даты, а ещё вам придёт оповещение стандартными средствами гугл календаря. Результат работы этого скрипта на скриншоте.

Расширяем функционал календаря скриптами
Всего голосов 20: ↑19 и ↓1+21
Комментарии9

Истории

Создаем библиотеку на php и публикуем на packagist

Время на прочтение6 мин
Количество просмотров7.7K

Прежде чем приступать к написанию кода, нам нужно решить, что именно такого полезного мы можем создать, какие функции будет выполнять библиотека. Довольно популярным является написание библиотек, упрощающих работу с тем или иным API. Зачастую API представляют из себя большой список различных методов, работающих не только через GET method http-протокола.

И это доставляет сложность при работе с ним у программистов: нужно постоянно учитывать все нюансы обращения к методу, его ответа, а еще может присутствовать аутентификация при работе и тд.

У меня есть некоторый опыт в создании пакетов для composer (пример) и я хочу поделиться знаниями с теми кто этого еще не делал. Подробности под катом...

Читать далее
Всего голосов 19: ↑17 и ↓2+21
Комментарии4

Отправка offline-конверсий в Campaign Manager 360 (DoubleClick)

Время на прочтение4 мин
Количество просмотров952

Была поставлена задача сделать отправку офлайн-конверсий в Google Campaign Manager 360 (далее GCM). Тот что DoubleClick. Думал, что может быть проще, чем дернуть пару методов API от Google. Работа растянулась на 3 недели. Хочу поделиться опытом, вдруг кому пригодится.

Читать далее
Всего голосов 1: ↑0 и ↓1-1
Комментарии0

Админка на Google Sheets — быстрый запуск и минимум ресурсов

Время на прочтение5 мин
Количество просмотров7.4K

Как-то мы столкнулись с задачей: нужно быстро обеспечить доступ данных на бэкенде, который управляет шаблонами писем. И провернуть все так, чтобы инструмент был понятен рядовому пользователю. При этом с админкой не сильно хотелось заморачиваться.

Если пилить полноценную админку, то нужно писать бэк и фронт, сверху к этому добавлять сортировки, фильтры... Да, на такой случай есть и заготовки, но выходит все равно долго. Почему бы не подцепиться к Google Sheets? Есть и фильтры, и сортировки, права доступа, история изменений — все необходимое. Многие умеют там работать. А еще, это дешевое решение. Попробовали и делимся сценарием простых шагов.

Читать далее
Всего голосов 14: ↑14 и ↓0+14
Комментарии9

Сохранение озвучки книги средствами Google TTS и python

Время на прочтение3 мин
Количество просмотров6.6K

В последнее время я полюбил слушать аудиокниги. Однако те книги, которые я хочу слушать, никто не озвучивает. Не думаю что кому то будет интересна моя драматичная история о выборе лучшего tts, проблемы в процессе написания, солнце в монитор и т.п., так что я просто представлю вам уже готовое решение.

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии32

Android in-app purchases, часть 5: серверная валидация покупок

Время на прочтение14 мин
Количество просмотров9.8K

Всем привет, я Кирилл, СТО Adapty. Я делал систему серверной валидации для наших SDK. Серверная валидация позволяет проверить подлинность покупки: устройство обращается к серверам Google за информацией, действительно ли была совершена покупка, и валидна ли она.

Сегодня расскажу про то, как её настроить для приложений на Android. 

Это пятая статья из серии, посвящённой подключению покупок в приложениях на Android. Остальные доступны по ссылкам:

1. Android in-app purchases, часть 1: конфигурация и добавление в проект.

2. Android in-app purchases, часть 2: инициализация и обработка покупок.

3. Android in-app purchases, часть 3: получение активных покупок и смена подписки.

4. Android in-app purchases, часть 4: коды ошибок от Billing Library и как не облажаться с тестированием.

5. Android in-app purchases, часть 5: серверная валидация покупок. — Вы тут

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Google Sheets API + Python. Чтение и запись с Сервисным Аккаунтом Google Cloud

Время на прочтение5 мин
Количество просмотров44K

Google Sheet и Sheets API - классный (простой, бесплатный и универсальный) способ организовать хранение и анализ данных получаемых от своего сервиса. При условии что этих данных не то чтобы очень много и поступают они не то чтобы очень часто.

У меня таких задач хватает и решаю я их либо на Python, либо на PHP. Сегодня возьму в руки Python и покажу как начать читать таблицы Google Sheets на Python и писать в них данные из кода с помощью Google Sheets API.

Невероятно интересно, продолжай...
Всего голосов 4: ↑3 и ↓1+2
Комментарии11

gRPC клиент. Попробуй на вкус клиент/сервер на gRPC

Время на прочтение4 мин
Количество просмотров11K

   В прошлой статье мы разобрали, как писать сервер на gRPC. И протестировали его с помощью BloomRPC. Теперь, давайте разберем как пишется клиент. И попробуем отправлять запросы с клиента на сервер. Это будет наш первый шаг к созданию микросервисов на грпц. 

   В моем случае я использую многомодульный проект, но можно создать отдельный проект. Структура проекта будет примерно следующей: 

Читать далее gRPC client
Всего голосов 6: ↑3 и ↓3+1
Комментарии0

Бывший сотрудник Яндекса выпустил бесплатный поисковик с блек… листами, но без рекламы

Время на прочтение6 мин
Количество просмотров64K

Здравствуйте, меня зовут Дмитрий Карловский и я крайне опечален качеством поиска современных поисковиков.

Например, обсуждали мы как-то в $mol-чате стоит ли делать "человеко-понятную" псевдостатику в урлах вида /snjat-dvushku/s-remontom/v-vihino для SEO, или всё же сеошники - шарлатаны, гадающие на поисковой гуще. Решили проверить кто там у нас в топе по запросу "квартира купить однокомнатная горьковская" и получили такой результат:

Дыбенко, Лесная, Жопа Мира, всё, что угодно, только не то, что спрашивали. Первые 4 результата - нерелевантный мусор. А потом сервис самого же Яндекса. Как так получилось, что в 2к21, в эпоху машинного обучения и GPT-3, у нас получился поиск хуже, чем на заре интернета?

Отгадка
Всего голосов 99: ↑78 и ↓21+77
Комментарии209

gRPC сервер с нуля

Время на прочтение5 мин
Количество просмотров28K

  Всем приветы. В прошлом посте https://habr.com/en/post/565020/ мы сравнили gRPC и REST. И собственно, прежде чем писать новый сервер на gRPC, давайте попробуем понять нужен ли он нам действительно. Нашей команде была необходима кодогенерация на разные языки программирования. На эту роль не плохо подходил Swagger, Thrift и gRPC со встроенным кодогенератором. От Thrift, спустя какое-то время, пришлось отказаться, из-за его особенностей и сложностей поддержи на c# (по-моему это была основная причина отказа). Дальше был выбор между Swagger + REST и gRPC. В целом оба варианта хороши, но если мы думаем гонять много и часто данные между клиентом и сервером, то почему бы не протестировать gRPC?  

Структура проекта будет выглядеть следующим образом.

Read more about gRPC server creation.
Всего голосов 7: ↑4 и ↓3+3
Комментарии12

Ближайшие события

12 – 13 июля
Геймтон DatsDefense
Онлайн
19 сентября
CDI Conf 2024
Москва

Гугл финанс перестал транслировать данные российских акций — что делать? (UPD: починили)

Время на прочтение4 мин
Количество просмотров60K

С 5 июня 2021 года сайт гугла, и самое главное гугл таблицы - перестали отдавать данные с Московской биржи. 

При попытке получить любые котировки с префиксом MCX, например для Сбербанка, формулой из гугл таблиц =GOOGLEFINANCE("MCX:SBER") теперь всегда возвращается результат #N/A.

А при поиске любой российской бумаги на сайте Google находятся любые рынки, кроме Московской биржи.

В этой статье я рассказываю как получать в гугл таблицу биржевые данные с помощью API Московской биржи.

Google Finance давай, до свидания!
Всего голосов 15: ↑14 и ↓1+21
Комментарии31

Обновляемся на новую версию API Android по наставлению Google

Время на прочтение7 мин
Количество просмотров14K

Скоро выходит Android 12, но в этом августе уже с 11-й версии разработчикам придётся использовать новые стандарты доступа приложений к внешним файлам. Если раньше можно было просто поставить флаг, что ваше приложение не поддерживает нововведения, то скоро они станут обязательными для всех. Главный фокус — повышение безопасности.

Переход на новую версию API — довольно трудоёмкая операция, требующая больших затрат на ее поддержку при введении крупных апдейтов. Под катом расскажу немного про наш переход и возникшие при этом трудности. 

Читать далее
Всего голосов 39: ↑39 и ↓0+39
Комментарии16

Google документы станут полновесными с 1 июня. Пишем скрипт для обхода этого ограничения

Время на прочтение7 мин
Количество просмотров10K

Google изменяет политику хранения данных с 1 июня 2021 года. Вкратце: документы и фото теперь станут полновесными и будут учитываться в общей квоте 15Гб. К тому же, при неактивности аккаунта более двух лет, Google может удалить ваши данные.

Я часто работаю с Google документами, и при активном использовании дисковая квота закончится довольно быстро. Но есть и хорошая новость: документы, созданные до 1 июня 2021 года так и останутся невесомыми, поэтому вы не получите превышение квоты в одночасье.

У меня сразу возникла мысль сделать документов "в запас". Ниже я расскажу, как это можно осуществить, не тратя много времени и сил.

Хочу невидимых для квоты файлов
Всего голосов 15: ↑7 и ↓8+3
Комментарии21

Content Indexing API: страницы, доступные в offline. Доклад с RamblerFront #9

Время на прочтение8 мин
Количество просмотров4.2K

Здравствуйте, меня зовут Антонина, я работаю frontend-разработчиком в Rambler&Co, в команде Lenta.ru.

Content Indexing API — новый инструмент от Google, показывающий, какие страницы доступны в offline-режиме. Я расскажу, как работает Content Indexing API, когда его следует использовать и как его внедряла наша команда.

Читать далее
Всего голосов 10: ↑7 и ↓3+4
Комментарии1

Telegram бот на Firebase

Время на прочтение9 мин
Количество просмотров22K

В основном, про Firebase рассказывают в контексте создания приложений под IOS или Android. Однако, данный инструмент можно использовать и в других областях разработки, например при создании Telegram ботов. В этой статье хочу рассказать и показать насколько Firebase простой и удобный инструмент (а ещё и бесплатный, при разумных размерах проекта).

Читать далее
Всего голосов 12: ↑11 и ↓1+11
Комментарии12

Google Sheets — как разноплановый помощник для непростых задач или как я делал анализатор футбольный матчей

Время на прочтение7 мин
Количество просмотров6.8K

Лежу я ночью, пытаюсь уснуть. И как обычно тысяча мыслей, и среди них я сумел зацепился за одну. А звучала она так: "почему бы не сделать анализатора футбольных матчей, где нужно будет лишь ввести участников игры и получить выборку из их статистики общей и какие-то описание, чего ждать в грядущем матче". Действительно, почему нет?!

На следующий день, когда я проснулся, я первым же делом пошел гуглить, есть ли такое сейчас, потому что что-то подсказывало, что в нашем мире это слишком банальная затея (та ладна!?). Но я то не просто хотел складывать и делить числа из статистики, мне хотелось учитывать различные факторы спортивного мероприятия, а их большое количество.

Гугл дал свой результат, впрочем как всегда. Я нашел кучу калькуляторов ставок, которые продается за 3-5к рублей, и прочие таблицы расчетов в свободном доступе. Я как бы и так помнил расчеты тоталов голов, но мне нужно было их улучшить и получить на выходе собственно целого "мага/колдуна/вангу" спортивных событий. Или хотя бы формулку, которая выдаст результат после ввода данных.

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии5

Отслеживание брошенных корзин с помощью Google Analytics: 4 простых шага

Время на прочтение5 мин
Количество просмотров5.5K

Пожалуй один из главных вопросов всех владельцев магазина на Shopify звучит как: почему покупатель бросает корзину и не совершает покупку? Представьте, если бы вы пошли в супермаркет, набрали полную тележку продуктов, но уже подойдя к кассе решили вовсе уйти из магазина, оставив сотрудников магазина в недоумении. В среднем, 70% покупателей покинет магазин, так и не купив товар, добавленный в корзину.

Очевидно то, что проблема брошенных корзин волнует многих. О причинах отказа от покупок и возможных способах избежать этого расскажем в статье.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии0