文档章节

Firebase初步了解

s
 sdycyzzzl
发布于 2016/12/26 10:08
字数 2071
阅读 103
收藏 0

Firebase初步了解

什么是Firebase?
Firebase成立于2011年,在被Google收购之前,Firebase是一个协助开发者快速构建App,能够提供行动应用专用开发平台及SDK的一款产品,简单的说大概就是一套集成后台服务工具。
在网上可以找到一些基础介绍,我也贴一些出来,详细的大家可以在网上搜索:
在今年的I/O大会上,谷歌发表了新版的Firebase,新的Firebase整并Google既有的云端服务与工具,扩大支援更全面的功能,涵盖开发、成长与营收三阶段,并整合分析工具,其分析工具专为App所设计,并以事件和使用者分析为主。在开发阶段所提供的后端服务,包括即时资料库(Realtime database)、身分验证(Authentication)、主机(Hosting)、储存(Storage)、云端讯息(Cloud Messaging)及远端配置(Remote Config)等后端服务,并提供Android测试实验室(Test Lab for Android),以及当机报告等管理App品质的服务。

Firebase基本功能

我根据官方文档的介绍,整理了一下Firebase的基本功能,能翻墙的同学直接看官方文档就好了~

一、数据分析工具

Firebase 的核心是 Firebase Analytics,这是一项免费且无限制的分析解决方案。从单一信息中心查看用户行为和衡量行为特性,可以查看包括日活,留存,用户的地理位置分布,用户,设备信息等信息。
在Anlytics还提供了一系列其他分析,一下是一个demo的截图:
Firebase Analytics

二、开发

云消息传递(Firebase Cloud Messaging)
可以通过后台服务向用户推送消息,对于即时通讯等用例,一条消息可以将最大 4KB 的负载传送至客户端应用。

身份验证(Firebase Authentication)
可以使用 FirebaseUI 作为一种完整访客身份验证解决方案,实现支持电子邮件与密码、Facebook、Twitter、GitHub 和 Google Sign-In 的整套身份验证系统

实时数据库(Firebase Realtime Database)
云托管 NoSQL 数据库,数据为JSON形式,设备离线可以使用数据,具有同步功能,恢复链接时可以上传回服务器。

存储(Firebase Storage)
Firebase Storage 由 Google Cloud Storage 提供支持,Firebase 应用提供安全的文件上传与下载。 可以使用它存储图片、音频、视频或其他用户生成的内容。

托管(Firebase Hosting)
为开发者提供的生产级网络内容托管。利用 Hosting,仅需一条命令,即可快速简单地将网络应用和静态内容部署到全球内容交付网络

远程配置(Firebase Remote Config)
可以通过该服务更改应用的外观和行为,无需用户下载应用更新。更新应用,无需部署新版本。

测试实验室(Firebase Test Lab for Android)
Firebase Test Lab for Android 提供了基于云的基础结构,用于测试 Android 应用。 通过一次操作,可以跨越各种各样的设备和设备配置发起应用测试。 在 Firebase console 中,可通过项目获取测试结果,包括日志、视频和屏幕截图。

奔溃报告(Firebase Crash Reporting)
根据频率和影响设定奔溃优先级,收集设备全面的奔溃信息,这个功能只需要接入firebase的Crash SDK,不需要添加其他的代码,他就可以自动收集app的奔溃信息,并上传到Firebase后台,图片如下:
崩溃信息界面

三、增长

通知(Firebase Notifications)
细分受众,轻松管理推送信息

索引(Firebase App Indexing)
Firebase App Indexing(其前身为 Google App Indexing)可将应用纳入 Google 搜索。 如果当用户搜索相关内容时已安装应用,则他们可以直接从搜索结果中启动应用。 如果用户还未安装应用,则将在搜索结果中显示安装卡片。添加 App Indexing 推广 Google 搜索内的应用结果类型,并提供查询自动填充功能。

