// ========================================================================== // /* protected - [Override & Unity API] */ /* protected - [abstract & virtual] */ // ========================================================================== // #region Private static IEnumerator RequsetPermission_Coroutine(EPermissionName ePermissionName, System.Action <bool> OnResult_HasPermission) { yield return(new WaitForEndOfFrame()); Permission.RequestUserPermission(g_mapPermission.GetValue_OrDefault(ePermissionName)); yield return(new WaitForSeconds(0.2f)); yield return(new WaitUntil(() => Application.isFocused == true)); OnResult_HasPermission?.Invoke(Check_HasPermission(ePermissionName)); }
public static void RequestUserPermission_Coroutine(MonoBehaviour pCoroutineExecuter, EPermissionName ePermissionName, System.Action <bool> OnResult_HasPermission = null) { #if UNITY_EDITOR OnResult_HasPermission?.Invoke(true); #else pCoroutineExecuter.StartCoroutine(RequsetPermission_Coroutine(ePermissionName, OnResult_HasPermission)); #endif }
// ========================================================================== // /* public - [Do~Something] Function */ public static bool Check_HasPermission(EPermissionName ePermissionName) { return(Permission.HasUserAuthorizedPermission(g_mapPermission.GetValue_OrDefault(ePermissionName))); }