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 for OpenHarmony:mockito 单元测试的替身演员,轻松模拟复杂依赖(测试驱动开发必备) 深度解析与鸿蒙适配指南
服务器·驱动开发·安全·flutter·华为·单元测试·harmonyos
念格5 小时前
Flutter 弹窗 UI 不刷新?用 StatefulBuilder 解决
flutter
程序员老刘6 小时前
2026春招Flutter岗位为何变少?我看到的3个招聘逻辑变化
flutter·ai编程·客户端
念格7 小时前
Flutter 实现点击任意位置收起键盘的最佳实践
flutter
念格7 小时前
Flutter ListView Physics 滚动物理效果详解
flutter
国医中兴7 小时前
ClickHouse的数据模型设计:从理论到实践
flutter·harmonyos·鸿蒙·openharmony
国医中兴10 小时前
ClickHouse数据导入导出最佳实践:从性能到可靠性
flutter·harmonyos·鸿蒙·openharmony
国医中兴11 小时前
大数据处理的性能优化技巧:从理论到实践
flutter·harmonyos·鸿蒙·openharmony
●VON12 小时前
Flutter 入门指南:从基础组件到状态管理核心机制
前端·学习·flutter·von
西西学代码12 小时前
Flutter---SingleChildScrollView
前端·javascript·flutter