小编kmt*_*mtz的帖子

SystemChrome.setSystemUIOverlayStyle 不适用于 iO

通过运行此代码,我在 Android 和 iO 上得到了 2 个不同的结果。对于 Android 来说,一切都按预期工作,但对于 iO 来说,它会被忽略。我没有收到任何错误或类似的错误。

class MyMaterialApp extends StatefulWidget {
  const MyMaterialApp({Key key}) : super(key: key);

  @override
  _MyMaterialAppState createState() => _MyMaterialAppState();
}

class _MyMaterialAppState extends State<MyMaterialApp> {
  @override
  Widget build(BuildContext context) {
    SystemChrome.setSystemUIOverlayStyle(const SystemUiOverlayStyle(
      statusBarColor: Colors.blue,
      statusBarIconBrightness: Brightness.dark,
      systemNavigationBarColor: Colors.blue,
      systemNavigationBarIconBrightness: Brightness.dark,
    ));
    return MaterialApp()
}
}
Run Code Online (Sandbox Code Playgroud)

iPhone 11模拟器: iPhone 11模拟器

三星 s10e 设备: 三星 s10e 设备

有谁知道为什么会发生这种情况?谢谢!

android ios flutter flutter-layout

6
推荐指数
0
解决办法
1366
查看次数

java.io.FileNotFoundException: open failed: EACCES (Permission denied) 在真实的 Android 设备上

我的目标是从 API 服务器下载文件(在本例中为 pdf 文件),然后我想加载该 pdf 并将其显示在 UI 上。我正在使用flutter_pdfview并且我正在遵循本教程如何实现它。首先,权限:在我的android/app/build.gradle targetSdkVersion是 29 以及compileSdkVersion. 在android/app/main/AndroidManifest.xml我下面写的<application ... android:requestLegacyExternalStorage="true"> ,我在同一个文件夹中添加了这些权限。

<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
Run Code Online (Sandbox Code Playgroud)

获取请求:

<uses-permission android:name="android.permission.INTERNET"/> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
Run Code Online (Sandbox Code Playgroud)

使用选项 1,我在内部存储中找到了 pdf 文件,但它仍然给我一个错误。像那个人那样使用选项 2,我在设备上的任何地方都找不到它。此外,我已在手机中手动授予存储访问权限,但这也无济于事。

Future<File> getFile(String id) async {
    _isLoading = true;
    notifyListeners();
    var headers = {
      'Authorization': 'JWT ${_authenticatedUser.token}',
      'Content-Type': 'application/x-www-form-urlencoded',
      'Accept': 'application/json',
    };
    try {
      final http.Response response = await http.get(
          'api-host/pdf',
          headers: headers);
      var bytes = …
Run Code Online (Sandbox Code Playgroud)

pdfview android-permissions flutter

5
推荐指数
1
解决办法
1220
查看次数