我正在对一个小应用程序进行一些测试,以了解firebase-analytics的工作原理。这是MainActivity的代码:
public class MainActivity extends AppCompatActivity {
private FirebaseAnalytics mFirebaseAnalytics;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mFirebaseAnalytics = FirebaseAnalytics.getInstance(getApplicationContext());
mFirebaseAnalytics.setAnalyticsCollectionEnabled(true);
mFirebaseAnalytics.setMinimumSessionDuration(10000);
mFirebaseAnalytics.setSessionTimeoutDuration(300);
Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID,"ID");
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME,"NAME");
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE,"image");
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT, bundle);
}
要查看我的应用是否向Firebase发送数据,我尝试使用DebugView,但它说没有可用的设备,我也使用了命令
adb shell setprop debug.firebase.analytics.app <package_name>
但没有改变 如果我使用这3个命令
adb shell setprop log.tag.FA VERBOSE
adb shell setprop log.tag.FA-SVC VERBOSE
adb logcat -v time -s FA FA-SVC
我可以看到我的应用正在向firebase发送一些数据,例如this picture
如何启用DebugView并查看我的应用实时发送到firebase的内容?
答案 0 :(得分:1)
我和你有同样的症状。就我而言,问题仅是因为我忘了打开WiFi,所以事件无法传播到云,而是出现在logcat中。
答案 1 :(得分:0)
您可以看到设备列表-> adb设备
然后-> adb shell setprop debug.firebase.analytics.app软件包名称
然后,在Android Studio中,通过调试运行
答案 2 :(得分:0)
此命令将有助于在Firebase分析中查看调试视图:
adb shell setprop debug.firebase.analytics.app
firebase Google支持中指定的另一条注释
注意:使用DebugView之前,应确保设备时间准确无误。设备时钟偏斜会导致Google Analytics(分析)报告中的事件延迟或丢失。
您可以参考以下链接: https://support.google.com/firebase/answer/7201382?hl=en
答案 3 :(得分:0)
我的情况可能无关紧要,但如果没有其他原因,请留意我的未来。
我在firebase中创建了一个新项目,还遇到了以下问题:尝试与我的应用程序进行通信时,“完成sdk设置”错误(我刚刚重命名了android软件包提示以创建一个新Firebase中的项目)
我正在尝试调试以使其“踢入”连接,但是没有安装设备,所以我知道出了点问题。
我的问题是我的google-services.json
提交了。它在AS WELL中引用了我的旧项目名称作为新名称。所以也许它变得困惑了?
在客户端下,有两个对象带有client_info,api_key等。我删除了旧对象,只留下了较新的正确对象。
"client": [
{...}, // <-- removed this one
{...}
]
答案 4 :(得分:0)
请确保已遵循以下步骤:
步骤1::您的应用已在Firebase控制台中正确配置为支持Google Analytics(分析)功能。
第2步:
A)如果您仅使用单个构建变体,则以下命令就足够了:
adb shell setprop debug.firebase.analytics.app [your_app_package_name]
B)但是,如果您正在使用具有不同应用程序ID(与应用程序包名称不同)的多个构建变体,请确保执行以下命令:
adb shell setprop debug.firebase.analytics.app [your_application_id]
此处,应用程序ID是在相应的gradle文件中找到的构建变体的应用程序ID。例如,假设您有两个构建变体x和y的x.gradle和y.gradle,并且还具有常规的build.gradle文件。要使用应用程序ID com.abc.x调试构建版本x,命令将为:
adb shell setprop debug.firebase.analytics.app com.abc.x
类似地,要使用应用程序ID com.abc.y调试构建版本y,命令将为:
adb shell setprop debug.firebase.analytics.app com.abc.y
此行为一直存在,直到您通过执行以下命令明确禁用它为止:
adb shell setprop debug.firebase.analytics.app .none.
答案 5 :(得分:-1)
我花了很多时间调试它,我的结论是-Firebase不稳定,因为我间歇性地获取事件,并且没有使它们出现在DebugView中的模式