我尝试将文本文件存储在设备的手机内存中,它与哪个设备支持外部插槽一起工作。,但不能与没有外部插槽的安卓手机一起使用。(例如三星S6 Edge)。
下面是我的代码:
public void AfterSaveClick() {
OutputStream fOut = null;
try {
Toast.makeText(MainActivity.this, "Start",Toast.LENGTH_SHORT).show();
//device basic path(phone memory)
File root = new File(Environment.getExternalStorageDirectory()
+ File.separator + "Log_Folder" + File.separator);
root.mkdirs();
File phoneMemoryTextMainDirectory = new File(root, "samples.txt");
FileWriter writer = new FileWriter(phoneMemoryTextMainDirectory);
writer.append("Hello");
writer.flush();
writer.close();
} catch (Exception e) {
e.printStackTrace();
}
}
我认为你应该做的是首先检查设备是否有外部存储,你可以使用这样的东西:
Boolean isSDPresent = android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);
如果设备有外部存储,那么使用你已经拥有的路径,否则你应该在手机内部内存中添加另一个路径。