/// <summary>
        /// This method allows you to <a href="https://developer.apple.com/documentation/apptrackingtransparency/attrackingmanager/3547037-requesttrackingauthorization">request the user permission dialogue</a>.
        /// </summary>
        public static void RequestAuthorizationTracking(RequestAuthorizationTrackingCompleteHandler callback)
        {
#if UNITY_IOS
            if (Application.platform != RuntimePlatform.IPhonePlayer)
            {
                return;
            }
            if (_requestAuthorizationTrackingCompleteCallback != null)
            {
                throw new InvalidOperationException("App tracking transparency request is already triggered and awaiting completion");
            }
            _requestAuthorizationTrackingCompleteCallback = callback;

            InterfaceTrackingAuthorizationRequest(AppTransparencyTrackingRequestCompleted);
#endif
        }
 public static void AppTransparencyTrackingRequestCompleted(int status)
 {
     _requestAuthorizationTrackingCompleteCallback?.Invoke(status);
     _requestAuthorizationTrackingCompleteCallback = null;
 }
 [DllImport("__Internal")] private static extern void InterfaceTrackingAuthorizationRequest(RequestAuthorizationTrackingCompleteHandler callback);