【问题标题】:DebugView no devices availableDebugView 没有可用的设备
【发布时间】:2018-05-02 15:20:31
【问题描述】:

我正在对一个小型应用程序进行一些测试,以了解 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 的内容?

【问题讨论】:

  • 我有过 DebugView 的经验,我似乎需要在我的浏览器 (Chrome) 中关闭并重新打开 Firebase 控制台选项卡才能开始显示事件。试试看。
  • 这个问题解决了吗?

标签: java android firebase firebase-analytics


【解决方案1】:

请确保已遵循以下步骤:

第 1 步:您的应用已在 Firebase 控制台中正确配置以支持 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.

【讨论】:

    【解决方案2】:

    我的症状和你一样。在我的情况下,问题仅仅是因为我忘记打开 WiFi,所以事件无法传播到云端,而是出现在 logcat 中。

    【讨论】:

      【解决方案3】:

      你可以看到你的设备列表 -> adb devices

      然后 -> adb shell setprop debug.firebase.analytics.app package_name

      之后,在 Android Studio 中,由 Debug 运行

      【讨论】:

        【解决方案4】:

        此命令将有助于在 Firebase 分析中查看调试视图:

        adb shell setprop debug.firebase.analytics.app

        firebase Google 支持中指定的附加说明

        注意:在使用 DebugView 之前,您应该确保您的设备时间是准确的。设备时钟出现偏差会导致您的 Google Analytics(分析)报告中的事件延迟或丢失。

        您可以参考以下链接: https://support.google.com/firebase/answer/7201382?hl=en

        【讨论】:

          【解决方案5】:

          我花了很多时间来调试它,我的结论是——这是 Firebase 的不稳定性,因为我间歇性地收到事件,并且没有任何模式可以让它们出现在 DebugView 中

          【讨论】:

            【解决方案6】:

            我的情况可能与我的情况无关,但如果没有别的,我会为了我未来的理智发帖。

            我在 firebase 中创建了一个新项目,并且在尝试与我的应用程序通信时说“完成 sdk 设置”错误(我刚刚完成重命名 android 包提示创建一个新项目) Firebase 中的项目)

            我试图让调试工作以“启动”连接,但没有得到设备,所以我知道有问题。

            我的问题是我提交的google-services.json。它引用了我的旧项目名称,以及我的新项目名称。所以可能是搞糊涂了?

            在client下,有两个对象有client_info、api_key等,我把旧的去掉了,只留下新的正确的一个。

              "client": [
                {...}, // <-- removed this one
                {...}
              ]
            
            

            【讨论】:

            • 是的,但我们中的一些人有多个环境(不像你的那样“旧”),它应该足够聪明,可以知道获取与应用程序当前包名称匹配的客户端数据跨度>
            【解决方案7】:

            确保您没有在 Gradle 或清单上禁用 Firebase Analytics 日志记录。

            【讨论】:

            • 我为 .debug 变体禁用了它,我花了 30 分钟才找到问题。
            【解决方案8】:

            好吧....原因是因为我在第二个屏幕上有这个 =>

            经验教训:

            1. Android 模拟器会与 ADB 发生冲突并影响 Firebase 调试视图。
            2. 不要在工作期间玩游戏...这会“直接”适得其反。

            【讨论】:

              猜你喜欢
              • 2021-03-13
              • 1970-01-01
              • 2022-01-21
              • 1970-01-01
              • 2022-11-18
              • 1970-01-01
              • 2020-10-17
              • 1970-01-01
              相关资源
              最近更新 更多