発生している問題・エラーメッセージ
Xamarin.iOSのプロジェクト上で、アプリ起動後のViewController表示時に位置情報及びカメラの利用確認を行います。
想定では
「位置情報使用確認アラート」表示→「カメラ使用確認アラート」表示
の順で確認が行われると考えていましたが
実際には
「カメラ使用確認アラート」が一瞬見える→「位置情報使用確認アラート」表示→「カメラ使用確認アラート」表示
と、カメラのアラートが不自然に先に表示されてしまいます。
また、位置情報の利用確認処理とカメラの利用確認処理を前後入れ替えて実行した際も、何故かアラートの表示される順番は変わりありませんでした。
アラートが一瞬重なってしまうことを回避することはできないのでしょうか
C#
1// in ViewController 2 3 public override void ViewDidLoad() 4 { 5 base.ViewDidLoad(); 6 7 if (CLLocationManager.Status != CLAuthorizationStatus.AuthorizedWhenInUse) 8 { 9 // 位置情報の取得確認アラートを表示する。 10 new CLLocationManager().RequestWhenInUseAuthorization(); 11 } 12 13 if (AVCaptureDevice.GetAuthorizationStatus(AVMediaType.Video) != AVAuthorizationStatus.Authorized) 14 { 15 // カメラ(動画)の使用許可確認アラートを表示する。 16 AVCaptureDevice.RequestAccessForMediaType(AVMediaType.Video, (bool granted) => { 17 // アラートの選択内容に関わらず、何もしない 18 }); 19 } 20 }
補足情報(FW/ツールのバージョンなど)
Win
Visual Studio 2017 15.9.6
Xamarin.iOS and Xamarin.Mac 12.2.1.12
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/02/05 08:22