谷歌分析与Android:以编程方式设置ga_reportUncaughtExceptions?

loe*_*chg 7 xml android google-analytics google-analytics-firebase

TL;博士

有没有办法在不使用Android中的xml配置的情况下以编程方式为Google Analytics(v4)启用reportUncaughtExceptions?

更长的解释

我在Android应用中使用Google Analytics v4,我需要一种方法来通过构建风格设置两个不同的跟踪ID.我使用的是一般的global_tracker.xml配置(见下文),但我需要一种基于风格"动态注入"跟踪ID的方法.

<resources xmlns:tools="http://schemas.android.com/tools"
           tools:ignore="TypographyDashes">
    <integer name="ga_sessionTimeout">300</integer>
    <bool name="ga_autoActivityTracking">true</bool>
    <bool name="ga_reportUncaughtExceptions">true</bool>

    <!--  The following value should be replaced with correct property id. -->
    <string name="ga_trackingId">UA-xxxxxx-xx</string>
</resources>
Run Code Online (Sandbox Code Playgroud)

为了避免在构建flavor源文件夹中有重复的xml配置,我使用trackingId直接初始化跟踪器并以编程方式设置属性.

mGATracker = analytics.newTracker(R.string.ga_code); // this is dynamic depending on flavor
mGATracker.setSessionTimeout(300);
mGATracker.enableAutoActivityTracking(true);
Run Code Online (Sandbox Code Playgroud)

有没有办法在不使用xml配置的情况下启用reportUncaughtExceptions?

小智 7

如果我没有误解你的问题,解决方案如下:

mGATracker是您自己的追踪器.

mGATracker.enableExceptionReporting(true);
Run Code Online (Sandbox Code Playgroud)

希望它有所帮助,谢谢.

参考:https://developers.google.com/android/reference/com/google/android/gms/analytics/Tracker#enableExceptionReporting(boolean)


Avi*_*Avi 4

否 在当前版本的 API 中无法执行此操作。不过还是谢谢你指出来。我们将对其进行研究,并可能将其添加到即将推出的 sdk 版本之一中。