web-dev-qa-db-ja.com

実行時のプッシュ通知(GCM)許可?

API 23以降では、実行時にユーザーに許可を求める必要があることを読みました。例:Android.permission.ACCESS_FINE_LOCATION。 APIが23以上の場合、実行時にGCM/Push通知を使用するための実行時許可を要求する必要がありますか(または可能です)?

実行時にrequestPermissionsメソッドを使用しようとしましたが、GCM/Push通知関連のアクセス許可で使用すると動作しないようです(何も起こりません)。

この目的のために、マニフェストに次の権限があります。

<uses-permission Android:name="Android.permission.INTERNET"/>
<uses-permission Android:name="com.google.Android.c2dm.permission.RECEIVE"/>
<permission
    Android:name="${applicationId}.permission.C2D_MESSAGE"
    Android:protectionLevel="signature"/>

ユーザーが知っている唯一の権限は、PlayストアからアプリをダウンロードするときのACCESS_FINE_LOCATIONです。ユーザーはプッシュ通知を許可するかどうかを選択できるはずではありませんか?

どんな助けも大歓迎です。

44
Langkiller

実際には、Push Notification許可は、INTERNET許可のような通常のカテゴリ許可にありますinDangerous Category Permission.

あなたはしないでくださいプッシュ通知許可を要求する必要はありません。

ユーザーdata.soにアクセスしているため、連絡先/場所は危険なアクセス許可です。

あなたが理解するように願っています。 https://developer.Android.com/guide/topics/security/permissions.html

104
Umer