SlideShare a Scribd company logo
Push Noti cations
Android
Поляков Никита
Решение в лоб
Минусы
Постоянное соединение с сервером
Понадобиться мощный сервер при большом количестве пользователей
Много работы на низком уровне системы
Сложная логика на сервере
Google cloud messaging
Внутри приложения
https://github.com/googlesamples/google-services/tree/master/android/gcm
1 <uses-permission android:name="com.google...permission.RECEIVE" />
2 <uses-permission android:name="android.permission.WAKE_LOCK" />
3
4 <receiver android:name="com.google...GcmReceiver"
5 <!>
6 </receiver>
7 <service
8 android:name="gcm.play...MyGcmListenerService"
9 android:exported="false" >
10 <intent-filter>
11 <action android:name="com.google...intent.RECEIVE" />
12 </intent-filter>
13 </service>
14 <service
15 android:name="gcm.play...MyInstanceIDListenerService"
16 <!>
17 </service>
18 <service
19 android:name="gcm.play...RegistrationIntentService"
20 android:exported="false">
21 </service>
22 </application>
Vincent, we happy?
https://habrahabr.ru/company/mailru/blog/260841/
Есть спрос — есть предложение
тут должна была быть картинка с кучей сервисов, но мне было лень искать и втыкать иконки
в одну картинку так что держите лучше котика
Интеграция Localytics
1 <meta-data
2 android:name="LOCALYTICS_APP_KEY"
3 android:value="YOUR-LOCALYTICS-APP-KEY" />
4 <receiver
5 android:name="com.localytics.android.ReferralReceiver"
6 android:exported="true">
7 <intent-filter>
8 <action android:name="com.android.vending.INSTALL_REFERRER" />
9 </intent-filter>
10 </receiver>
И немного джава кода
1 // добавляем в главном активити
2 @Override
3 protected void onNewIntent(Intent intent) {
4 super.onNewIntent(intent);
5 Localytics.onNewIntent(this, intent);
6 }
7
8 // добавляем в Application
9 @Override
10 public void onCreate() {
11 super.onCreate();
12 Localytics.autoIntegrate(this);
13 }
Yes, we happy.
Firebase
Плюшки FCM
Легче интегрировать
Пермишены мёржатся в манифест сами
Упростили схему получения RegistrationID
Стал более кросплатформенный
Больше плюшек
Realtime Database — сервисы для управления облачной NoSQL базой данных.
Authentication — сервис для идентификации и управления пользователями.
Remote Con g — сервис, который позволяет изменять и обновлять части приложений
через без обновления приложения.
Как и многие другие элементы Firebase, Noti cations интегрируются в Firebase Analytics.
Посмотрим, как это работает

More Related Content

Viewers also liked

Android - 10 - Graphics
Android - 10 - GraphicsAndroid - 10 - Graphics
Android - 10 - Graphics
Noveo
 
Стилизация текста (HTML5 тема 05 - стилизация текста)
Стилизация текста (HTML5 тема 05 - стилизация текста)Стилизация текста (HTML5 тема 05 - стилизация текста)
Стилизация текста (HTML5 тема 05 - стилизация текста)
Noveo
 
Canvas
CanvasCanvas
Android - 05 - Android basics
Android - 05 - Android basicsAndroid - 05 - Android basics
Android - 05 - Android basics
Noveo
 
Семантика текста (HTML5 тема 04 - семантика текста)
Семантика текста (HTML5 тема 04 - семантика текста)Семантика текста (HTML5 тема 04 - семантика текста)
Семантика текста (HTML5 тема 04 - семантика текста)
Noveo
 
Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)
Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)
Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)
Noveo
 
Lec 13
Lec 13Lec 13
Toolbar (Lecture 16 – toolbar)
Toolbar (Lecture 16 – toolbar)Toolbar (Lecture 16 – toolbar)
Toolbar (Lecture 16 – toolbar)
Noveo
 
Animations (Lecture 17 – animations)
Animations (Lecture 17 – animations)Animations (Lecture 17 – animations)
Animations (Lecture 17 – animations)
Noveo
 
