94 lines
2.9 KiB
C#
94 lines
2.9 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.Android;
|
|
|
|
public class PXR_PermissionRequest : MonoBehaviour
|
|
{
|
|
public bool requestMR=false;
|
|
|
|
|
|
private List<string> _permissions = new List<string>();
|
|
private const string _permissionMr = "com.picovr.permission.SPATIAL_DATA";
|
|
|
|
private void Awake()
|
|
{
|
|
if (requestMR)
|
|
{
|
|
_permissions.Add(_permissionMr);
|
|
}
|
|
RequestUserPermissionAll();
|
|
|
|
}
|
|
|
|
// Update is called once per frame
|
|
void Update()
|
|
{
|
|
|
|
}
|
|
|
|
public void RequestUserPermissionAll()
|
|
{
|
|
var callbacks = new PermissionCallbacks();
|
|
callbacks.PermissionDenied += PermissionCallbacks_PermissionDenied;
|
|
callbacks.PermissionGranted += PermissionCallbacks_PermissionGranted;
|
|
callbacks.PermissionDeniedAndDontAskAgain += PermissionCallbacks_PermissionDeniedAndDontAskAgain;
|
|
Debug.Log("HHHH Permission.Camera Request");
|
|
Permission.RequestUserPermissions(_permissions.ToArray(), callbacks);
|
|
}
|
|
|
|
internal void PermissionCallbacks_PermissionDeniedAndDontAskAgain(string permissionName)
|
|
{
|
|
Debug.Log($"HHHH {permissionName} PermissionDeniedAndDontAskAgain");
|
|
}
|
|
|
|
internal void PermissionCallbacks_PermissionGranted(string permissionName)
|
|
{
|
|
Debug.Log($"HHHH {permissionName} PermissionCallbacks_PermissionGranted");
|
|
}
|
|
|
|
internal void PermissionCallbacks_PermissionDenied(string permissionName)
|
|
{
|
|
Debug.Log($"HHHH {permissionName} PermissionCallbacks_PermissionDenied");
|
|
}
|
|
|
|
|
|
public static void RequestUserPermissionMR(Action<string> _PermissionDenied=null,Action<string> _PermissionGranted=null,Action<string> _PermissionDeniedAndDontAskAgain=null)
|
|
{
|
|
if (Permission.HasUserAuthorizedPermission(_permissionMr))
|
|
{
|
|
if (_PermissionGranted != null)
|
|
{
|
|
_PermissionGranted(_permissionMr);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
var callbacks = new PermissionCallbacks();
|
|
callbacks.PermissionDenied += _PermissionDenied;
|
|
callbacks.PermissionGranted += _PermissionGranted;
|
|
callbacks.PermissionDeniedAndDontAskAgain += _PermissionDeniedAndDontAskAgain;
|
|
Permission.RequestUserPermission(_permissionMr,callbacks);
|
|
}
|
|
}
|
|
|
|
public static void RequestUserPermissionMR(Action<string> _PermissionGranted)
|
|
{
|
|
if (Permission.HasUserAuthorizedPermission(_permissionMr))
|
|
{
|
|
if (_PermissionGranted != null)
|
|
{
|
|
_PermissionGranted(_permissionMr);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
var callbacks = new PermissionCallbacks();
|
|
callbacks.PermissionGranted += _PermissionGranted;
|
|
Permission.RequestUserPermission(_permissionMr,callbacks);
|
|
}
|
|
}
|
|
|
|
}
|