私はcordovaでWebRTCを使用していますが、プレイストアのアンドロイド版を22から23にアップグレードするのは大きな間違いでした(明らかにこの状況を元に戻す方法はありません)cordova:アンドロイド23は、実行時に "MODIFY_AUDIO_SETTINGS"アクセス許可が必要です
これで、実行時にアクセス許可を求める必要があります。すべてが今は大丈夫ですが、WebRTCコミュニケーションのために私のアプリケーションはこの特定の権限 "MODIFY_AUDIO_SETTINGS"を必要とします。カメラ、マイク、ロケーションのパーミッションについては、requestCameraAuthorization
、requestMicrophoneAuthorization
、requestLocationAuthorization
の方法を使ってcordova-diagnostic-pluginを使用します。
私はcordova.plugins.diagnostic.permission.MODIFY_AUDIO_SETTINGS
という引数でrequestRuntimePermission
メソッドを試しましたが、cordova.plugins.diagnostic.permission
に 'MODIFY_AUDIO_SETTINGS'権限が含まれていないため動作しません。ここで利用可能なアクセス許可の一覧は以下のとおりです。
私がいなかったので、私はアンドロイド22(オーディオなし)と同じ問題を抱えていたので、問題は、「MODIFY_AUDIO_SETTINGSの許可の不足であることをイムはかなりシュールそれをconfigに含めます。これを参照してくださいold SO post of mine
ありがとうございます。
以前のアンドロイドバージョンとの下位互換性を保証するため、すべての権限がconfig.xmlに設定されています。だから私はまだ実行時にその許可を求める必要があります。 – dafriskymonkey
'実行時にその権限を依頼する必要があります。いいえ、あなたはそうではありません。実行できないアクセス権ではないため、マニフェストにエントリが必要です。 config.xmlからあなたのエントリがAndroidManifest.xmlに終わっていることを確認しましたか?最近まで([email protected])、これには[cordova-custom-config](https://github.com/dpa99c/cordova-custom-config)のようなサードパーティのプラグインが必要でした。 – DaveAlden