Firebase Analytics - 设备模型“未设置”

问题描述 投票:0回答:1

我有一个使用 Firebase Analytics 的 Android 应用。在应用程序中,有一个功能可以打开另一个应用程序的网络视图,也使用 Firebase Analytics。

我很好奇为什么从网络视图打开应用程序时设备型号被记录为“未设置”? 示例报告设备型号未设置

从网页视图打开应用程序时如何记录设备型号?

android firebase kotlin firebase-analytics
1个回答
0
投票

将设备信息从 Native App 传递到 Webview:

您可以使用 JavaScript 将设备模型从 Android 原生层传递到 webview 中。在您的本机 Android 应用程序中,获取设备模型并将其注入到 webview 上下文中。

示例:

WebView myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();

webSettings.setJavaScriptEnabled(true);

String deviceModel = android.os.Build.MODEL;  // Get device model

myWebView.loadUrl("javascript:logDeviceModel('" + deviceModel + "')");

然后,在您的 Web 应用程序(位于 Web 视图内)中,创建一个如下 JavaScript 函数:

function logDeviceModel(model) {
// Log the device model to Firebase Analytics
firebase.analytics().logEvent('device_info', {
    device_model: model
});
}

这将允许 Web 视图从本机应用程序接收设备模型并通过 Firebase 进行记录。

自定义 Firebase 事件:

如果您想在用户与 Web 视图交互时记录设备模型,您可以从本机端使用设备模型触发自定义 Firebase Analytics 事件。

Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.DEVICE_MODEL, android.os.Build.MODEL);
mFirebaseAnalytics.logEvent("webview_opened", bundle);

这将确保打开 Web 视图时,设备模型被记录为事件的一部分。

我希望此信息可以解决您的错误。

© www.soinside.com 2019 - 2024. All rights reserved.