背景
Android 4.4 (KitKat)で、Googleは突然、外部/リムーバブルストレージへの書き込み権限をすべてのサードパーティ(プリインストールされていない)アプリケーションから切り離しました。 この決定により、多くのアプリケーションが機能不全に陥り、一部は完全に役に立たなくなりました。 Googleへの圧力により、Android 5に統合された妥協案が生まれました。 アプリケーションは、新しいAPIとSAF(Storage Access Framework)を使用して、外部ストレージへの書き込み権限を回復できます。 ただし、一般的に、外部SDカードは常に内部メモリよりもはるかに信頼性が低い(特にデバイス/SDカードの組み合わせによっては)。
初回起動
- ディレクトリピッカーが表示されます。 作業したいディレクトリ(またはボリューム)を選択する必要があります。
- その他ボタン(右上隅)をタップし、SDカードを表示を選択します。
- メニューボタン(左上隅)をタップし、使用したいストレージを選択します。
- 選択(下部)をタップします。
制限事項
SAFモードにはいくつかの制限がありますので、知っておく必要があります。
- SAF APIは、標準の直接ファイルアクセスモードよりもはるかに低いパフォーマンスを提供します(特に多くのファイル/サブディレクトリを含むディレクトリの場合)。
- ホーム/カスタムディレクトリはSAFでは設定できません。 ただし、最後に選択したSAF URIは自動的に保存されます: ホームボタン → 最後に選択したSAFディレクトリへ移動。
- 消去機能は機能しません。 アプリ設定で「暗号化後に消去」オプションがチェックされている場合、ファイルは削除されるだけです。
- 「ファイルを開く」機能は、宛先アプリケーションがSAF URIをデコードできる場合にのみ機能します。