flutter弹框怎么封装_flutter之版本升级的实现

首先要知道一点,android和ios的升级方式是不同的,ios只能通过跳转appstore或者fir的方式,但是android可以直接下载安装的

这里我用到了腾讯提供的的bugly(这点给bugly点个赞,用过bugly的都知道那边服务一直不怎么样,有问题也很难找到人,但是率先支持flutter还是要给个赞 链接https://pub.flutter-io.cn/packages/flutter_bugly)

第一步:我们有bugly账号的直接去新建产品就好了.然后到产品设置页面,复制app id

出来.初始化的时候要用到

第二步:配置grdle文件 不过我们一般都是arm平台的,我这里只用到了arm,不需要适配太多

 defaultConfig { ndk { //设置支持的SO库架构 abiFilters 'armeabi-v7a'//, 'arm64-v8a', 'x86', 'x86_64' } }

引入插件 dependencies: flutter_bugly: ^0.2.8 然后在程序的入口文件main.dart中初始化

FlutterBugly.init(androidAppId: "your android app id",iOSAppId: "your iOS app id");

ios是热修复的用不到的可以不填的

第三步:

这一步是要重点说一下,因为要是用过android 原生引入bugly升级的都知道,bugly什么都帮你做好了,但是flutter是做不到的.我们要自己去写弹框还有下载安装的逻辑.

@overridevoid initState() { super.initState(); if (mounted && Platform.isAndroid) _checkUpgrade(); if (Platform.isIOS) _checkUpdateIos();}Future _checkUpdateIos() async { var response = await NetUtils.post(context, Api.checkUpdate, params: {'currentVersion': '1111'}); if (response['data'] != null) { var data = response['data']; _showUpdateDialog(data['updateContent'], data['newestVersion'], data['newestVersion'], true); } Logger().log(Level.info, 'response:$response');}void _showUpdateDialog(String versionname, String version, String url, bool isF
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值