diff --git a/loader/include/Geode/utils/permission.hpp b/loader/include/Geode/utils/permission.hpp index 33201619..4d99c51b 100644 --- a/loader/include/Geode/utils/permission.hpp +++ b/loader/include/Geode/utils/permission.hpp @@ -6,9 +6,10 @@ namespace geode::utils::permission { enum class Permission { - ReadAudio, - ReadImages, - ReadVideo, + ReadAudio [[deprecated("This permission is Android 13+ specific! Use ReadFiles instead.")]], + ReadImages [[deprecated("This permission is Android 13+ specific! Use ReadFiles instead.")]], + ReadVideo [[deprecated("This permission is Android 13+ specific! Use ReadFiles instead.")]], + ReadAllFiles, RecordAudio, }; diff --git a/loader/src/platform/android/util.cpp b/loader/src/platform/android/util.cpp index 6b21e2ee..005374da 100644 --- a/loader/src/platform/android/util.cpp +++ b/loader/src/platform/android/util.cpp @@ -311,13 +311,16 @@ void geode::utils::game::restart() { static const char* permissionToName(Permission permission) { #define PERM(x) "android.permission." x +#define INTERNAL_PERM(x) "geode.permission_internal." x switch (permission) { case Permission::ReadAudio: return PERM("READ_MEDIA_AUDIO"); case Permission::ReadImages: return PERM("READ_MEDIA_IMAGES"); case Permission::ReadVideo: return PERM("READ_MEDIA_VIDEO"); case Permission::RecordAudio: return PERM("RECORD_AUDIO"); + case Permission::ReadAllFiles: return INTERNAL_PERM("MANAGE_ALL_FILES"); } #undef PERM +#undef INTERNAL_PERM } bool geode::utils::permission::getPermissionStatus(Permission permission) {