private void SetDelegatesAndCallbacks()
 {
     locationDelegate        = LocationCallback;
     aVAuthorizationDelegate = AVCallback;
     CocoaHelpersBridge.SetLocationAuthorizationCallback(LocationAuthCallback);
     CocoaHelpersBridge.SetCameraAuthorizationCallback(AVAuthCallback);
 }
Example #2
0
    public bool CheckLocationPermissions()
    {
        bool permissionsGranted = false;

#if UNITY_ANDROID
        permissionsGranted = Permission.HasUserAuthorizedPermission(Permission.FineLocation);
#elif UNITY_IOS
        CLAuthorizationStatus locationAuthorizationStatus = CocoaHelpersBridge.GetLocationAuthorizationStatus();
        permissionsGranted = (locationAuthorizationStatus == CLAuthorizationStatus.AuthorizedAlways || locationAuthorizationStatus == CLAuthorizationStatus.AuthorizedWhenInUse);
#endif
        Log.debug($"Location Permission : {permissionsGranted}");
        return(permissionsGranted);
    }
    public void RequestPermissions()
    {
        SetDelegatesAndCallbacks();
        DebugLog($"Location Permission {locationAuthorizationStatus}");
        switch (locationAuthorizationStatus)
        {
        case CLAuthorizationStatus.NotDetermined:
            DebugLog("Requesting Permissions Location");
            CocoaHelpersBridge.RequestAuthorizationStatusLocation();
            return;

        case CLAuthorizationStatus.Denied:
            ShowPermissionsNeededPanel();
            return;

        default:
            break;
        }

        DebugLog("Requesting Permissions Camera");


        DebugLog($"Camera Permission {avAuthorizationStatus}");
        switch (avAuthorizationStatus)
        {
        case AVAuthorizationStatus.NotDetermined:
            DebugLog("Requesting Permissions Camera");
            CocoaHelpersBridge.RequestAuthorizationStatusCamera();
            return;

        case AVAuthorizationStatus.Denied:
            ShowPermissionsNeededPanel();
            return;

        default:
            break;
        }
        CheckPermissions();
    }
 public void OpenSettings()
 {
     CocoaHelpersBridge.OpenAppSettings();
 }