Seminar: Установка и настройка рабочего стенда разработчика Android-приложени...
Seminar: Установка и настройка рабочего стенда разработчика Android-приложени...Seminar: Установка и настройка рабочего стенда разработчика Android-приложени...
Seminar: Установка и настройка рабочего стенда разработчика Android-приложени...
Denis Vasilyev
 
Введение в Android-разработку (Lecture 06 – basics)
Введение в Android-разработку (Lecture 06 – basics)Введение в Android-разработку (Lecture 06 – basics)
Введение в Android-разработку (Lecture 06 – basics)
Noveo
 
Lec 10
Lec 10Lec 10
Lec 12
Lec 12Lec 12
DIOR-DNA, Anton Zvonov, Part 1, Activities (жизненный цикл)
DIOR-DNA, Anton Zvonov, Part 1, Activities (жизненный цикл)DIOR-DNA, Anton Zvonov, Part 1, Activities (жизненный цикл)
DIOR-DNA, Anton Zvonov, Part 1, Activities (жизненный цикл)Антон Звонов
 
Webinar: Возможности RAD Studio 10 Seattle для разработки Windows 10 приложений
Webinar: Возможности RAD Studio 10 Seattle для разработки Windows 10 приложенийWebinar: Возможности RAD Studio 10 Seattle для разработки Windows 10 приложений
Webinar: Возможности RAD Studio 10 Seattle для разработки Windows 10 приложений
Denis Vasilyev
 
Работа с графической подсистемой (Lecture 10 – Graphics)
Работа с графической подсистемой (Lecture 10 – Graphics)Работа с графической подсистемой (Lecture 10 – Graphics)
Работа с графической подсистемой (Lecture 10 – Graphics)
Noveo
 
Fragments (Lecture 09 – Fragments)
Fragments (Lecture 09 – Fragments)Fragments (Lecture 09 – Fragments)
Fragments (Lecture 09 – Fragments)
Noveo
 
Webinar: Разработка мобильного приложения для заучивания стихов в Delphi
Webinar: Разработка мобильного приложения для заучивания стихов в DelphiWebinar: Разработка мобильного приложения для заучивания стихов в Delphi
Webinar: Разработка мобильного приложения для заучивания стихов в Delphi
Denis Vasilyev
 
Системы автоматизированной сборки (Lecture 05 – gradle)
Системы автоматизированной сборки (Lecture 05 – gradle)Системы автоматизированной сборки (Lecture 05 – gradle)
Системы автоматизированной сборки (Lecture 05 – gradle)
Noveo
 
Thread
ThreadThread

Viewers also liked (20)

Android - 10 - Graphics
Android - 10 - GraphicsAndroid - 10 - Graphics
Android - 10 - Graphics
 
Стилизация текста (HTML5 тема 05 - стилизация текста)
Стилизация текста (HTML5 тема 05 - стилизация текста)Стилизация текста (HTML5 тема 05 - стилизация текста)
Стилизация текста (HTML5 тема 05 - стилизация текста)
 
Canvas
CanvasCanvas
Canvas
 
Android - 05 - Android basics
Android - 05 - Android basicsAndroid - 05 - Android basics
Android - 05 - Android basics
 
Семантика текста (HTML5 тема 04 - семантика текста)
Семантика текста (HTML5 тема 04 - семантика текста)Семантика текста (HTML5 тема 04 - семантика текста)
Семантика текста (HTML5 тема 04 - семантика текста)
 
Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)
Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)
Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)
 
Lec 13
Lec 13Lec 13
Lec 13
 
Toolbar (Lecture 16 – toolbar)
Toolbar (Lecture 16 – toolbar)Toolbar (Lecture 16 – toolbar)
Toolbar (Lecture 16 – toolbar)
 
Animations (Lecture 17 – animations)
Animations (Lecture 17 – animations)Animations (Lecture 17 – animations)
Animations (Lecture 17 – animations)
 
Seminar: Установка и настройка рабочего стенда разработчика Android-приложени...
Seminar: Установка и настройка рабочего стенда разработчика Android-приложени...Seminar: Установка и настройка рабочего стенда разработчика Android-приложени...
Seminar: Установка и настройка рабочего стенда разработчика Android-приложени...
 
