2

私は SAF を使用して、ユーザーがビデオを外部 SD カードに保存したり、カメラ アプリを使って USB ドライブに保存したりできるようにしています。ただし、それらをギャラリーに表示したくないので、.nomedia ファイルを作成する必要があります。

私は現在このコードを使用しています:

 mTreeUri = Uri.parse(treeUri);
        mPickedDir = DocumentFile.fromTreeUri(this, mTreeUri);
        if (treeUri != null) {
            final DocumentFile existingMediaFile = mPickedDir.findFile(".nomedia");
            if (existingMediaFile == null) {

                DocumentFile newFile = mPickedDir.createFile("text/plain", ".nomedia");
                if (newFile == null) {
                    return null;
                }
                OutputStream out = null;
                try {
                    out = getContentResolver().openOutputStream(newFile.getUri());
                    out.write("A long time ago...".getBytes());
                    out.close();
                } catch (IOException e) {
                    Log.d(TAG, "Nomedia", e);
                }

問題は、SAF が dotfile の代わりに nomedia.txt というファイルを作成することです。application/* の範囲でいくつかの異なる MIME タイプを試してみましたが、ファイルがまったく作成されません。ポインタをいただければ幸いです:)

4

3 に答える 3