diff options
| author | marynate | 2014-05-25 11:34:51 +0800 |
|---|---|---|
| committer | marynate | 2014-05-25 14:50:54 +0800 |
| commit | e6c1689b69e9e0ec530902b550c9e1e2d1cd0aae (patch) | |
| tree | ec9350bef9fc1c0bf6bedd73cc5768115dd6efec /platform/android/dir_access_jandroid.cpp | |
| parent | 71355aaab7eca64bec694918c6b911a412ad17f0 (diff) | |
| download | godot-e6c1689b69e9e0ec530902b550c9e1e2d1cd0aae.tar.gz godot-e6c1689b69e9e0ec530902b550c9e1e2d1cd0aae.tar.zst godot-e6c1689b69e9e0ec530902b550c9e1e2d1cd0aae.zip | |
Diffstat (limited to 'platform/android/dir_access_jandroid.cpp')
| -rw-r--r-- | platform/android/dir_access_jandroid.cpp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/platform/android/dir_access_jandroid.cpp b/platform/android/dir_access_jandroid.cpp index 0c8a5785f..f32e16e7d 100644 --- a/platform/android/dir_access_jandroid.cpp +++ b/platform/android/dir_access_jandroid.cpp @@ -179,6 +179,32 @@ bool DirAccessJAndroid::file_exists(String p_file){ return exists; } +bool DirAccessJAndroid::dir_exists(String p_dir) { + + JNIEnv *env = ThreadAndroid::get_env(); + + String sd; + if (current_dir=="") + sd=p_dir; + else + sd=current_dir+"/"+p_dir; + + String path=fix_path(sd).simplify_path(); + if (path.begins_with("/")) + path=path.substr(1,path.length()); + else if (path.begins_with("res://")) + path=path.substr(6,path.length()); + + jstring js = env->NewStringUTF(path.utf8().get_data()); + int res = env->CallIntMethod(io,_dir_open,js); + if (res<=0) + return false; + + env->CallVoidMethod(io,_dir_close,res); + env->DeleteLocalRef(js); + + return true; +} Error DirAccessJAndroid::make_dir(String p_dir){ |