Введение в Android-разработку (Lecture 06 – basics)
Введение в Android-разработку (Lecture 06 – basics)Введение в Android-разработку (Lecture 06 – basics)
Введение в Android-разработку (Lecture 06 – basics)
 
Lec 10
Lec 10Lec 10
Lec 10
 
Lec 12
Lec 12Lec 12
Lec 12
 
DIOR-DNA, Anton Zvonov, Part 1, Activities (жизненный цикл)
DIOR-DNA, Anton Zvonov, Part 1, Activities (жизненный цикл)DIOR-DNA, Anton Zvonov, Part 1, Activities (жизненный цикл)
DIOR-DNA, Anton Zvonov, Part 1, Activities (жизненный цикл)
 
Webinar: Возможности RAD Studio 10 Seattle для разработки Windows 10 приложений
Webinar: Возможности RAD Studio 10 Seattle для разработки Windows 10 приложенийWebinar: Возможности RAD Studio 10 Seattle для разработки Windows 10 приложений
Webinar: Возможности RAD Studio 10 Seattle для разработки Windows 10 приложений
 
Работа с графической подсистемой (Lecture 10 – Graphics)
Работа с графической подсистемой (Lecture 10 – Graphics)Работа с графической подсистемой (Lecture 10 – Graphics)
Работа с графической подсистемой (Lecture 10 – Graphics)
 
Fragments (Lecture 09 – Fragments)
Fragments (Lecture 09 – Fragments)Fragments (Lecture 09 – Fragments)
Fragments (Lecture 09 – Fragments)
 
Webinar: Разработка мобильного приложения для заучивания стихов в Delphi
Webinar: Разработка мобильного приложения для заучивания стихов в DelphiWebinar: Разработка мобильного приложения для заучивания стихов в Delphi
Webinar: Разработка мобильного приложения для заучивания стихов в Delphi
 
Системы автоматизированной сборки (Lecture 05 – gradle)
Системы автоматизированной сборки (Lecture 05 – gradle)Системы автоматизированной сборки (Lecture 05 – gradle)
Системы автоматизированной сборки (Lecture 05 – gradle)
 
Thread
ThreadThread
Thread
 

Similar to Push Notifications (Lecture 22 – push notifications)

Android M: опыт личного знакомства
Android M: опыт личного знакомстваAndroid M: опыт личного знакомства
Android M: опыт личного знакомства
Rambler Android
 
17 - Web-технологии. Real Time сообщения
17 - Web-технологии. Real Time сообщения17 - Web-технологии. Real Time сообщения
17 - Web-технологии. Real Time сообщения
Roman Brovko
 
[JAM 1.0] Android OS, Java (Paul Malikov)
[JAM 1.0] Android OS, Java (Paul Malikov)[JAM 1.0] Android OS, Java (Paul Malikov)
[JAM 1.0] Android OS, Java (Paul Malikov)Evgeny Kaziak
 
HighLoad весна 2014 лекция 3
HighLoad весна 2014 лекция 3HighLoad весна 2014 лекция 3
HighLoad весна 2014 лекция 3Technopark
 
Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...
Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...
Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...
Ontico
 
Лекция Android
Лекция AndroidЛекция Android
Лекция Android
Pavel Tsukanov
 
Java GC tuning and monitoring (by Alexander Ashitkin)
Java GC tuning and monitoring (by Alexander Ashitkin)Java GC tuning and monitoring (by Alexander Ashitkin)
Java GC tuning and monitoring (by Alexander Ashitkin)
aragozin
 
"Системы уникализации и идентификации пользователей в сети. Методы защиты от ...
"Системы уникализации и идентификации пользователей в сети. Методы защиты от ..."Системы уникализации и идентификации пользователей в сети. Методы защиты от ...
"Системы уникализации и идентификации пользователей в сети. Методы защиты от ...
HackIT Ukraine
 
