我刚从Google Play收到一封电子邮件,通知我我的应用将被删除,因为“我们已确定您的应用存在格式错误的AndroidManifest.xml文件,这可能会让用户难以卸载该应用”
该应用很简单:将设备发送到待机状态。
这是他们的推荐
特别是,应用程序的AndroidManifest.xml包含格式错误的设备管理接收器条目(由名为android.app.device_admin的元数据标识)。要成为格式良好的设备管理员,该条目必须使用操作android.app.action.DEVICE_ADMIN_ENABLED声明Intent的Intent过滤器。如果接收者是设备管理员,建议的修改是使条目格式良好,或者如果接收者不是设备管理员,则删除名为android.app.device_admin的元数据。
这是Android清单中的部分
<receiver
android:name=".MyAdmin"
android:permission="android.permission.BIND_DEVICE_ADMIN" >
<meta-data
android:name="android.app.device_admin"
android:resource="@layout/policies" >
<intent-filter>
<action android:name="android.app.action.DEVICE_ADMIN_ENABLED" >
</action>
</intent-filter>
</meta-data>
</receiver>
说实话,我不明白如何解决它。有什么想法吗?
答案 0 :(得分:1)
问题可能是您在元数据标记下嵌套了<intent-filter>...</intent-filter>
,而两者都应该是<receiver />
的直接子项。根据文档,有效声明应如下所示:
<receiver>
<intent-filter> . . . </intent-filter>
<meta-data />
</receiver>
http://developer.android.com/guide/topics/manifest/manifest-intro.html