android – / mnt / sdcard和/ sdcard之间有区别吗?

我正在尝试将位图保存到Pictures目录中.这是代码

            File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);

            File file = new File(path,"test1.PNG");
            try { 
                   path.mkdirs();
                   OutputStream out = new FileOutputStream(file);
                   mBitmap.compress(Bitmap.CompressFormat.PNG,90,out);
                   out.flush();
                   out.close();

            } catch (Exception e) {
                   e.printstacktrace();
                   Log.w("ExternalStorage","Error writing " + file,e);
            }

但是执行卡在OutputStream out = new FileOutputStream(file);
我用调试器和完整路径返回mnt / sdcard / Pictures / test1.PNG,是mnt /罪魁祸首为什么我无法通过OutputStream out = new FileOutputStream(file);?因为我只能在我的文件目录中看到sdcard /.

谢谢!

最佳答案
你可以使用这个Environment.getExternalStorageDirectory()作为mnt / sdcard或sdcard /它来获取和访问sdcard目录,这是一个设备依赖目录,它是操作系统访问和使用外部目录的方法,不需要担心不同的设备和不同的目录被返回通过这种方法.

编辑

对于访问外部存储需要权限并在androidmanifest.xml文件中定义为用户权限

WRITE_EXTERNAL_STORAGE

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...