Денис Неклюдов. Держи свое приложение на волне новинок. РИФ-Воронеж 2016
Денис Неклюдов. Держи свое приложение на волне новинок. РИФ-Воронеж 2016Денис Неклюдов. Держи свое приложение на волне новинок. РИФ-Воронеж 2016
Денис Неклюдов. Держи свое приложение на волне новинок. РИФ-Воронеж 2016
РИФ-Воронеж
 
DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)
DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)
DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)
HLL
 
DDоS практическое руководство к выживанию (Александр Лямин)
DDоS практическое руководство к выживанию (Александр Лямин)DDоS практическое руководство к выживанию (Александр Лямин)
DDоS практическое руководство к выживанию (Александр Лямин)Ontico
 
еще один недостаток современных клиент серверных приложений
еще один недостаток современных клиент серверных приложенийеще один недостаток современных клиент серверных приложений
еще один недостаток современных клиент серверных приложенийsnowytoxa
 
23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...
23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...
23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...Positive Hack Days
 
Droidcon Moscow 2015. Google Analytics и GTM для мобильных приложений Android...
Droidcon Moscow 2015. Google Analytics и GTM для мобильных приложений Android...Droidcon Moscow 2015. Google Analytics и GTM для мобильных приложений Android...
Droidcon Moscow 2015. Google Analytics и GTM для мобильных приложений Android...
Mail.ru Group
 
Антон Сапожников. Еще один недостаток современных клиент-серверных приложений
Антон Сапожников. Еще один недостаток современных клиент-серверных приложенийАнтон Сапожников. Еще один недостаток современных клиент-серверных приложений
Антон Сапожников. Еще один недостаток современных клиент-серверных приложенийPositive Hack Days
 
Изоморфные приложения и Python - Виталий Глибин, Huntflow
Изоморфные приложения и Python - Виталий Глибин, HuntflowИзоморфные приложения и Python - Виталий Глибин, Huntflow
Изоморфные приложения и Python - Виталий Глибин, Huntflow
it-people
 
15 - Web-технологии. Сессии и авторизация
15 - Web-технологии. Сессии и авторизация15 - Web-технологии. Сессии и авторизация
15 - Web-технологии. Сессии и авторизация
Roman Brovko
 
Обеспечение бесперебойной работы корпоративных приложений в больших гетероген...
Обеспечение бесперебойной работы корпоративных приложений в больших гетероген...Обеспечение бесперебойной работы корпоративных приложений в больших гетероген...
Обеспечение бесперебойной работы корпоративных приложений в больших гетероген...
Cisco Russia
 
Особенности работы backend для мобильных приложений или Python Django UWSGI в...
Особенности работы backend для мобильных приложений или Python Django UWSGI в...Особенности работы backend для мобильных приложений или Python Django UWSGI в...
Особенности работы backend для мобильных приложений или Python Django UWSGI в...
Mail.ru Group
 
Изоморфные React-приложения производительность и масштабирование / Денис Изма...
Изоморфные React-приложения производительность и масштабирование / Денис Изма...Изоморфные React-приложения производительность и масштабирование / Денис Изма...
Изоморфные React-приложения производительность и масштабирование / Денис Изма...
Ontico
 

Similar to Push Notifications (Lecture 22 – push notifications) (20)

Android M: опыт личного знакомства
Android M: опыт личного знакомстваAndroid M: опыт личного знакомства
Android M: опыт личного знакомства
 
17 - Web-технологии. Real Time сообщения
17 - Web-технологии. Real Time сообщения17 - Web-технологии. Real Time сообщения
17 - Web-технологии. Real Time сообщения
 
[JAM 1.0] Android OS, Java (Paul Malikov)
[JAM 1.0] Android OS, Java (Paul Malikov)[JAM 1.0] Android OS, Java (Paul Malikov)
[JAM 1.0] Android OS, Java (Paul Malikov)
 
HighLoad весна 2014 лекция 3
HighLoad весна 2014 лекция 3HighLoad весна 2014 лекция 3
HighLoad весна 2014 лекция 3
 
Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...
Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...
Ловля сетями. Инструменты отладки сетевых запросов приложений / Дмитрий Рыбак...
 
