2017-04-16 8 views
0

現在、Androidアプリケーションを開発しています。これは、.txtファイルを開いて保存します。 外部の.txtファイルを読みやすくするため、SD-Cardのアプリケーションのフォルダに保存されていることを確認します。 残念ながら私は/ storage/emulated/0にしかアクセスできません。AndroidアプリケーションでSDカードにアクセスする

Iはすでに2つの異なるpossibilitesを試みた:

Environment.getExternalStorageDirectory() 
getExternalFilesDir("MyFileStorage") 

彼らは/ストレージの両方リード/内部ストレージに/ 0をエミュレート。 誰かが自分のスマートフォンのSDカード(USBデバッグ)のアプリのフォルダにどのようにアクセスできるか知っていますか?

答えて

0
SDカード上の彼らは、アプリのフォルダに保存されている

デフォルトでは、アプリケーションはremovable storage上のディレクトリを持っていません。

Android 4.4以降では、use getExternalFilesDirs()(最後にsに記載されています)にようこそ。 2つ以上のエントリを持つリストが返された場合、最初のものは外部ストレージにあり、残りはリムーバブルストレージに格納されます。

は、私はすでに彼らは両方のリード/ストレージへ/ AndroidのSDKが external storageなどを指し、何に内部ストレージ

これらの点に/ 0をエミュレート... 2異なるpossibilitesを試してみました。

+0

getExternalFilesDirs(1)を使用して私のために働いた:) – Scian

0

デフォルトでは、外部ストレージにフォルダはありません。あなたは、このようなあなたのアプリ用のフォルダを作成する必要があります。

String folder_main = "YourAppName"; 

File f = new File(Environment.getExternalStorageDirectory(), folder_main); 
if (!f.exists()) { 
    f.mkdirs(); 
} 

あなたがSDカードにアクセス(および導入されたアクセス許可モデルを使用するためにAndroidManifest.xmlに許可

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

を追加する必要があることを忘れないでくださいAndroid 6.0の新しいデバイス用)

+1

このコードは、大部分のAndroid搭載デバイスのSDカードとは関係ありません。 – CommonsWare

+0

残念ながら、これはうまくいきません。 Environment.getExternalStorageDirectory()は、/ storage/emulated/0に再びつながります。したがって、私は私の内部ストレージにフォルダを作成しています。 私は外部ストレージに書き込む許可を持っています(私は自分の電話の設定でもそれをチェックしました)。 – Scian

関連する問題