問題タブ [ringtonemanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - RingtoneMananger を使用してカスタムの着信音/通知を設定すると、無効なファイルが表示される
ユーザーがリソースからサウンド ファイルをダウンロードし、それらを着信音 (具体的には通知音) として使用できるようにするアプリを作成しています。
これまでのところ、アプリは指定したディレクトリに mp3 ファイルを正常に作成し、携帯電話のファイル エクスプローラーを使用してファイルを開くことができ、期待どおりに再生されますが、システムのサウンド設定では数値としてのみ表示され、uri のid と仮定し、サウンドを再生しません。着信音を手動で設定しようとすると、利用可能なサウンド ファイルに表示されません。
私のコード:
何か不足していますか?
SDK 30
ringtonemanager - 着メロマネージャーアンドロイド11
着信音を設定するために以下のコードを使用し ましたが、Android 11の場合はエラーがあります
show: focusDisplayId = 0, isFocusInDesktop = false mCustomDisplayId=-1 isDexDualMode=false 2021-10-11 14:53:03.037 10319-10319/com.bestappsringtones.ringtonesforandroidfree I/Toast: show: isActivityContext = true 2021-10-11 14 :53:03.106 10319-10319/com.bestappsringtones.ringtonesforandroidfree W/RingtoneManager: 直接開くことができませんでした。フェイルオーバーの試行: java.io.FileNotFoundException: オープンに失敗しました: ENOENT (そのようなファイルまたはディレクトリはありません) 2021-10-11 14:53:03.114 10319-10319/com.bestappsringtones.ringtonesforandroidfree W/RingtoneManager: 着信音のキャッシュに失敗しました: java. io.IOException: java.lang.SecurityException: Uri は着信音、アラーム、または通知ではありません: content://0@media/external/audio/media/56062 2021-10-11 14:53:03.114 10319-10319/com .bestappsringtones.ringtonesforandroidfree I/RingtoneManager: 保存パス タイプ:1、URI: コンテンツ: