ああ親愛なるが、助けてください!SDカードと構成の設定
private void copyDatabase() {
if(!Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())){
Toast.makeText(this, "External SD card not mounted", Toast.LENGTH_LONG).show();
}
//Toast Message Always appears
try {
InputStream in = getAssets().open("Asset_Directory");
File outFile = new File(Environment.getExternalStorageDirectory() + File.separator + "Asset_Directory");
outFile.createNewFile();
OutputStream out = new FileOutputStream(outFile);
byte[] buf = new byte[1024];
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
out.close();
in.close();
Log.i("AssetCaptureActivity","Database has been transferred");
} catch (IOException e) {
Log.i("AssetCaptureActivity","Could not open the file");
}
}`
あなたが見ることができるように:私は私の資産フォルダにデータベースファイルをコピーし
まず、ここに私のコードです。 これを仮想SDカードにコピーして、データベースを編集できるようにします。 私のマニフェストにWRITE権限を追加しました。 私は[実行コンフィギュレーション]設定で何かを変更する必要があることを読んだが何?
私はアクセス許可が拒否されましたを取得しておくと、それは私のSDカードがマウントされていないと言います。
助けてください!
あなたは、外部記憶装置はまた、あなたがエミュレータのためにSDカードを有効にしているかどうかを確認のAndroidマニフェストに<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
を次の権限を追加利用できるかどうか
/**
* @return <ul>
* <li><b>true: </b>If external storage is available</li>
* <li><b>false: </b>If external storage is not available</li>
* </ul>
*/
public static boolean isExternalStorageAvailable() {
boolean isAvailable = false;
try {
String state = Environment.getExternalStorageState();
if (Environment.MEDIA_MOUNTED.equals(state)
|| Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) {
// We can read the media
isAvailable = true;
} else {
// Something else is wrong. It may be one of many other states,
// but all we need
// to know is we can not read
isAvailable = false;
}
} catch (Exception e) {
e.printStackTrace();
}
return isAvailable;
}
/**
* @return <ul>
* <li><b>true: </b>If external storage is writable</li>
* <li><b>false: </b>If external storage is not writable</li>
* </ul>
*/
public static boolean isExternalStorageWritable() {
boolean isWriteable = false;
try {
String state = Environment.getExternalStorageState();
if (Environment.MEDIA_MOUNTED.equals(state)) {
// We can write the media
isWriteable = true;
} else if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) {
// We can only read the media but we can't write
isWriteable = false;
} else {
// Something else is wrong. It may be one of many other
// states, but all we need
// to know is we can neither read nor write
isWriteable = false;
}
} catch (Exception e) {
e.printStackTrace();
}
return isWriteable;
}
であるかどうかを判断するには、次の方法を使用することができます
Uが追加されているかどうかを確認? – Hardik4560
は、はい、私は(!私は私の頭の上にこれ以上の髪を持っていない前にヘルプを)私が要求するあなたの方法のように私のAVD – Michelle1109Andriod
にSDカードを作成し、午前しかし、あなたを助けることができません – Nepster