Евгений Сатуров. Firebase в Android-разработке: основные...

Preview:

Citation preview

основные возможности

@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

Цена вопроса