4
我有从本机代码获取DCIM目录路径的要求。我使用下面的代码片段:Android上的DCIM目录路径 - 返回值
jclass envClass = env->FindClass("android/os/Environment");
char charParam[] = "Environment.DIRECTORY_DCIM";
jstring jstrParam = env->NewStringUTF(charParam);
jmethodID getExtStorageDirectoryMethod = env->GetStaticMethodID(envClass, "getExternalStoragePublicDirectory", "(Ljava/lang/String;)Ljava/io/File;");
jobject extStorageFile = env->CallStaticObjectMethod(envClass, getExtStorageDirectoryMethod, jstrParam);
jclass fileClass = env->FindClass("java/io/File");
jmethodID getPathMethod = env->GetMethodID(fileClass, "getPath", "()Ljava/lang/String;");
jstring extStoragePath = (jstring)env->CallObjectMethod(extStorageFile, getPathMethod);
const char* extStoragePathString = env->GetStringUTFChars(extStoragePath,NULL);
//use extStoragePathString
LOGI("DCIM_PATH ==================================== %s", extStoragePathString);
但结果总是[PATH_TO_SD_CARD]/Environment.DIRECTORY_DCIM
。我检查了这是几个设备以及模拟器。我在模拟器上创建了DCIM目录。 SD卡路径是正确的。
作为解决方案,我总是可以继续搜索SD卡上的DCIM目录。因为无论如何,在DCIM下,我必须搜索图片的位置。但是,为什么我不能通往DCIM?
牛逼小时ňķY 2 O u!举报 – user2705939