动态链接(Firebase Dynamic Links)
Firebase Dynamic Links动态链接是指能够动态更改其行为以便在不同的平台上提供最佳体验的智能网址。无论用户是全新用户还是长期客户,动态链接都能指引用户完成应用安装流程结束并将用户引导至相关的内容。

邀请(Firebase Invites)
Firebase Invites 是用于发送个性化电子邮件和短信分享应用

在线广告(Google AdWords)
优化广告,促成安装,获取广告转化率的深入数据分析,有针对性地开展广告活动,使用 Firebase Analytics 目标设备吸引您的用户群

四、获利

AdMob by Google
AdMob by Google 是一种移动广告平台,借助该平台可从您的应用中获得可观的收入。将 AdMob 与 Firebase Analytics 相结合,不仅可得到更多的应用使用量数据,而且可以提升分析能力。

五、收费标准

它提供3个套餐,当然包括有免费的套餐集体看下面链接吧~
收费标准

Firebase接入方式整理

1.首先要登录你的Gmail,然后在 Firebase console 中创建一个项目。 接下来将你自己的安卓移动应用(或者你可以选择在官网下载一个示例工程)连接 Google 项目,点击 Import Google Project。

2.点击 Add Firebase to your Android app 并按设置步骤进行操作。

3.输入应用的包名称,输入应用使用的包名称十分重要。只有当将一个应用添加至 Firebase 项目时才能进行此设置,如下图,要填入的是 com.asura.test 。
应用包名

4.最后,需要下载一个 google-services.json 文件,同时将其放在项目的根目录下。

