Android の新しい API バージョン (API 23) では、実行時にパーミッションを要求する必要があります。要求された許可がアプリレベルなのかアクティビティなのか、非常に基本的な疑問があります。このドキュメントによると、その権限が必要な操作を実行するたびに、その権限があるかどうかを確認する必要があります。これは、許可はアプリ レベルで付与されているが、そのチェックはアクティビティ レベルで行うように提案されているということですか? また、許可のチェックは次のように行うことが提案されています。
// Assume thisActivity is the current activity
int permissionCheck = ContextCompat.checkSelfPermission(thisActivity,
Manifest.permission.WRITE_CALENDAR);
ここでは、アクティビティのコンテキストを渡すことによってパーミッションのチェックが行われていることが明確にわかります。与えられたアクセス許可がアプリ レベルである場合、なぜアプリケーション コンテキストではなくアクティビティ コンテキストが必要なのですか? (ただし、メソッドがアクティビティ コンテキストからアプリケーション コンテキストを内部的に取得する可能性はあります)。