Code Bye

编写安卓端操作SD卡的程序,在虚拟机上可以用,在真实手机上却不行

 

找SD卡的方法就是用的Environment.getExternalStorageDirectory();

就一个很简单的小程序,新建一个文件,以及删除一个文件

在虚拟机上运行一切正常,但是安装到手机上以后,无法新建文件。手动创建文件以后,点击删除,提示删除成功但实际上文件还存在

是不是手机上的权限问题?不允许程序操作SD卡?

估计是你路径没写好
Environment.getExternalStorageDirectory()获得的路径后面要加一个”/”,再加文件名。
估计是你组装的全路径里少了一个”/”分隔符。
路径没有问题啊。。。虚拟机上都运行的好好的。。。

30分
引用 3 楼 hackerxboy 的回复:

路径没有问题啊。。。虚拟机上都运行的好好的。。。

把代码贴上来看看。

SDpath = Environment.getExternalStorageDirectory().getAbsolutePath().toString()+”/”;
String targetPath = SDpath + “hello.txt”;
public static void deleteFile(String targetPath) throws IOException { 
          File targetFile = new File(targetPath); 
          if(targetFile.exists()){
           targetFile.delete();
          }
}
大概就是上面这样的。
找到问题了 自己犯傻了  忘记加入<uses-permission>读写SD卡的权限了

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明编写安卓端操作SD卡的程序,在虚拟机上可以用,在真实手机上却不行