You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-08 12:40:44 +00:00
Android Editor: Auto create nomedia file to hide project files in media apps
This commit is contained in:
@@ -1068,6 +1068,19 @@ void EditorFileSystem::scan() {
|
|||||||
// to be loaded to continue the scan and reimportations.
|
// to be loaded to continue the scan and reimportations.
|
||||||
if (first_scan) {
|
if (first_scan) {
|
||||||
_first_scan_filesystem();
|
_first_scan_filesystem();
|
||||||
|
#ifdef ANDROID_ENABLED
|
||||||
|
const String nomedia_file_path = ProjectSettings::get_singleton()->get_resource_path().path_join(".nomedia");
|
||||||
|
if (!FileAccess::exists(nomedia_file_path)) {
|
||||||
|
// Create a .nomedia file to hide assets from media apps on Android.
|
||||||
|
Ref<FileAccess> f = FileAccess::open(nomedia_file_path, FileAccess::WRITE);
|
||||||
|
if (f.is_null()) {
|
||||||
|
// .nomedia isn't so critical.
|
||||||
|
ERR_PRINT("Couldn't create .nomedia in project path.");
|
||||||
|
} else {
|
||||||
|
f->close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
_update_extensions();
|
_update_extensions();
|
||||||
|
|||||||
@@ -725,6 +725,17 @@ void ProjectDialog::ok_pressed() {
|
|||||||
|
|
||||||
hide();
|
hide();
|
||||||
if (mode == MODE_NEW || mode == MODE_IMPORT || mode == MODE_INSTALL) {
|
if (mode == MODE_NEW || mode == MODE_IMPORT || mode == MODE_INSTALL) {
|
||||||
|
#ifdef ANDROID_ENABLED
|
||||||
|
// Create a .nomedia file to hide assets from media apps on Android.
|
||||||
|
const String nomedia_file_path = path.path_join(".nomedia");
|
||||||
|
Ref<FileAccess> f2 = FileAccess::open(nomedia_file_path, FileAccess::WRITE);
|
||||||
|
if (f2.is_null()) {
|
||||||
|
// .nomedia isn't so critical.
|
||||||
|
ERR_PRINT("Couldn't create .nomedia in project path.");
|
||||||
|
} else {
|
||||||
|
f2->close();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
emit_signal(SNAME("project_created"), path, edit_check_box->is_pressed());
|
emit_signal(SNAME("project_created"), path, edit_check_box->is_pressed());
|
||||||
} else if (mode == MODE_RENAME) {
|
} else if (mode == MODE_RENAME) {
|
||||||
emit_signal(SNAME("projects_updated"));
|
emit_signal(SNAME("projects_updated"));
|
||||||
|
|||||||
Reference in New Issue
Block a user