最近 flutter 小记

94 阅读2分钟

1.安卓获取相册权限问题,拒绝后到应用设置打开权限返回仍然是denied:一直以为是版本太低,整半天是.xml里面文件没配置好,服了前人留下的坑。。

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="29" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />
<uses-permission android:name="android.permission.READ_MEDIA_VISUAL_USER_SELECTED" />

2.极光推送偶现问题

3.版本太低后续有时间升级并兼容版本‘

4.iOS- TestFlight如何打包上传并区分两个环境,即在Xcode里面配置两个环境文件(Target?)

5.相机比例拍照,拼接图片功能

ios相关

  1. 注册自己的apple id,让团队给权限,在官网登录developer.apple查看testflight.
  2. xcode应该打开runner.xcworkspacedata,而不是.pbxproj
  3. 先在as中pub get,不行就先clean或者删掉.lock文件再试,然后pod install,不行就删掉.lock再试。
  4. android中as可以在build.gradle中配置flavor实现不同环境运行,但其实可以直接配置两个入口文件。
  5. ios上传Testflight,1-可以在xcode中的product-Archive-..-upload.2-可以自行命令行打包,然后拉到Transporter上传
  6. 上架是在apple_store_connect中在Testflight中创建版本填写信息后提交审核

版本更新version和code

  1. 就是.yaml文件中 version:1.0.0+xx。加号前面是version,加号后面是code,一般根据这两个判断是否需要版本更新弹窗。

google play 数据安全表单填写

  1. 一般很多第三方库都会有相关权限涉及,所以需要填写
  2. 选择会收集数据,大概填写会加密数据,没有主动删除数据,收集哪些数据等等,
  3. 后续每一项默认选收集(不分享),不临时处理,可选开启与否(某些例如设备id必选),功能大都选第一个,以实际app为主

ios中pub get异常

  • vpn正常,但就是打不开pub.dev,其他网站正常打开,pub get 显示cathe之类的信息
  • 使用多个方法可参考:
  • 清除缓存、手动删除.lock文件
  1. export PUB_HOST_URL=pub.flutter-io.cn(由于我的mac没权限,不能管理员打开终端)
  2. git config ==global http.proxy http://127.0.0.1:7890
  3. vpn开启全局代理
  4. 手动输入flutter pub get命令

sqlite 添加缓存异常

holyshit fuck ```

static final String createSampleAudio = ''' CREATE TABLE IF NOT EXISTS $SAMPLEAUDIOTABLE ( id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE, sampleAudioJson TEXT ); ''';

不小心在括号前的一个变量,即最后一个变量加了逗号!!!!,不能加逗号!!

最近换了Mac设备(M2),pod install报错(# Error Regarding undefined method `map' for nil:NilClass for Flutter App / CocoaPod Error

解决办法:参考视频www.youtube.com/watch?v=uZD… 把里面latest改为3.3.3 参考我的步骤:

  1. brew install ruby-install chruby
  2. (配置环境变量)
  3. ruby-install 3.3.3
  4. chruby 3.3.3
  5. sudo gem install cocoapods
  6. ruby --version
  7. pod install