DebugView 没有可用的设备

Igo*_*chi 5 java android firebase firebase-analytics

我正在对一个小应用程序进行一些测试,以了解 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);
}
Run Code Online (Sandbox Code Playgroud)

要查看我的应用程序是否将数据发送到 Firebase,我尝试使用 DebugView 但它说没有任何设备可用,我还使用了命令

adb shell setprop debug.firebase.analytics.app <package_name>  
Run Code Online (Sandbox Code Playgroud)

但什么都没有改变。
如果我使用这 3 个命令

adb shell setprop log.tag.FA VERBOSE
adb shell setprop log.tag.FA-SVC VERBOSE
adb logcat -v time -s FA FA-SVC
Run Code Online (Sandbox Code Playgroud)

我可以看到我的应用程序正在向 firebase 发送一些数据,如图所示

我该怎么做才能启用 DebugView 并实时查看我的应用发送到 Firebase 的内容?

M. *_*kib 9

请确保已遵循以下步骤:

第 1 步:您的应用程序在 Firebase 控制台中进行了正确配置,以支持 Analytics 功能。

第2步:

A) 如果您只是使用单一构建变体,则以下命令就足够了:

adb shell setprop debug.firebase.analytics.app [your_app_package_name]
Run Code Online (Sandbox Code Playgroud)

B) 但是,如果您正在使用具有不同应用程序 ID(与应用程序包名称不同)的多个构建变体,请务必执行以下命令:

adb shell setprop debug.firebase.analytics.app [your_application_id]
Run Code Online (Sandbox Code Playgroud)

此处,应用程序 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
Run Code Online (Sandbox Code Playgroud)

同样,要调试应用程序 ID 为 com.abc.y 的构建变体 y,命令将为:

adb shell setprop debug.firebase.analytics.app com.abc.y
Run Code Online (Sandbox Code Playgroud)

此行为将持续存在,直到您通过执行以下命令明确禁用它:

adb shell setprop debug.firebase.analytics.app .none.
Run Code Online (Sandbox Code Playgroud)


小智 1

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

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

之后,在Android Studio中,通过Debug运行