package com.fujica.abk.utils; import com.fujica.abk.api.config; import ohos.app.Context; import ohos.security.SystemPermission; public class PermissionManager { public static final int Common = 0; public static final int Request_Location = 1; static boolean canLocation = false; public static boolean requestLocation(Context context) { if (config.isDebug) { return true; } if (context.verifySelfPermission(SystemPermission.LOCATION) != -1) { canLocation = true; return false; } String[] permissions = {SystemPermission.LOCATION}; context.requestPermissionsFromUser(permissions, Request_Location); return true; } public static void updateLocation(String[] permissions, int[] grantResults) { if (permissions != null && grantResults != null) { for (int i = 0; i < permissions.length; i++) { if (SystemPermission.LOCATION.equalsIgnoreCase(permissions[i])) { if (grantResults.length > i) { canLocation = grantResults[i] != -1; } else { canLocation = false; } break; } } } } }