清单合并工具已发布,可在集成应用和库AAR清单时自动处理冲突。
http://developer.android.com/tools/building/manifest-merge.html
然而,已知的问题是,当您为2个或更多广播接收器声明相同的意图动作时,只有一个(随机选择)接收器将在发生此类动作时作出响应。
最受欢迎的情况是尝试捕获引荐来源:def histogram():
stars = [10,2,3]
return '\n'.join('*' * i for i in stars)
print histogram()
并且例如2个接收器:
com.android.vending.INSTALL_REFERRER
我的问题是,是否可以使用ManifestMerger 检测是否有2个接收器与冲突的意图过滤器操作 :
<receiver
android:name="com.myapp.ReceiverA"
android:enabled="true"
android:exported="true">
<intent-filter >
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
<receiver
android:name="com.mylib.ReceiverB"
android:enabled="true"
android:exported="true">
<intent-filter >
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
并阻止开发人员构建项目,直到他修复它。