我这里引用Firese的目的主要是检测到底有多少用户在使用相关产品,用的是Firebase的免费版本。看官方教程还是被一些地方给卡住了,特别是检测是否成功时。比较幸运的是Google团队还是比较靠谱,咨询相关问题都能给出及时反馈和建议。
注册
使用
- 添加APP
- 按引导流程下载配置相关文件,操作流程安排挺清楚的,注意细节就行了。
-
这里就说关键的一点,那就是必需在代码中也配置一些相关信息,这个是教程中没提到的,我这里没添加是没有任何有效检测的的,最后加上后就好了。
...
public class GameActivity extends AppCompatActivity {
private FirebaseAnalytics mFirebaseAnalytics;
protected void onCreate(@Nullable Bundle savedInstanceState) {
// Obtain the FirebaseAnalytics instance.
mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);
mFirebaseAnalytics.setAnalyticsCollectionEnabled(true);
Bundle bundle = new Bundle();
bundle.putString("start", "yes");
mFirebaseAnalytics.logEvent("share", bundle);
...
}
}
Firebase DebugView
配置
- 进入adb目录,一般在你配置的SDK路径下,比如windwos就是
D:\SoftWare\Android\SDK\platform-tools
- 启用调试模式,注意
package_name
替换成你自己的应用package_name.
adb shell setprop debug.firebase.analytics.app package_name
- 查看 Android Studio 调试日志中的事件。
adb shell setprop log.tag.FA VERBOSE
adb shell setprop log.tag.FA-SVC VERBOSE
adb logcat -v time -s FA FA-SVC
- 调试的同时在Firebase上对应APP的DebugView查看是否有相关日志接收到,如果能正常接收到,说明配置正确。有时候也有可能因为网络问题而无法upload,注意观察日志去操作即可。
- 停用 调试模式
adb shell setprop debug.firebase.analytics.app .none.
无数据
- 配置以及相关代码是否添加,应用是否正确安装到手机或模拟器上了。
-
日志类似如下的话则是网络环境问题导致的上传问题了,我这里是多切几次就好了。
05-06 16:58:41.419 V/FA-SVC ( 9255): Uploading data. size: 794
05-06 16:58:44.123 V/FA-SVC ( 9255): Network upload failed. Will retry later. code, error: 0, javax.net.ssl.SSLHandshakeException: Handshake failed
05-06 16:55:14.770 V/FA-SVC ( 9255): Network upload failed. Will retry later. code, error: 0, java.net.UnknownHostException: Unable to resolve host "app-measurement.com": No address associated with hostname
05-06 16:55:14.792 V/FA-SVC ( 9255): Upload scheduled in approximately ms: 1800978