flutter 环境搭建异常记录

flutter 环境搭建异常记录

1.执行flutter doctor自检报错

排查Android studio里配置的sdk是哪个

SDK Platforms选中 8.0

SDkTools也只勾选8.0

2.bash_profile 文件配置

没有的话 在根目录新建

export PUB_HOSTED_URL=https://pub.flutter-io.cn

export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

export PATH=~/development/flutter/bin:$PATH

export PATH=~/development/flutter/bin/cache/dart-sdk/bin:$PATH

export ANDROID_HOME=~/Library/Android/sdk

export PATH={PATH}:{ANDROID_HOME}/emulator

export PATH={PATH}:{ANDROID_HOME}/tools

export PATH={PATH}:{ANDROID_HOME}/platform-tools

3.全局命令行配置及生效

source ~/.bash_profile

source ~/.zshrc

open ~/.bash_profile

open ~/.zshrc

4.安卓本地的gradle版本存放位置

/Users/zhaoguangliang/.gradle/wrapper/dists

若自动下载太慢 可以使用迅雷手动下载之后放在这里

5.配置 firebase的时候 提示找不到成员变量

需在添加的firebase_core之外 在yaml文件里新增加一个依赖

firebase_core_platform_interface: 4.5.1

然后在android的工程中进行编译 就可以通过了

6.在新电脑上配置Android studio jdk路径位置

/Library/Java/JavaVirtualMachines/jdk1.8.0_251.jdk/Contents/Home

从Mac 复制jdk文件夹到对应的文件夹下

7.在安卓项目出现gradle sync faile的时候 在android sdk 里 第一个列表里的sdk都拉下来,在第二个列表里的commond Line里将第一个最新的编译工具也拉下来

8.报错 Cannot operate on packages inside the cache.

执行 flutter pub cache repair

9.Pod 更新本地仓库

pod install 换成pod install -- verbose -- no - repo - update 这个命令,前面的命令被墙了**,**

pod update 同理

该命令只安装新添加的库,已更新的库忽略

10.上传谷歌商店,打包禁用debug模式,

<!-- android:debuggable="false"-->

放在这里 mainfest文件里

<application

android:label="jetsenshot"

android:name="${applicationName}"

android:icon="@mipmap/ic_launcher"

<!-- android:debuggable="false"-->

>

11.将flutter 项目从电脑A复制到电脑B,后行flutter 清理一下缓存,或者不复制项目文件夹下的build文件夹,只复制其余代码,然后在flutter项目中全局替换

/A用户名/ -> /B用户名/

12.自动配置firebase cli太慢 手动下载

然后执行 chmod +x 文件名 将文件改为可执行的二进制文件

然后将文件放在

/usr/local/bin

路径下 文件名改为firebase

然后在.bash_profile 和 .zshrc文件里增加

export PATH=$PATH:~/opt/bin

然后

执行

source ~/.bash_profile

source ~/.zshrc

然后就可以使用了

13验证app是否签名

Cd /Users/zhao/Library/Android/sdk/build-tools/33.0.0

验证签名 执行jarsigner -verify -verbose -certs <你的APK文件路径>

查看签名信息 keytool -printcert -jarfile <你的APK文件路径>

14.集成Facebook登录 提示

错误提示:

Invalid key hash. The key hash xxxxxxxx does not match any stored key hashes. Configure your app key hashes at https://developers.facebook.com/apps/xxxxx

原因是签名不对,进行如下操作

生成发布密钥散列

Android 应用必须先使用发布密钥进行电子签名,然后才能上传到商店中。如要生成发布密钥散列,请在 Mac 或 Windows 内运行以下命令,并替换您的发布密钥别名和密钥库路径

YOUR_RELEASE_KEY_ALIAS 替换为当前别名

YOUR_RELEASE_KEY_PATH 替换为当前key的路径

keytool -exportcert -alias YOUR_RELEASE_KEY_ALIAS -keystore YOUR_RELEASE_KEY_PATH | openssl sha1 -binary | openssl base64

然后替换掉Facebook里的

集成Facebook登录可以参考的博客

flutter 集成facebook第三方登录完整流程_flutter face登录-CSDN博客

15.授权登录提示 invalid scop:email 添加下面的东西

针对应用程序Android API 30+(Android 11+)不能调用Facebook原生应用程序。请按照https://developers.facebook.com/docs/android/troubleshooting/#faq_267321845055988调整。要解决这个问题,必须在AndroidManifest.xml文件中添加:

<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/facebook_app_id"/>

<meta-data android:name="com.facebook.sdk.ClientToken" android:value="@string/facebook_client_token"/>

原文链接: flutter 集成facebook第三方登录完整流程_flutter face登录-CSDN博客

16 flutter 配置apple账号登录

Flutter如何集成apple、google登陆---超级完整步骤_前端知识库

17.xcode 15 运行模拟器异常

报错

Sandbox: rsync(80361) deny(1) file-write-create

检查:

Check that ENABLE_USER_SCRIPT_SANDBOXING is disabled in the project's build settings.

18 flutter打出来的包在debug 和release模式下 部分结构不显示 经排查是

screenutil 没有在当前页面使用前执行初始化,

执行

ScreenUtil. init (context, designSize: Size(393, 862), allowFontScaling: false);

相关推荐
帅次2 分钟前
Flutter Widget 体系结构解析
android·flutter·ios·小程序·xcode·web app·dalvik
秋月华星8 小时前
【flutter】TextField输入框工具栏文本为英文解决(不用安装插件版本
前端·javascript·flutter
程序员老刘·8 小时前
Flutter开发者 3.29版本关注要点
flutter·跨平台开发·客户端开发
weixin_4607838711 小时前
Flutter解决TabBar顶部页面切换导致页面重载问题
android·javascript·flutter
火柴就是我17 小时前
flutter rust bridge 编译成so 文件 或者 .a文件 依赖到主项目
flutter·ios·rust
pengyu18 小时前
系统化掌握Flutter组件之Transform:空间魔法师
android·flutter·dart
坚果的博客19 小时前
鸿蒙版Flutter快递查询助手
flutter·华为·harmonyos
晴天学长20 小时前
一个多功能的GetX 项目代码生成工具
前端·flutter
蜡笔小新..21 小时前
Windows下配置Flutter移动开发环境以及AndroidStudio安装和模拟机配置
windows·flutter
顾林海1 天前
深入理解 Dart 函数:从基础到高阶应用
android·前端·flutter