Flutter 遇到的问题整理

Flutter 遇到的问题整理

1. Provisioning profile “iOS Team Provisioning Profile: x x x x” doesn’t include the currently selected device “iPhone” (identifier b6b9a3d3c6bdea4812394a6c24f6572625c46300).

解决方案

用Xcode 重新编译一下

2.安卓Plugin project :ur_launcher web not found. Please update settings.gradle.

解决方案

查看android/gradle/wrapper/gradle-wrapper.properties
distributionUrl gradle 版本是否正确
然后flutter clear 并且删除 pubspec.lock
重新 flutter pub get

3.安卓一直报没有网络权限pipe ‘gemud:network’: Invalid argument Permission denied

qemu_pipe_open_ns:62: Could not  connect  to the  'pipe: gemud:network' service:
Invalid argument
08-04 16:22:14.190 - netmar Failed to open OEMU pipe 'gemud:network': Invalid argument
08-0416:99:39.880E andro1d.system.suspend@1.0-service: Error opening kernel wakelock stats for: wakeup34: Permission denied
08-04 16:22:39 W Binder: 212 2: tvpe=1400 audit(0.0:602): avc: denied { read } for name="wakeup34" dev="svsfs' ino=19159 sco ntext=u:r:system_suspend:s0 tcontext=u:object_r:systs:s0 tclass=dlr permissive=l

但是下面的权限都已经添加

<!--AndroidManifest.xml-->
<uses-permission android:name="android.permission.INTERNET"/>
<application
        .....
       android:networkSecurityConfig="@xml/network_security_config"
        >
....
<--res/xml/network_security_config.xml -->
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config cleartextTrafficPermitted="true">
        <trust-anchors>
            <certificates src="system" />
        </trust-anchors>
    </base-config>
</network-security-config>

解决方案

修改AndroidManifest.xml 权限位置
把权限都放到下面

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.yyy">
  
   <application
        android:label="yyy"
        android:name="${applicationName}"
        android:icon="@mipmap/ic_launcher"
       android:usesCleartextTraffic="true"
       android:networkSecurityConfig="@xml/network_security_config"
        >
      。。。。
    </application>
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <!-- 网络权限 -->
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
    <!-- 开启读写storage权限 -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    <!-- 开启指纹权限 -->
    <uses-permission android:name="android.permission.USE_FINGERPRINT"/>
</manifest>


3.安卓状态栏阴影去除

解决方案

1./android/app/src/main/kotlin/com/example/xxx/MainActivity.kt

package com.example.yyy

import io.flutter.embedding.android.FlutterActivity
//引入
import android.os.Build;
import android.os.Bundle;

class MainActivity: FlutterActivity() {
  //设置状态栏沉浸式透明(修改flutter状态栏黑色半透明为全透明)
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            window.statusBarColor = 0
        }
    }
}

  1. 入口文件main.dart
main() async {
   。。。。
    runApp(const MyApp());
    SystemUiOverlayStyle uiStyle = const SystemUiOverlayStyle(
      systemNavigationBarColor: Color(0x00000000),
      systemNavigationBarDividerColor: null,
      statusBarColor: Color(0x00000000),
      systemNavigationBarIconBrightness: Brightness.dark,
      statusBarIconBrightness: Brightness.dark,
      statusBarBrightness: Brightness.dark,
    );
    SystemChrome.setSystemUIOverlayStyle(uiStyle);
 
}

4.Flutter 输入框Textfiled设置内容后,让光标cursor位置处于文字末尾.

controller.text = 'xxxx';
controller.selection = TextSelection.fromPosition(TextPosition(offset: controller.text.length));


5.Dart Analysis Server client: couldn’t create connection to server.The Dart Analysis Server server crashed 5 times in the last 3 minutes. The server will not be restarted.

问题: 不小心更新了vscode 导致一直Analysis…;而且错误提示不显示,代码提示加载中。。。

解决方案:

1.Deleting ~/.dartServer/.analysis-driver/ might be worth a try.
2. 重启vscode
参考:https://stackoverflow.com/questions/64500143/dart-analysis-server-has-terminated

6.flutter 报错 Command PhaseScriptExecution failed with a nonzero exit code

解决方案:

我犯的错误:检查配置文件中 flutter root 是否错误(注:改完后要清理一下重新下载包文件)

7. Xcode 升级到15 ios17 flutter 报错

1)SDK does not contain ‘libarclite’ at the path ‘/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/ lib/arc/libarclite_iphonesimulator.a’; try increasing the minimum deployment target

解决方案:

在该路径(/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/
lib/)下看看是否有arc, 如果没有可以从未升级的xcode14.x 同一路径下拷贝
注:网上有说可以https://github.com/kamyarelyasi/Libarclite-Files 这个里面下载(未尝试)

2).Assertion failed: (false && “compact unwind compressed function offset doesn’t fit in 24 bits”), function operator(), file Layout.cpp, line 5758 linker command failed with exit code 1 (use -v to see invocation)

解决方案

在 Project->target->Build Settings->Other linker Flags 路径下,添加 -ld64
在这里插入图片描述

3)/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator17.0.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKWebsiteDataStore.h:120:47 type argument ‘nw_proxy_config_t’ (aka ‘struct nw_proxy_config *’) is neither an Objective-C object nor a block type

解决方案

1.选中不能编译的库的xcodeproj,在Build Phrases -> Compile Sources,选中所有文件,逐一在Complier Flags 里删除 -DOS_OBJECT_USE_OBJC=0。
如图:

在这里插入图片描述
2.可以参考https://blog.csdn.net/crasowas/article/details/133190660?spm=1001.2014.3001.5501 最后一种做法

4)/Users/…/GeneratedPluginRegistrant.m:12:9: Module ‘xxx’ not found

解决方案

首先确保:
首先打开 runner.xcworkspace 而不是 .xcodeproj

5) Archive 时出现一个错误 PhaseScriptExecution [CP]\ Embed\ Pods\ Frameworks /Users/liangjing/Library/Developer/Xcode/DerivedData/Runner-clopejndrqqiaedzrpapnytjcrnb/Build/Intermediates.noindex/ArchiveIntermediates/Runner/…Command PhaseScriptExecution failed with a nonzero exit code

在这里插入图片描述

解决方案

 source="$(readlink "${source}")"改为source="$(readlink -f "${source}")"  

在这里插入图片描述

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值