Евгений Сатуров. Firebase в Android-разработке: основные...
Transcript of Евгений Сатуров. Firebase в Android-разработке: основные...
основные возможности
@saturovv
2012 2016
КРОСПЛАТФОРМЕННОСТЬ
ГИБКОСТЬ
ВНЕДРЕНИЕ FIREBASE В ПРИЛОЖЕНИЕ
Требования
Устройство под управлением Android 2.3 (Gingerbread) или выше;Google Play Services 9.4.0;Google Repository доступный в Android SDK Manager;Android Studio 1.5 или выше;Проект в Android Studio и его “package name” (пригодится при создании проекта в консоли
Firebase).
Зависимости проекта
App-level build.gradle-файл:
buildscript { // ... dependencies { // ... classpath 'com.google.gms:google-services:3.0.0' }}
Зависимости проектаModule-level build.gradle-файл:
apply plugin: 'com.android.application'
android { // ...}
dependencies { // ... compile 'com.google.firebase:firebase-core:9.4.0'}
// ADD THIS AT THE BOTTOMapply plugin: 'com.google.gms.google-services'\
Доступные пакеты
КОНСОЛЬ FIREBASE
Создание проекта в консоли console.firebase.google.com
Создание проекта в консоли console.firebase.google.com
Создание проекта в консоли console.firebase.google.com
Создание проекта в консоли console.firebase.google.com
google-services.json
/app
Firebase console
Create OAuth clients
Create analytics account
Register for cloud
messaging
Configure AdMob account
Create real-time database
Create storage bucket
OAuth Client IDsFirebase Database URLs
Firebase Storage Host Cloud Messaging Sender IDAd Unit IDs
google-service.json
Analytics App ID
ОБЗОР ВОЗМОЖНОСТЕЙ
⋅ Разработана для приложений;
⋅ Ориентирована на события и
пользователей;
⋅ Связана с другими сервисами
Firebase;
⋅ Бесплатная и безлимитная;
Sample reports go here
Events go here
Conversion funnels
Аудитории
В чём же подвох?
● Нет статистики реального времени;
● По какой-то причине события регистрируются спустя 3-4 часа после того, как произошли в реальности;
● Сыровато. Иногда всплывают досадные баги.
⋅Мониторинг падений и воздействия их на пользователей;
⋅Детализированный отчёт по каждому кластеру падений.
А в чём же подвох теперь?
● Наличие Google Play Services на устройстве обязательно;
● Отсутствует поиск по истории падений;
● Нет возможности пометить падение как “устранённое”.
Поддерживаемые способы:
⋅ логин и пароль;⋅ через соцсети;⋅ существующая система
аутентификации;
Поддерживаемые способы:
⋅ логин и пароль;⋅ через соцсети;⋅ существующая система
аутентификации;⋅ анонимная аутентификация.
Поддерживаемые способы:
⋅ логин и пароль;⋅ через соцсети;⋅ существующая система
аутентификации;⋅ анонимная аутентификация.
А ещё есть готовые UI-блоки для типичных кейсов
SectionXSectionYSectionZ
⋅Для хранения статичных файлов;
⋅SSL по-умолчанию;
Новый способ хранения пользовательских файлов.
● Download;● Upload;● Разграничение прав
доступа;● Никакого серверного кода.
⋅Данные "read-only"⋅ Изображения / аудио / видео
и прочий контент для приложения.
⋅Данные “read-write”⋅ Контент, генерируемый
пользователем;⋅ Контент, генерируемый
приложением.
⋅Обновление приложения “на лету”;
⋅Разные значения для разных аудиторий;
⋅A/B тесты;
⋅Кастомизация контента.
⋅Управление через админку;
⋅Пуши по расписанию;
⋅Таргетинг на аудитории;
⋅API для бекэнда.
⋅Один URL - множество возможностей;
⋅Мультиплатформенное решение;
⋅Сохраняет состояние, даже если приложение еще не установлено на устройстве у пользователя.
Send to Play Store
Send to App Store
Send to Android App
Send to web page
Send to iOS App
Send to web page
Send to Play Store
Send to App Store
Install App
Grab link data on first open
Install App
Grab link data on first open
⋅Несколько форматов: видео, нативный, при переходах между экранами;
⋅Полная интеграция с Firebase SDK
Цена вопроса