首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AppTrackingTransparency权限对话框不显示

AppTrackingTransparency权限对话框不显示
EN

Stack Overflow用户
提问于 2022-11-29 13:50:42
回答 1查看 23关注 0票数 0

我请求使用我的应用程序中的处理程序进行跟踪透明许可:

代码语言:javascript
复制
Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  Map<Permission, PermissionStatus> statuses = await [
    Permission.photosAddOnly,
    Permission.camera,
    Permission.microphone,
    Permission.appTrackingTransparency,
  ].request();
  runApp(const MyApp());
}

appTrackingTransparency对话框外,将显示所有权限对话框。

,为什么它不出现?

颤振医生

代码语言:javascript
复制
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.3.7, on macOS 13.0 22A380 darwin-x64, locale en-IL)
[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 14.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2021.2)
[✓] VS Code (version 1.73.1)
[✓] Connected device (4 available)
[✓] HTTP Host Availability

设备版本:iOS 15.2.1

permission_handler:10.0.0

EN

回答 1

Stack Overflow用户

发布于 2022-11-29 15:12:14

我决定使用透明度。但对话仍然没有出现。

这个职位说,在阅读了有关快速解决方案的文章之后,在对话框之间添加了一个小延迟似乎解决了这个问题。

代码语言:javascript
复制
Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await [
    Permission.photosAddOnly,
    Permission.camera,
    Permission.microphone,
  ].request();

  /// Getting permission for appTrackingTransparency required a delay between prompts.
  if (await AppTrackingTransparency.trackingAuthorizationStatus ==
      TrackingStatus.notDetermined) {
    await Future.delayed(const Duration(seconds: 2));
    await AppTrackingTransparency.requestTrackingAuthorization();
  }

  runApp(const MyApp());
}

注意:我不知道为什么,但它只适用于app_tracking_transparency包,而不适用于permission_handler包。

仍然在寻找一个更好的解决方案,使用permission_handler包,它不会延迟应用程序加载时间。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74615151

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档