用于 Phonegap/Cordova 应用程序的 Firebase 分析
Posted
技术标签:
【中文标题】用于 Phonegap/Cordova 应用程序的 Firebase 分析【英文标题】:Firebase Analytic for Phonegap/Cordova App 【发布时间】:2016-08-12 09:22:36 【问题描述】:我使用 Phonegap/Cordova 开发了一些应用程序。我想集成 Firebase Analytics 而不是 Google Analytics。是否可以? Firebase Analytics 是否有任何 Cordova 插件?请解释。
我也没有在官方documentation samples 中找到对 Firebase Analytics 的网络支持
【问题讨论】:
请解释上述问题有什么问题?我所需要的只是如何在科尔多瓦集成火力分析?你觉得这个问题有什么问题吗?我没有找到任何将 firebase 分析集成到 cordova/phonegap 中的文档,因此在 *** 中提高了它。为什么你投了反对票?你不想在科尔多瓦使用firebase?? 【参考方案1】:这是一个用于 cordova 的 firebase 插件(我是作者)
https://github.com/arnesson/cordova-plugin-firebase
【讨论】:
你能告诉我为什么下面的屏幕没有在 Analytic DashBoard 上更新吗? document.addEventListener("deviceready", function() window.FirebasePlugin.setScreenName('Redeem Vouchers') ,true);我假设,屏幕名称支持空格。【参考方案2】:为此浪费了几个小时,这是我发现的:
将应用添加到 Firebase 控制台
创建项目 添加应用,使用包名(com.x.y.app)安装:
cordova plugin add cordova-plugin-firebase --save
cordova plugin add cordova-android-play-services-gradle-release --save --variable PLAY_SERVICES_VERSION=16.+
cordova prepare && cordova compile
代码:
initializeAnalytics()
window.FirebasePlugin.setAnalyticsCollectionEnabled(true); // Enables analytics collection
window.FirebasePlugin.setScreenName("Home");
window.FirebasePlugin.logEvent("select_content", content_type: "page_view", item_id: "home" );
// window.FirebasePlugin.setUserId("user_id");
// window.FirebasePlugin.setUserProperty("name", "value");
解决构建错误: 我有以下错误:
库 com.google.firebase:firebase-analytics-impl 正在 [[15.0.2,15.0.2] 的各种其他图书馆要求, [16.3.0,16.3.0]],但解析为 16.3.0。禁用插件并检查 你的依赖树使用 ./gradlew :app:dependencies。
解决办法是因为在16.3.0解决,所以我把整个项目的PLAY_SERVICES_VERSION都改了
change all code:
from "PLAY_SERVICES_VERSION": "15.+"
to "PLAY_SERVICES_VERSION": "16.+"
但在上述之前,我已经完成了:
cordova platform rm android
cordova platform add android
但是,请注意保留平台目录的副本,也许您在该目录中进行了一些更改,尽管理想情况下您不应该这样做,但作为初学者,您会按照许多其他解决方案的建议进行操作。
上传应用:
所有集成完成后,将应用上传到 Play 控制台。
检查您的 Firebase 控制台
经过几个小时的等待,在一些下载发生后,它显示如下截图。
链接:
https://github.com/arnesson/cordova-plugin-firebasehttps://firebase.google.com/docs/https://firebase.google.com/docs/samples/https://firebase.google.com/docs/libraries/
希望对您有所帮助。
更新
我用 Cordova + Reactjs 编写了这个应用程序。
现在一天,最好在React Native或Flutter创建
【讨论】:
嗨,我收到此错误:成功 callbackId 错误:PushNotification1149818716:TypeError:无法读取未定义的属性“setAnalyticsCollectionEnabled”。您遇到过这个问题吗? 上面的意思是someThing1.setAnalyticsCollectionEnabled()
被使用了,但是someThing1
是未定义的。
我只需要cordova plugin add cordova-android-play-services-gradle-release --save --variable PLAY_SERVICES_VERSION=16.+
感谢您的指导。为愚蠢的问题道歉,但你把上面的代码放在哪里?在 index.html 中?
我实际上忘记了它在哪里。很可能是我用 Cordova+Reactjs 编写的移动应用程序。现在,最好在 React Native 或 Flutter 中创建【参考方案3】:
另一个 Cordova 插件,虽然这仅适用于 Analytics(一个:https://github.com/chemerisuk/cordova-plugin-firebase-analytics
要调试您的事件,请记住将您的应用正确配置为described here。
【讨论】:
哇,你刚刚保存了我的@$$ - 浪费了几天时间,不知道发生了什么以及为什么我没有始终如一地看到我的数据......这真的救了我,谢谢!以上是关于用于 Phonegap/Cordova 应用程序的 Firebase 分析的主要内容,如果未能解决你的问题,请参考以下文章
Phonegap/Cordova Geolocation 不适用于 Android 4.0+,但适用于所有其他平台
PhoneGap/Cordova、波纹仿真器、CORS 和 JSONP
使用 Phonegap/Cordova JS 应用程序和 MS ADAL JS。如何在真实手机中重定向 URI?
Phonegap / Cordova ios外部链接iframe无法在safari中打开