Articles of android sdcard

为什么AssetManger.list()这么慢?

我试图用SDcard中存储的文件混合填充ListView,并将其作为资产存储在APK中。 使用TraceView ,我可以看到AssetManager.list()的性能与AssetManager.list()相比较差,尽pipe我使用的是SDcard的文件名filter。 下面是一个简单的方法,它返回SD卡上的一个文件夹中的所有png文件: // The folder on SDcard may contain files other than png, so filter them out private File[] getMatchingFiles(File path) { File[] flFiles = path.listFiles(new FilenameFilter() { public boolean accept(File dir, String name) { name = name.toLowerCase(); return name.endsWith(".png"); } }); return flFiles; } 我在这里调用这个方法,它需要大约12ms来检索16个文件: final String state = Environment.getExternalStorageState(); if (Environment.MEDIA_MOUNTED.equals(state)||Environment.MEDIA_SHARED.equals(state)) […]

Android的SD卡问题

我currenlty有一些与开发一个APP和使用外部SD卡的问题。 第一个问题是我检查是否安装了SD卡。 即使没有插入SD卡,此函数也会返回true。 我用/试过下面的代码: https://stackoverflow.com/a/12721994 http://tsicilian.wordpress.com/2012/04/24/android-persistence-external-storage-sd-card/ 来自developer.android.com 每个兼容Android的设备都支持可用于保存文件的共享“外部存储”。 这可以是可移动存储介质(如SD卡)或内部(不可移动)存储。 保存到外部存储器的文件是世界可读的,并且可以在用户启用USB大容量存储器在计算机上传输文件时进行修改。 也许这是一个问题? 我正在使用LG L5(E610) 我已经将正确的权限添加到清单文件。 我的其他问题可能与这个问题有关 很感谢任何forms的帮助。 谢谢。

Android:.nomedia被忽略,图片仍然出现在画廊上

我正在构build一个应用程序,从网上下载图像,并将它们存储到我的SDCard中,以使它们在库中不可见,我把这一行生成一个.nomedia文件: FileWriter f = new FileWriter("/sdcard/Android/data/CopyImage/cache/.nomedia"); 应用程序可以成功下载图像,并使.nodata文件在同一个文件夹,但事情是,图像仍然出现在画廊上。 那怎么可能? 任何人都可以为我提供解决scheme吗? 非常感谢你

如何在Android应用程序中显示图像?

我想以特定的大小在Android应用程序中显示图像。 我该怎么做? 请指导我? 还有一件事我想从SD卡的图像。 所以请帮助我。 提前致谢。

如何使用多用户环境在Android 4.2的外部存储上查看Android / data / your.package.name文件?

Android 4.2增加了对平板电脑的多用户支持。 现在,当您通过像Environment.getExternalStorageDirectory()或Context.getExternalFilesDir(null)这样的方法请求保存外部存储器上的文件的path时,您将获得如下值:/ /storage/emulated/#/Android/data/your.package.name/ #这个数字取决于你当前login的用户。 这工作正常,但我注意到DDMS的文件资源pipe理器,也是Android文件传输不能够看到这些文件。 DDMS的文件资源pipe理器不能看到任何东西过去storage/emulated/除了一个空的legacy文件夹。 文件传输可以看到/ Android /数据/文件夹,但是作为debugging运行的应用程序,其文件不可见(但它们确实存在)。 有什么办法让DDMS或文件传输工作与这些设备? (希望没有根源的设备…) 谢谢

问题使用Eclipse DDMS将大文件推送到模拟器/ SD卡

我正在使用Eclipse DDMS将文件推送到我的Android模拟器SD卡上。 我select文件并按下打开,popup一个对话框并开始推送文件。 在DDMS透视图的“文件资源pipe理器”中,我可以看到sdcard目录,并可以看到我创build的文件。 然后在popup的进度计得到一半,然后我在控制台窗口中得到这个错误: [2011-09-22 15:15:56] Failed to push the item(s). [2011-09-22 15:15:56] (null) 然后文件资源pipe理器完全刷新,文件消失。 我知道SD卡设置为1G的空间,我推的文件只有9M。 这是在推和失败后的图像。 那么我做错了什么,或者我需要做什么来解决这个问题呢?

Android共享图像不起作用

我正在尝试使用以下代码共享该应用程序的屏幕截图: View content = findViewById(R.id.layoutHome); content.setDrawingCacheEnabled(true); Bitmap bitmap = content.getDrawingCache(); File sdCardDirectory = Environment.getExternalStorageDirectory(); File image = new File(sdCardDirectory,"temp.png"); // Encode the file as a PNG image. FileOutputStream outStream; try { outStream = new FileOutputStream(image); bitmap.compress(Bitmap.CompressFormat.PNG, 100, outStream); outStream.flush(); outStream.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } String url […]

Android:FileObserver只监视顶层目录

根据文件, "Each FileObserver instance monitors a single file or directory. If a directory is monitored, events will be triggered for all files and subdirectories inside the monitored directory." 我的代码像, FileObserver fobsv = new FileObserver("/mnt/sdcard/") { @Override public void onEvent(int event, String path) { System.out.println(event+" "+path); } }; fobsv.startWatching(); 但是,只有在/ mnt / sdcard /文件更改时, onEvent()才会触发。 如果我在/ […]

如何检查文件是否存在于SD卡中的目录

我想检查一个给定的文件是否存在于android SD卡。 我正在尝试使用绝对path创build一个文件,并检查与file.exists()但它不工作。 该文件的URL是"file:///mnt/sdcard/book1/page2.html" ,该文件确实存在。 但不知何故file.exists()不显示相同。

将Logcat保存到Android设备的文本文件中

我在Android设备上运行应用程序时发现了一些崩溃,这在仿真器中没有显示。 所以我需要将Logcat保存在设备内存或SD卡的文本文件中。 你能build议我这么做的好方法吗?