android - 在android中扫描不同的内存类型

标签 android android-sdcard android-mediascanner android-memory

我有一些疑问可能对其他人也有用。 在android 4.0以后,

1)如何查看是否支持外接SD卡?

2)如何强制运行内外存Mediascan?

3)如何只扫描SD卡或内存?

最佳答案

我建议阅读 storage options在 developer.android.com 上。

检查外部存储器是否可用(取自 developer.android.com):

boolean mExternalStorageAvailable = false;
boolean mExternalStorageWriteable = false;
String state = Environment.getExternalStorageState();

if (Environment.MEDIA_MOUNTED.equals(state)) {
    // We can read and write the media
    mExternalStorageAvailable = mExternalStorageWriteable = true;
} else if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) {
    // We can only read the media
    mExternalStorageAvailable = true;
    mExternalStorageWriteable = false;
} else {
    // Something else is wrong. It may be one of many other states, but all we need
    //  to know is we can neither read nor write
    mExternalStorageAvailable = mExternalStorageWriteable = false;
}

要读取内部文件,请使用 context.fileList(); 查看更多 here .

编辑

我不确定您想要 2 和 3 做什么。您可以将 mediascan 用于很多事情,但仅仅为了使用它听起来效率不高。为此,我推荐@Singularity 建议。有帖子here about using mediascan for pdfs .

关于android - 在android中扫描不同的内存类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13538719/

相关文章:

android - 无法在新安装的 Android Studio 中构建或清理裸露的单一 Activity 项目

android - Android如何计算缓存和数据大小?

android - 无法在 Android 中写入外部 SD 卡

java - 媒体扫描仪完成其事件后如何响应

android - 如何异步调用 MediaScannerConnection.scanFile(),同时收到其完成通知?

java - 媒体扫描仪连接未更新

android - 无法在android中构建caffe

javascript - 如何使用手机指纹传感器作为生物识别(指纹)扫描仪

java - 通话/连接到 Android 上的安全元素小程序 micro sd?

java - 错误 : Android/Sdk/build-tools/21. 0.2/aapt.exe 以非零退出值 42 完成