Лекция Android
Лекция AndroidЛекция Android
Лекция Android
 
Java GC tuning and monitoring (by Alexander Ashitkin)
Java GC tuning and monitoring (by Alexander Ashitkin)Java GC tuning and monitoring (by Alexander Ashitkin)
Java GC tuning and monitoring (by Alexander Ashitkin)
 
"Системы уникализации и идентификации пользователей в сети. Методы защиты от ...
"Системы уникализации и идентификации пользователей в сети. Методы защиты от ..."Системы уникализации и идентификации пользователей в сети. Методы защиты от ...
"Системы уникализации и идентификации пользователей в сети. Методы защиты от ...
 
Денис Неклюдов. Держи свое приложение на волне новинок. РИФ-Воронеж 2016
Денис Неклюдов. Держи свое приложение на волне новинок. РИФ-Воронеж 2016Денис Неклюдов. Держи свое приложение на волне новинок. РИФ-Воронеж 2016
Денис Неклюдов. Держи свое приложение на волне новинок. РИФ-Воронеж 2016
 
DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)
DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)
DDоS: Практическое руководство к выживанию. (Часть 2: Работа над ошибками)
 
DDоS практическое руководство к выживанию (Александр Лямин)
DDоS практическое руководство к выживанию (Александр Лямин)DDоS практическое руководство к выживанию (Александр Лямин)
DDоS практическое руководство к выживанию (Александр Лямин)
 
еще один недостаток современных клиент серверных приложений
еще один недостаток современных клиент серверных приложенийеще один недостаток современных клиент серверных приложений
еще один недостаток современных клиент серверных приложений
 
23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...
23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...
23may 1300 valday антон сапожников 'еще один недостаток современных клиент се...
 
Droidcon Moscow 2015. Google Analytics и GTM для мобильных приложений Android...
Droidcon Moscow 2015. Google Analytics и GTM для мобильных приложений Android...Droidcon Moscow 2015. Google Analytics и GTM для мобильных приложений Android...
Droidcon Moscow 2015. Google Analytics и GTM для мобильных приложений Android...
 
Антон Сапожников. Еще один недостаток современных клиент-серверных приложений
Антон Сапожников. Еще один недостаток современных клиент-серверных приложенийАнтон Сапожников. Еще один недостаток современных клиент-серверных приложений
Антон Сапожников. Еще один недостаток современных клиент-серверных приложений
 
Изоморфные приложения и Python - Виталий Глибин, Huntflow
Изоморфные приложения и Python - Виталий Глибин, HuntflowИзоморфные приложения и Python - Виталий Глибин, Huntflow
Изоморфные приложения и Python - Виталий Глибин, Huntflow
 
15 - Web-технологии. Сессии и авторизация
15 - Web-технологии. Сессии и авторизация15 - Web-технологии. Сессии и авторизация
15 - Web-технологии. Сессии и авторизация
 
Обеспечение бесперебойной работы корпоративных приложений в больших гетероген...
Обеспечение бесперебойной работы корпоративных приложений в больших гетероген...Обеспечение бесперебойной работы корпоративных приложений в больших гетероген...
Обеспечение бесперебойной работы корпоративных приложений в больших гетероген...
 
Особенности работы backend для мобильных приложений или Python Django UWSGI в...
Особенности работы backend для мобильных приложений или Python Django UWSGI в...Особенности работы backend для мобильных приложений или Python Django UWSGI в...
Особенности работы backend для мобильных приложений или Python Django UWSGI в...
 
Изоморфные React-приложения производительность и масштабирование / Денис Изма...
Изоморфные React-приложения производительность и масштабирование / Денис Изма...Изоморфные React-приложения производительность и масштабирование / Денис Изма...
Изоморфные React-приложения производительность и масштабирование / Денис Изма...
 

More from Noveo

Гуманитарные специальности в IT-индустрии
Гуманитарные специальности в IT-индустрииГуманитарные специальности в IT-индустрии
Гуманитарные специальности в IT-индустрии
Noveo
 
