2

Google Play からメールが届きました。「あなたのアプリには不正な形式の AndroidManifest.xml ファイルが含まれているため、ユーザーがアプリをアンインストールするのが困難になる可能性があります」という内容で、アプリが削除されることを通知します。

アプリは非常にシンプルです: デバイスをスタンバイ状態にします。

ここに彼らの推薦があります

特に、アプリの AndroidManifest.xml には、不正な形式の Device Admin レシーバー エントリが含まれています (android.app.device_admin という名前のメタデータによって識別されます)。整形式のデバイス管理者になるには、エントリでアクション android.app.action.DEVICE_ADMIN_ENABLED を使用してインテントのインテント フィルタを宣言する必要があります。推奨される変更は、受信者がデバイス管理者である場合はエントリを適切な形式にするか、受信者がデバイス管理者でない場合は 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>

正直なところ、私はそれを修正する方法を理解していません。何か案は ?

4

1 に答える 1

1

問題は、メタデータ タグの下にネストされている可能性がありますが<intent-filter>...</intent-filter>、どちらも の直接の子である必要があり<receiver />ます。ドキュメントによると、有効な宣言は次のようになります。

<receiver>
    <intent-filter> . . . </intent-filter>
    <meta-data />
</receiver>

http://developer.android.com/guide/topics/manifest/manifest-intro.html

于 2013-06-15T09:58:03.563 に答える