mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-07-11 01:25:07 +02:00
Add some plumbing for the Android 17 local network access permission
This commit is contained in:
+24
-10
@@ -1246,6 +1246,9 @@ void System_AskForPermission(SystemPermission permission) {
|
||||
case SYSTEM_PERMISSION_STORAGE:
|
||||
PushCommand("ask_permission", "storage");
|
||||
break;
|
||||
case SYSTEM_PERMISSION_LOCAL_NETWORK:
|
||||
PushCommand("ask_permission", "local_network");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1450,18 +1453,29 @@ extern "C" void JNICALL Java_org_ppsspp_ppsspp_NativeApp_sendMessageFromJava(JNI
|
||||
if (msg == "moga") {
|
||||
mogaVersion = prm;
|
||||
} else if (msg == "permission_pending") {
|
||||
INFO_LOG(Log::System, "STORAGE PERMISSION: PENDING");
|
||||
// TODO: Add support for other permissions
|
||||
permissions[SYSTEM_PERMISSION_STORAGE] = PERMISSION_STATUS_PENDING;
|
||||
// Don't need to send along, nothing else is listening.
|
||||
if (prm == "storage") {
|
||||
INFO_LOG(Log::System, "STORAGE PERMISSION: PENDING");
|
||||
permissions[SYSTEM_PERMISSION_STORAGE] = PERMISSION_STATUS_PENDING;
|
||||
} else if (prm == "local_network") {
|
||||
INFO_LOG(Log::System, "LOCAL NETWORK PERMISSION: PENDING");
|
||||
permissions[SYSTEM_PERMISSION_LOCAL_NETWORK] = PERMISSION_STATUS_PENDING;
|
||||
}
|
||||
} else if (msg == "permission_denied") {
|
||||
INFO_LOG(Log::System, "STORAGE PERMISSION: DENIED");
|
||||
permissions[SYSTEM_PERMISSION_STORAGE] = PERMISSION_STATUS_DENIED;
|
||||
// Don't need to send along, nothing else is listening.
|
||||
if (prm == "storage") {
|
||||
INFO_LOG(Log::System, "STORAGE PERMISSION: DENIED");
|
||||
permissions[SYSTEM_PERMISSION_STORAGE] = PERMISSION_STATUS_DENIED;
|
||||
} else if (prm == "local_network") {
|
||||
INFO_LOG(Log::System, "LOCAL NETWORK PERMISSION: DENIED");
|
||||
permissions[SYSTEM_PERMISSION_LOCAL_NETWORK] = PERMISSION_STATUS_DENIED;
|
||||
}
|
||||
} else if (msg == "permission_granted") {
|
||||
INFO_LOG(Log::System, "STORAGE PERMISSION: GRANTED");
|
||||
permissions[SYSTEM_PERMISSION_STORAGE] = PERMISSION_STATUS_GRANTED;
|
||||
// Send along.
|
||||
if (prm == "storage") {
|
||||
INFO_LOG(Log::System, "STORAGE PERMISSION: GRANTED");
|
||||
permissions[SYSTEM_PERMISSION_STORAGE] = PERMISSION_STATUS_GRANTED;
|
||||
} else if (prm == "local_network") {
|
||||
INFO_LOG(Log::System, "LOCAL NETWORK PERMISSION: GRANTED");
|
||||
permissions[SYSTEM_PERMISSION_LOCAL_NETWORK] = PERMISSION_STATUS_GRANTED;
|
||||
}
|
||||
System_PostUIMessage(UIMessage::PERMISSION_GRANTED, prm);
|
||||
} else if (msg == "sustained_perf_supported") {
|
||||
sustainedPerfSupported = true;
|
||||
|
||||
Reference in New Issue
Block a user