当前位置: 首页 > 知识库问答 >
问题:

Google Analytics(分析)v4未注册

伯建安
2023-03-14

我在android应用程序中使用Google analytics v4。安装跟踪在几天内工作正常,突然我的广播接收器没有注册。

Logcat表示:活动跟踪接收器未注册、未导出或已禁用。无法进行安装活动跟踪。看见http://goo.gl/8Rd3yj请示。

这是我在清单应用程序标记中所做的:

    <service android:name="com.google.android.gms.analytics.CampaignTrackingService"
        android:enabled="true"
     android:exported="false" />
    <receiver
        android:name="my.package.CustomCampaignTrackingReceiver"
        android:exported="true" >
        <intent-filter>
            <action android:name="com.android.vending.INSTALL_REFERRER" />
        </intent-filter>
    </receiver>

我定制的竞选跟踪接收器看起来像这样:

public class CustomCampaignTrackingReceiver extends BroadcastReceiver {

  @Override
  public void onReceive(Context context, Intent intent) {

    // When you're done, pass the intent to the Google Analytics receiver.
        new CampaignTrackingReceiver().onReceive(context, intent);

        Log.v("ReferralReceiver", " " + intent.getAction());
        Log.v("ReferralReceiver", " " + intent.getDataString());
        Log.v("ReferralReceiver", " " + intent.toString());
        Log.v("ReferralReceiver", " " + intent.getStringExtra("referrer"));

        //call to other referrers

  }
}

我不知道事情在哪里失控了。我在清单中只使用了一个INSTALL\u Referer筛选器。

共有3个答案

楚俊逸
2023-03-14

如果仅针对启用播放服务的设备,则可以忽略警告,并且不需要添加AnalyticsReceiver和AnalyticsService。检查https://developers.google.com/analytics/devguides/collection/android/v4/dispatch#manual详情请参阅。

壤驷瑾瑜
2023-03-14

我被所有的答案弄糊涂了。但是通过调试和记录发现了它是什么。

基本上:这个警告是在google analytics启动时发出的。它只是警告您没有在清单中注册ActivationTrackingReceiver。但那很好!因为你有自己的跟踪接收器。调试应用程序时,只需执行以下操作即可测试接收器:

echo 'am broadcast \
-a com.android.vending.INSTALL_REFERRER \
-n "com.my.app/com.my.app.CustomInstallTrackerReceiver" \
--es "referrer" \
  "utm_source=promo_mail&utm_medium=emaeil&utm_term=test_term&utm_content=content&utm_campaign=derp"; \
exit' | adb shell

要检查它是否真的有效,您可以查看google analytics的日志:

adb shell setprop log.tag.GAv4 DEBUG
adb logcat -s GAv4

我看到的情况如下:

12-07 11:32:54.678  6993  7011 W GAv4    : CampaignTrackingReceiver is not registered, not exported or is disabled. Installation campaign tracking is not possible. See http : // goo.gl/8Rd3yj for instructions.
12-07 11:33:14.048  6748  6827 D GAv4    : Received installation campaign: content=content, keyword=test_term, medium=emaeil, name=derp, source=promo_mail
12-07 11:33:14.048  6748  6827 D GAv4    : Sending installation campaign to: UA-SECRET, content=content, keyword=test_term, medium=emaeil, name=derp, source=promo_mail
12-07 11:33:14.068  6748  6827 D GAv4    : Hit delivery requested: ht=1481106771894, _s=3, _v=ma9.4.52, adid=xxx, aid=com.my.app, an=Tiqets, ate=1, av=1.6.61.g785cc1e, cc=content, cid=xxx, ck=test_term, cm=emaeil, cn=derp, cs=promo_mail, ni=1, sr=1440x2560, t=data, tid=UA-SECRET, ul=nl-nl, v=1
12-07 11:33:14.098  6748  6827 D GAv4    : Hit sent to the device AnalyticsService for delivery

尽管它还在抱怨。它仍然跟踪它。

庞乐池
2023-03-14

我猜你没有实现AnalyticsService和AnalyticsReceiver?这就是我所做的,让它工作

    <!-- Google Analytics --> 
    <receiver android:name="com.google.android.gms.analytics.CampaignTrackingReceiver"
              android:enabled="true"
              android:exported="true">
        <intent-filter>
            <action android:name="com.android.vending.INSTALL_REFERRER" />
        </intent-filter>
    </receiver>
    <service android:name="com.google.android.gms.analytics.CampaignTrackingService" />
    <receiver android:name="com.google.android.gms.analytics.AnalyticsReceiver"
              android:enabled="true">
        <intent-filter>
            <action android:name="com.google.android.gms.analytics.ANALYTICS_DISPATCH" />
        </intent-filter>
    </receiver>
    <service android:name="com.google.android.gms.analytics.AnalyticsService"
             android:enabled="true"
             android:exported="false"/>
 类似资料:
  • 我试图在Ionic上使用Google Analytics插件,文档代码不适用于我使用: 编辑器说“ts:找不到名称‘GoogleAnalytics’”,但它可以看到一些对象GoogleAnalyticsOriginal,该对象已编译但不工作(在运行时出错)。 这些是系统规范ionic(ionic CLI):4.5.0 离子骨架:离子角3.9.2 @爱奥尼亚/应用程序脚本:3.2.1 Cordova

  • 我正在我的aspnetcore2.2项目上尝试sonarqube。 该项目使用MSbuild版本-16.1.76.45076。 当我运行官方的dotnet-sonarscanner工具版本4.6.2时,只分析CSS代码,而不分析项目中的C#、Javascript和其他代码。 null 使用不同的Sonarscanner工具: 我还用不同的声呐扫描仪工具进行了检查 使用的Sonarscanner工具

  • 问题内容: 我仅使用kibana搜索ElasticSearch,并且我有几个只能接受几个值的字段(最坏的情况,服务器名,30个不同的值)。 我确实了解分析对像这样的更大,更复杂的字段执行的操作,但是对于那些简单的小字段,我却无法理解分析/未分析字段的优点/缺点。 那么,对于“有限的一组值”字段(例如,服务器名:server [0-9] *,没有特殊字符可以打破),使用analyd和not_anal

  • 我正在尝试使用sdk中提供的以下文档在android应用程序中实现谷歌分析服务: https://developers . Google . com/analytics/dev guides/collection/Android/v4/ 我无法在分析管理站点中看到任何信息。 当应用程序运行时,我看到以下调试消息 AnalyticsService未在应用程序清单中注册。可能无法可靠地传递点击。有关说

  • 问题内容: 我正在尝试获取Android中自动设置的Google Analytics(分析)clientId。 (将其设置在Android API文档中解释为) 当我尝试使用它返回空。有人知道吗? 提前致谢! 问题答案: 我为您运行了一个反编译器,并且似乎clientId属性与键“&cid”一起存储。 在内部它这样做: 解决方案是调用此方法: 但是,get()方法对于客户端ID密钥确实具有特殊的逻

  • 问题内容: 我正在电子中创建我的第一个反应应用程序(也是我的第一个电子应用程序)。我有两条路线,需要从一条导航到另一条。为此,我使用以下代码: 根 应用程式 页 这行给出了错误, 我在网上搜索了可能的解决方案,但找不到!SO上也有许多类似的问题,但是对我来说都没有作用:( 问题答案: 您现在必须从历史记录模块中导入它,该模块提供了3种不同的方法来创建不同的历史记录。 适用于支持历史记录API的现代