5.配置好项目之后,接下来要就需要对项目想使用的具体服务,添加SDK,具体如下:< 喎�"/kf/ware/vc/" target="_blank" class="keylink">vcD4NCjxwPsrXz8ijrMfrz/JidWlsZC5ncmFkbGUgzsS8/sztvNPSu8z1uebU8qOs0tSw/LqsIEdvb2dsZSC3/s7xsuW8/qO6PC9wPg0KPHByZSBjbGFzcz0="brush:java;"> buildscript { // ... dependencies { // ... classpath 'com.google.gms:google-services:3.0.0' } }

然后在您的模块 Gradle 文件(通常为 app/build.gradle)中,在文件底部添加 apply plugin 行,以启用 Gradle 插件:

?

1

2

3

4

5

6

7

8

9

10

apply plugin: 'com.android.application'

android {

    // ...

}

dependencies {

    // ...

    compile 'com.google.firebase:firebase-core:9.2.1'

}

    // ADD THIS AT THE BOTTOM

apply plugin: 'com.google.gms.google-services'

至此项目的接入方式就完成,Firebase的不同的服务对应了不同的依赖库,详细的资料可以在官方文档获取。

Firebase使用上一些问题

由于项目的需要,本人目前仅试用了Firebase的Anlytics和Creash的两大功能,其他功能还暂时没有研究,等后续研究过后再更新一些资料。

使用设备要求

对于安卓使用设备要求,官方是规定了移动设备必须要装有谷歌服务9.0或者以上的版本

关于引入的库

在官方文档上导入的库为
compile ‘com.google.firebase:firebase-core:9.0.0’
但是我下载了一个示例后发现,demo使用的都是 9.2.1 的版本,所以我也将项目改成了
compile ‘com.google.firebase:firebase-core:9.2.1’
原因呢,下面会解释
当然了,使用的包要同一一个版本,不然一个9.0.0和一个9.2.1,会引起
Process ‘command ‘C:\Program Files\Java\jdk1.8.0_31\bin\java.exe” finished with non-zero exit value 2的错误

编译报错

错误Error Launching activity
解决方法:在gradle中加上这句

?

1

2

3

4

5

6

7

android {

    ...

    defaultConfig {

        applicationId "com.asura.test"

    }

    ...

}

firebaseCrash 崩溃收集问题

1.当时引入奔溃收集服务的时候,接的还是9.0.0的库,在运用到没有谷歌服务的设备上时,程序会因为获取不到firebaseCrash的实例导致空指针报错
解决方法:将引入的库改为 9.2.1,可以解决崩溃问题(Ps:由于没有谷歌服务,所以设备的奔溃信息还是没有收集到的)

2.收集完崩溃信息后上传过程中报错,错误信息如下:
background_crash E/FirebaseCrashSenderServiceImpl: Error sending crash report: IOException while sending a crash report
解决方法:移动设备翻墙,上传就可以成功,因为没能找出错误原因,但是从这里可以猜测,要上传的奔溃服务器是需要翻墙才可以访问的。

本文转载自:http://www.2cto.com/kf/201608/532885.html

s
粉丝 0
博文 26
码字总数 1593
作品 0
私信 提问
如何使用 Firebase 导入 Mobile Ads SDK?

Firebase 转变为统一的移动平台带来了新的 Gradle 工件和 CocoaPods,移动开发者可用它们导入 Mobile Ads SDK。通过这些新增的工件,现在,每个平台都有几种备选的导入方法。谢谢您的反馈,我...

局长
2016/09/27
1K
0
ng-notadd 0.10.3 导航栏支持手机,基于 Angular 的中后台解决方案

新特性 新的左侧菜单栏 (支持鼠标悬浮) 手机端初步兼容 技术栈 Typescript Angular Material2 rxjs Graphql 相关链接 项目地址 DEMO ng-notadd-mock-server Quick start git clone https:/...

左华栋
2018/12/06
0
0
如何将Firebase Analytics添加到NativeScript移动应用程序中

当您想要尽快发布移动应用时,我们都知道这一点。你工作了几个月,经过测试,它看起来不错,而你的重要人物甚至喜欢它。您和已发布的应用之间需要做的最后一件事是更多的工作。然而,为您的应...

萤火的萤
2018/11/06
0
0
ng-notadd 0.10.1,基于 Angular7 和 material2 的中后台解决方案

更新内容 修复 scss 左侧导航栏美化 修复导航栏 2px 间隔问题 技术栈 Typescript Angular Material2 rxjs Graphql 相关链接 项目地址 DEMO ng-notadd-mock-server Quick start Roadmap 0.10....

左华栋
2018/11/27
420
3
移动开发必知必会的六大数据统计平台(入门篇)

数据统计对于各位移动开发的童鞋并不陌生,小到Bug统计,大到数据分析,一款性能稳定、用户体验良好的APP一定离不开数据统计的支持,为此我将给大家科普一下常用的六大数据统计平台。 先说说...

mynameishuangshuai
2017/05/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Jenkins系列_插件安装及报错处理

进入Jenkins之后我们可以进行插件的安装,插件管理位于以下模块: 发现上面报了一堆错误,是因为插件的依赖没有安装好,那么这一节,就先把这些错误解决掉吧。解决完成后,也就基本会使用插件...

shzwork
今天
2
0
mysql mysql的所有查询语句和聚合函数(整理一下,忘记了可以随时看看)

查询所有字段 select * from 表名; 查询自定字段 select 字段名 from 表名; 查询指定数据 select * from 表名 where 条件; 带关键字IN的查询 select * from 表名 where 条件 [not] in(元素...

edison_kwok
昨天
9
0
多线程同时加载缓存实现

import com.google.common.cache.Cache;import com.google.common.cache.CacheBuilder;import java.util.concurrent.ExecutionException;import java.util.concurrent.ExecutorServi......

暗中观察
昨天
3
0
利用VisualVM 内存查看

准备工作,建几个测试类。等下就是要查看这几个类里面的属性 package visualvm;public class MultiObject { private String str; private int i; MultiObject(String str...

冷基
昨天
2
0
组装一台工作游戏两用机

一、配置清单如下: 分类 项目 价格(元) 主板 华硕(ASUS)TUF Z370-PLUS GAMING II 电竞特工 Z370二代 支持9代CPU 1049 CPU 英特尔(Intel) i7 8700K 酷睿六核 盒装CPU处理器 2640 风扇 九...

mbzhong
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部