StartTangoPermissionsActivity() public static method

Start the Tango permissions activity, requesting that permission.
public static StartTangoPermissionsActivity ( string permissionsType ) : void
permissionsType string String for the permission to request.
return void
Example #1
0
        /// <summary>
        /// Request next permission.
        /// </summary>
        private void _RequestNextPermission()
        {
            Debug.Log("TangoApplication._RequestNextPermission()");

            // if no permissions are needed let's kick-off the Tango connect
            if (m_requiredPermissions == PermissionsTypes.NONE)
            {
                _SendPermissionEvent(true);
            }

            if ((m_requiredPermissions & PermissionsTypes.MOTION_TRACKING) == PermissionsTypes.MOTION_TRACKING)
            {
                if (AndroidHelper.ApplicationHasTangoPermissions(Common.TANGO_MOTION_TRACKING_PERMISSIONS))
                {
                    _androidOnActivityResult(Common.TANGO_MOTION_TRACKING_PERMISSIONS_REQUEST_CODE, -1, null);
                }
                else
                {
                    AndroidHelper.StartTangoPermissionsActivity(Common.TANGO_MOTION_TRACKING_PERMISSIONS);
                }
            }
            else if ((m_requiredPermissions & PermissionsTypes.AREA_LEARNING) == PermissionsTypes.AREA_LEARNING)
            {
                if (AndroidHelper.ApplicationHasTangoPermissions(Common.TANGO_ADF_LOAD_SAVE_PERMISSIONS))
                {
                    _androidOnActivityResult(Common.TANGO_ADF_LOAD_SAVE_PERMISSIONS_REQUEST_CODE, -1, null);
                }
                else
                {
                    AndroidHelper.StartTangoPermissionsActivity(Common.TANGO_ADF_LOAD_SAVE_PERMISSIONS);
                }
            }
        }
Example #2
0
        /// <summary>
        /// Request permissions for Unity functionality.
        /// </summary>
        /// <returns><c>true</c>, if request permissions was _ed, <c>false</c> otherwise.</returns>
        /// <param name="permissionType">Permission type.</param>
        private IEnumerator _RequestPermissions(string permissionType)
        {
            //#if !UNITY_EDITOR && UNITY_ANDROID
            // verify
            string syncFile = "data/data/" + AndroidHelper.GetCurrentPackageName() + "/files/activity_result";
            string result   = string.Empty;

            yield return(StartCoroutine(_Delete(syncFile)));

            Debug.Log("Launching permission requester for : " + permissionType);

            // request
            AndroidHelper.StartTangoPermissionsActivity(permissionType);

            while (!File.Exists(syncFile))
            {
                // sit and spin while waiting for the permissions intent to
                // steal focus from Unity. Once the intent returns this text
                // file will exist.
                yield return(null);
            }

            try
            {
                StreamReader streamReader = new StreamReader(syncFile);
                result = streamReader.ReadLine();
                streamReader.Close();
            }
            catch (System.IO.FileNotFoundException e)
            {
                Debug.Log(CLASS_NAME + "._RequestPermissions : File Not Found: " + e.Message);
            }

            if (string.IsNullOrEmpty(result) == false)
            {
                if (result != "RESULT_OK")
                {
                    m_anyPermissionDenied = true;
                }
            }

            yield return(StartCoroutine(_Delete(syncFile)));

            //#endif

            yield return(null);
        }
Example #3
0
        /// <summary>
        /// Request permissions for Unity functionality.
        /// </summary>
        /// <returns><c>true</c>, if request permissions was _ed, <c>false</c> otherwise.</returns>
        /// <param name="permissionType">Permission type.</param>
        private bool _RequestPermissions(string permissionType)
        {
#if !UNITY_EDITOR && UNITY_ANDROID
            // verify
            string syncFile = "data/data/" + AndroidHelper.GetCurrentPackageName() + "/files/activity_result";
            string result   = string.Empty;
            _BlockingDelete(syncFile);

            // request
            AndroidHelper.StartTangoPermissionsActivity(permissionType);

            while (!File.Exists(syncFile))
            {
                // sit and spin while waiting for the permissions intent to
                // steal focus from Unity. Once the intent returns this text
                // file will exist.
            }

            try
            {
                StreamReader streamReader = new StreamReader(syncFile);
                result = streamReader.ReadLine();
                streamReader.Close();
            }
            catch (System.IO.FileNotFoundException e)
            {
                Debug.Log(CLASS_NAME + "._RequestPermissions : File Not Found: " + e.Message);
            }

            if (string.IsNullOrEmpty(result) == false)
            {
                return(result == "RESULT_OK");
            }
            _BlockingDelete(syncFile);
#endif

            return(false);
        }
Example #4
0
 public void StartTangoPermissionsActivity(string permissionType)
 {
     AndroidHelper.StartTangoPermissionsActivity(permissionType);
 }