0

在我的清单文件Android应用我有以下接收机和服务声明:AnalyticsReceiver - 这是什么?为什么它会导致“接收器不需要许可”警告?

<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" /> 

说实话这是相当旧的应用程序,我不记得为什么我已经把存在。它可能来自Google Analytics文档。但是现在我找不到有关它的最新信息。

什么是更多的Android Studio显示我与接收器警告:

接收器不需要任何许可

出口接收器(接收器 其中任一组输出= true或者包含意图过滤器,做不是 指定exported = false)应该定义一个实体必须具有的权限,以便启动接收者或绑定到该接收者。没有这个,任何 应用程序都可以使用这个接收器。

我真的需要在我的代码中的接收器和服务?这是什么责任?它还是实际的吗?

回答

1

如果您使用的是最新版本的Google Analytics,则不需要在清单文件中手动指定服务和接收者。

Here is the Google Analytics getting start guide for Android。请注意,如果您要从较早的版本进行升级,则可能需要执行额外的工作才能在其他地方执行升级。您应该通读整本指南,以确保您的应用程序仍然配置正确。

+0

好的,谢谢!我也看了那个页面,没有发现任何与这些接收器和服务有关的东西,所以我认为它可能已经过时了。感谢您的确认! – michalsol

+0

这个问题依然存在。入门指南链接到指定此问题中发布的配置的页面。看起来这个配置被用作在非Google Play设备上调度的后备。 – JPM

+0

作为一项后续行动,如果Lint对您有问题,向接收者添加工具:ignore =“ExportedReceiver”将删除警告。 – JPM

相关问题