Box model, display and position (HTML5 тема 07 - box model, display position)
Box model, display and position (HTML5 тема 07 - box model, display position)Box model, display and position (HTML5 тема 07 - box model, display position)
Box model, display and position (HTML5 тема 07 - box model, display position)
Noveo
 
Основы CSS (HTML5 тема 02 - основы CSS)
Основы CSS (HTML5 тема 02 - основы CSS)Основы CSS (HTML5 тема 02 - основы CSS)
Основы CSS (HTML5 тема 02 - основы CSS)
Noveo
 
Структура HTML документа (HTML5 тема 01 - структура html документа)
Структура HTML документа (HTML5 тема 01 - структура html документа)Структура HTML документа (HTML5 тема 01 - структура html документа)
Структура HTML документа (HTML5 тема 01 - структура html документа)
Noveo
 
Yii2
Yii2Yii2
Yii2
Noveo
 
Сессии и авторизация
Сессии и авторизацияСессии и авторизация
Сессии и авторизация
Noveo
 
Rest
RestRest
Rest
Noveo
 
PHP basic
PHP basicPHP basic
PHP basic
Noveo
 
PHP Advanced
PHP AdvancedPHP Advanced
PHP Advanced
Noveo
 
PHP and MySQL
PHP and MySQLPHP and MySQL
PHP and MySQL
Noveo
 
MySQL
MySQLMySQL
MySQL
Noveo
 
RxJava+RxAndroid (Lecture 20 – rx java)
RxJava+RxAndroid (Lecture 20 – rx java)RxJava+RxAndroid (Lecture 20 – rx java)
RxJava+RxAndroid (Lecture 20 – rx java)
Noveo
 
Работа с соцсетями (Lecture 19 – social)
Работа с соцсетями (Lecture 19 – social)Работа с соцсетями (Lecture 19 – social)
Работа с соцсетями (Lecture 19 – social)
Noveo
 
Material Design (Lecture 15 – material design)
Material Design (Lecture 15 – material design)Material Design (Lecture 15 – material design)
Material Design (Lecture 15 – material design)
Noveo
 
Многопоточность, работа с сетью (Lecture 12 – multithreading, network)
Многопоточность, работа с сетью (Lecture 12 – multithreading, network)Многопоточность, работа с сетью (Lecture 12 – multithreading, network)
Многопоточность, работа с сетью (Lecture 12 – multithreading, network)
Noveo
 
XML, JSON (Lecture 11 – XML, JSON)
XML, JSON (Lecture 11 – XML, JSON)XML, JSON (Lecture 11 – XML, JSON)
XML, JSON (Lecture 11 – XML, JSON)
Noveo
 
Android - 16 - QR
Android - 16 - QRAndroid - 16 - QR
Android - 16 - QR
Noveo
 
03 коллекции
03   коллекции03   коллекции
03 коллекции
Noveo
 

More from Noveo (18)

Гуманитарные специальности в IT-индустрии
Гуманитарные специальности в IT-индустрииГуманитарные специальности в IT-индустрии
Гуманитарные специальности в IT-индустрии
 
Box model, display and position (HTML5 тема 07 - box model, display position)
Box model, display and position (HTML5 тема 07 - box model, display position)Box model, display and position (HTML5 тема 07 - box model, display position)
Box model, display and position (HTML5 тема 07 - box model, display position)
 
Основы CSS (HTML5 тема 02 - основы CSS)
Основы CSS (HTML5 тема 02 - основы CSS)Основы CSS (HTML5 тема 02 - основы CSS)
Основы CSS (HTML5 тема 02 - основы CSS)
 
Структура HTML документа (HTML5 тема 01 - структура html документа)
Структура HTML документа (HTML5 тема 01 - структура html документа)Структура HTML документа (HTML5 тема 01 - структура html документа)
Структура HTML документа (HTML5 тема 01 - структура html документа)
 
Yii2
Yii2Yii2
Yii2
 
Сессии и авторизация
Сессии и авторизацияСессии и авторизация
Сессии и авторизация
 
Rest
RestRest
Rest
 
PHP basic
PHP basicPHP basic
PHP basic
 
