お世話になります。itiと申します。
Android Studio 2.2.2に付属のAndroidエミュレータに
SDカードを作成し、そこにテキストファイルを設置して
読み込みたいと思っています。
しかし、設置したにも関わらずファイルを読み込もうとすると
見つからないと言われてしまいます。
そこで、ファイルのパーミッションを変更したいと思っています。
しかし、adb で shell を実行し、chmodを使用してパーミッション
を変更しようとしても変更できませんでした。
どのようにすればテキストファイルにアクセスできるようになります
でしょうか。
OSはAndroid 6.0を指定して作成しました。
試したこと)
1 Environment.getExternalStorageDirectory() でSDカードのパスを取得
→ 「/storage/emulated/0」 を取得
2 「/storage/emulated/0」にテキストファイル「text.txt」を設置
3 以下のプログラムを実行
File file = new File("/storage/emulated/0/text.txt"); FileInputStream fis = null; try { fis = new FileInputStream(file); } catch (FileNotFoundException e) { e.printStackTrace(); }
→FileNotFoundException が発生
4 ファイルのパーミッションを確認
「ADB shell」→ 「ls -al /storage/emulated/0」
-rw-rw---- root sdcard_rw 270822 2017-02-27 19:44 text.txt
5 chmod でパーミッション変更
chmod 666 /storage/emulated/0/text.txt
特にメッセージ等は無し。(エラーや成功といったものも)
6 再びパーミッションを確認
ls -al /storage/emulated/0
-rw-rw---- root sdcard_rw 270822 2017-02-27 19:44 text.txt
よろしくお願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/01 12:34