ああ、頭の毛がなくなる前に助けてください!
まず、ここに私のコードがあります:
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");
}
}`
ご覧のとおり、データベース ファイルを Assets フォルダーにコピーしました。データベースを編集できるように、仮想SDカードにコピーしたいと思います。マニフェストに書き込み権限を追加しました。[実行構成] 設定で何かを変更する必要があることを読みましたが、何ですか?
許可が拒否され続け、SD カードがマウントされていないと表示されます。
助けてください!