私は大学のIT部門で働いており、eduroam WiFiの正しいセットアップをインストールするアプリを開発しています(聞いたことがあるかもしれません)。
しかし、私は自分でそれを実行する際に問題がありますLG G4 with Android 6.0。これらはAndroidManifest.xmlで設定されます。以前のすべてのAndroid=バージョンで動作していました。
実行時に許可を求めることは今必須ですか?
ターゲットSDKバージョンが23の場合、実行時に「危険な」許可を要求する必要があります。
この場合、Settings > Apps > "Your app" > Permissions
にアクセスすると、アクセス許可が付与されていないことがわかります。
新しいシステムをまだ実装したくない場合は、ターゲットSDKバージョンを22に減らして、古い許可システムを取得できます。ただし、SDKバージョン23でコンパイルすることはできます。
詳細については、 ドキュメント を参照してください。
実行時に許可をリクエストする場合は、アプリに特別なリクエストを作成する必要があります。このようなもの:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
createPermissions();
}
public void createPermissions(){
String permission = Manifest.permission.READ_SMS;
if (ContextCompat.checkSelfPermission(getContext(), permission) != PackageManager.PERMISSION_GRANTED){
if(!ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), permission)){
requestPermissions(new String[]{permission}),
SMS_PERMISSION);
}
}
}