web-dev-qa-db-ja.com

AnalyticsServiceがアプリマニフェストに登録されていません-エラー

SDKで提供される次のドキュメントを使用して、GoogleアナリティクスサービスをAndroidアプリに実装しようとしています。

https://developers.google.com/analytics/devguides/collection/Android/v4/

分析管理サイトに情報が表示されません。

アプリの実行中に、次のデバッグメッセージが表示されます

"AnalyticsServiceはアプリマニフェストに登録されていません。ヒットは確実に配信されない可能性があります。 https://developers.google.com/analytics/devguides/collection/Android/v4/を参照してください 指示用。」

このサービスの登録方法を教えてください。

84
CreativeManix

この警告に基づいて行動することで問題が解決するかどうかはわかりません(つまり、Analytics管理サイトに情報が表示されない)。

とにかく、この警告を取り除くには、アプリケーションタグ内のAndroidManifest.xmlに追加する必要があります。

 <!-- Optionally, register AnalyticsReceiver and AnalyticsService to support background
      dispatching on non-Google Play devices -->
 <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"/>

 <!-- Optionally, register CampaignTrackingReceiver and CampaignTrackingService to enable
      installation campaign reporting -->
 <receiver Android:name="com.google.Android.gms.analytics.CampaignTrackingReceiver"
     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" />

これらすべてを追加する必要はなく、必要なものを追加するだけです。あなたのケースでは、明らかにAnalyticsServiceサービスを追加する必要があります。

ソース: https://developer.Android.com/reference/com/google/Android/gms/analytics/GoogleAnalytics.html

178
Karim

これをマニフェストに追加します

 <service Android:name="com.google.Android.gms.analytics.AnalyticsService"
 Android:enabled="true"
 Android:exported="false"/>
26
Steve Lai

Karimの説明 うまくいきましたが、マニフェストでWakeロックの許可を与えるまで機能しません。

<uses-permission Android:name="Android.permission.WAKE_LOCK" />

Google v4ディスパッチリファレンス。

8
Dávid Tímár

同様の問題がありました-AnalyticsServiceに関するメッセージは、お使いのデバイスにGoogleサービスがないように見えますが、私には当てはまりませんでした。ただし、このログがアプリから呼び出されたことを確認できないことに気付きました。ログは10173-10192/? V/GAV4のように見えたため、パッケージ名は隠されていました。

Googleアナリティクスのログを表示するには、ログレベルを詳細に変更する必要があります。

GoogleAnalytics.getInstance(this).getLogger().setLogLevel(Logger.LogLevel.VERBOSE);

問題の原因を分析するのに役立ちます。