PHP Advanced
PHP AdvancedPHP Advanced
PHP Advanced
 
PHP and MySQL
PHP and MySQLPHP and MySQL
PHP and MySQL
 
MySQL
MySQLMySQL
MySQL
 
RxJava+RxAndroid (Lecture 20 – rx java)
RxJava+RxAndroid (Lecture 20 – rx java)RxJava+RxAndroid (Lecture 20 – rx java)
RxJava+RxAndroid (Lecture 20 – rx java)
 
Работа с соцсетями (Lecture 19 – social)
Работа с соцсетями (Lecture 19 – social)Работа с соцсетями (Lecture 19 – social)
Работа с соцсетями (Lecture 19 – social)
 
Material Design (Lecture 15 – material design)
Material Design (Lecture 15 – material design)Material Design (Lecture 15 – material design)
Material Design (Lecture 15 – material design)
 
Многопоточность, работа с сетью (Lecture 12 – multithreading, network)
Многопоточность, работа с сетью (Lecture 12 – multithreading, network)Многопоточность, работа с сетью (Lecture 12 – multithreading, network)
Многопоточность, работа с сетью (Lecture 12 – multithreading, network)
 
XML, JSON (Lecture 11 – XML, JSON)
XML, JSON (Lecture 11 – XML, JSON)XML, JSON (Lecture 11 – XML, JSON)
XML, JSON (Lecture 11 – XML, JSON)
 
Android - 16 - QR
Android - 16 - QRAndroid - 16 - QR
Android - 16 - QR
 
03 коллекции
03   коллекции03   коллекции
03 коллекции
 

Push Notifications (Lecture 22 – push notifications)

  • 3. Минусы Постоянное соединение с сервером Понадобиться мощный сервер при большом количестве пользователей Много работы на низком уровне системы Сложная логика на сервере
  • 5. Внутри приложения https://github.com/googlesamples/google-services/tree/master/android/gcm 1 <uses-permission android:name="com.google...permission.RECEIVE" /> 2 <uses-permission android:name="android.permission.WAKE_LOCK" /> 3 4 <receiver android:name="com.google...GcmReceiver" 5 <!> 6 </receiver> 7 <service 8 android:name="gcm.play...MyGcmListenerService" 9 android:exported="false" > 10 <intent-filter> 11 <action android:name="com.google...intent.RECEIVE" /> 12 </intent-filter> 13 </service> 14 <service 15 android:name="gcm.play...MyInstanceIDListenerService" 16 <!> 17 </service> 18 <service 19 android:name="gcm.play...RegistrationIntentService" 20 android:exported="false"> 21 </service> 22 </application>
  • 7. Есть спрос — есть предложение тут должна была быть картинка с кучей сервисов, но мне было лень искать и втыкать иконки в одну картинку так что держите лучше котика
  • 8. Интеграция Localytics 1 <meta-data 2 android:name="LOCALYTICS_APP_KEY" 3 android:value="YOUR-LOCALYTICS-APP-KEY" /> 4 <receiver 5 android:name="com.localytics.android.ReferralReceiver" 6 android:exported="true"> 7 <intent-filter> 8 <action android:name="com.android.vending.INSTALL_REFERRER" /> 9 </intent-filter> 10 </receiver> И немного джава кода 1 // добавляем в главном активити 2 @Override 3 protected void onNewIntent(Intent intent) { 4 super.onNewIntent(intent); 5 Localytics.onNewIntent(this, intent); 6 } 7 8 // добавляем в Application 9 @Override 10 public void onCreate() { 11 super.onCreate(); 12 Localytics.autoIntegrate(this); 13 }
  • 11. Плюшки FCM Легче интегрировать Пермишены мёржатся в манифест сами Упростили схему получения RegistrationID Стал более кросплатформенный
  • 12. Больше плюшек Realtime Database — сервисы для управления облачной NoSQL базой данных. Authentication — сервис для идентификации и управления пользователями. Remote Con g — сервис, который позволяет изменять и обновлять части приложений через без обновления приложения. Как и многие другие элементы Firebase, Noti cations интегрируются в Firebase Analytics.