最新公告
  • 欢迎您光临学IT那点事,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • 小码哥Flutter从入门到实战|Flutter从入门到企业级应用项目实战教程

    小码哥Flutter从入门到实战|Flutter从入门到企业级应用项目实战教程 最后编辑:2023-11-24
    会员服务: 网盘下载 自动提取 学习指导 环境配置二次开发BUG修复

    课程说明

    分析flutter应用很依赖反编译工具转储的dart文件中的信息,可以在开发flutter的过程中开启混淆,能有效防止静态分析。

    重命名变量、函数和类名。

    删除不必要的空白字符、注释和换行符。

    优化代码结构,例如内联函数、删除未使用的代码和资源等。

    对控制流进行混淆,例如添加冗余代码、修改循环结构等。

    二、实现混淆

    2.1.混淆Dart代码

    要对Dart代码进行混淆,请使用以下命令构建Release版本:

    其中<output_directory>是用于存储混淆映射文件的目录。这些文件可用于还原混淆后的堆栈跟踪。
    Flutter应用混淆
    Flutter应用的混淆非常简单,只需要在构建release版应用时结合使用–obfuscate 和–split-debug-info这两个参数即可。
    –obfuscate –split-debug-info用来指定输出调试文件的位置,该命令会生成一个符号映射表。目前支持apk,appbundle,ios和ios-framework等目标平台(macOS和aar在master和dev分支中支持),如下所示:
    混淆成功后,需要保存符号映射表,以便以后需要去混淆跟踪代码堆栈。
    相关命令的其他信息,可以运行flutter build apk -h查看,如果不支持该命令,核实Flutter版本,执行flutter upgrade更新。
    Flutter分析包的大小
    2.2.混淆Android原生代码
    要对Android原生代码进行混淆,请在android/app/build.gradle文件中启用ProGuard或R8。在buildTypes配置中,为release类型添加
    此外,确保在proguard-rules.pro文件中添加必要的混淆规则,例如保留与MethodChannel相关的原生代码:
    三、优化应用程序包体积
    3.1.移除未使用的资源
    移除项目中未使用的资源(如图片、字体和动画),以减小应用程序的包体积。在Android项目中,可以使用shrinkResources选项来移除未使用的资源:
    3.2.压缩图片资源
    压缩项目中的图片资源,以降低它们的文件大小。可以使用像TinyPNG或ImageOptim这样的工具来压缩图片资源。
    四、提高反编译难度
    4.1.混淆字符串
    为了提高反编译的难度,可以在编译阶段处理掉明文字符串。一个方法是使用字符串混淆库,如string_obfuscator。在编译阶段,此库会自动混淆字符串,并在运行时解混淆。
    要使用string_obfuscator库,请在pubspec.yaml文件中添加依赖,然后在需要混淆字符串的Dart文件中引入string_obfuscator库。使用obfuscate()函数混淆字符串。
    五、常见问题与解决方案
    以下是一些在混淆和优化Flutter应用程序过程中可能遇到的常见问题及其解决方案:
    Flutter与原生平台通信失效:请确保在proguard-rules.pro文件中添加与MethodChannel相关的原生代码保留规则。
    保留JSON对应的Java Bean对象:在proguard-rules.pro文件中保留与JSON相关的Java Bean对象,使用-keep指令来保留这些类。
    隐藏明文字符串:使用字符串混淆库,如string_obfuscator,在编译阶段对字符串进行混淆,并在运行时解混淆。
    六、总结
    保护Flutter应用程序的代码和数据安全是移动应用程序开发中的一个重要方面。通过混淆、优化和保护应用程序,您可以提高应用程序的安全性和隐私。请记住,在实施这些技术时始终关注可能遇到的问题,并及时寻找解决方案。

    在Flutter刚出来的这几年,经常会在各种跨平台框架对比的文章下,看到将其与uni-app进行比较。当时我也没有在意太多,以为uni-app也是个差不多的“正经”跨平台框架,但当我打开uni-app官网的时候,我震惊了,因为我看到了这样一句话:一套代码编到15个平台,这不是梦想。我瞬间就傻眼了,这么nb?Flutter不也才横跨六大平台 ?在仔细一想,不对啊,这哪来的15个平台?再仔细一看,然后我的心中只剩下一万个省略号了,横跨一堆小程序平台是吧…

    课程部分内容

    小码哥Flutter/
    │flutter/
    ││├─01初识flutter和环境搭建.mp4
    ││├─02 Dart语法精讲-基础语法.mp4
    ││├─03 Dart语法精讲.mp4
    ││├─04-hello flutter 案例分析.mp4
    ││├─05-statelessWidget.mp4
    ││├─06-(1)基础Widget.mp4
    ││├─06-(2)基础Widget.mp4
    ││├─07-(1)布局 widget.mp4
    ││├─07-(2)后半部分重录.mp4
    ││├─08滚动widget-listview gridview slivers.mp4
    ││├─09-高清-阶段案例-豆瓣案例01.mp4
    ││├─10 阶段案例 豆瓣02.mp4
    ││├─11路由 导航 事件处理.mp4
    ││├─12-动画网络请求封装.mp4
    ││├─13状态管理.mp4
    ││├─14项目实战01.mp4
    ││├─15 项目实战02.mp4
    ││├─16项目实战03.mp4
    ││├─17主题 国际化 测试.mp4
    ││├─18 编译模式的区分 原理.mp4
    ││├─19 dart和原生代码交互 引入flutter工厂.mp4
    ││├─20 项目打包和发布.mp4
    ││├─21 flutter实战技巧1.mp4
    ││├─22-flutter实践技巧2 .mp4
    ││├─23-Flutter实战技巧三.mp4
    ││├─Flutter资料day01~23.zip

    猜你在找

    1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
    2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
    3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
    4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
    5. 如有链接无法下载、失效或广告,请联系管理员处理!
    6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
    7. 如遇到加密压缩包,默认解压密码为"www.xitnds.com"或“xitnds.com”,如遇到无法解压的请联系管理员!
    学IT那点事 » 小码哥Flutter从入门到实战|Flutter从入门到企业级应用项目实战教程

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    本站所有资源会进行单独保存,如果下载链接失效可以联系管理员进行修正!!下载的文件打不开,也可百度或联系管理员,比如有些视频格式需要特殊的播放器待
    学IT那点事下载免费吗?
    本站原则上是免费下载的,但不是无条件开放,本站以分享币下进行分享下载,可以免费获取分享币,获取途径:1.每天进行签到;2.推广本站资源;3.发布高质量相关资源;4.当然你也可以直接扫码赞助购买,也可以一次性加入永久VIP!
    • 2023-11-24Hi,初次和大家见面了,请多关照!

    售后服务:

    • 下载须知 1、站内收录的教程与资源均是不加密的资源,收集整理进行分享,其版权归原作者及其网站所有。
      2、本站仅为资源分享的平台,站内资源仅供学习研究所用,不得用于商业用途,不对所造成的后果负责。
      3、本站教程仅供本站会员学习参考,不得传播及用于其他用途,学习完后请在24小时内自行删除。
      付费须知 1、本站原则上不收取任何费用,所有资源可免费获取,积分获取途径
      2、如自扫码等支付,纯属自愿支持本站建设,所有费用都用于网站服务器/域名/CDS加速等用途。
      3、开通终身VIP者,本站保证开通之日起五年以上(使用不到五年者,无条件按时间比例退还)。
      4、如本站如经营受阻,会提前告知用户,并退还剩于款项(已经用于本站建设的费用扣除后按比例退还)。
      售后服务时间 周一至周日(法定节假日除外) 9:00-23:00
      免责声明 本站所提供的资源(教程/项目/资料)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email: 56928691@qq.com),我们会及时删除,给您带来的不便,我们深表歉意!

    Hi, 如果你对这资料有疑问,可以跟我联系哦!

    联系管理员
    • 13705会员总数(位)
    • 38105资源总数(个)
    • 3本周发布(个)
    • 0 今日发布(个)
    • 1727稳定运行(天)

    提供最优质的资源集合

    赞助本站svip 了解详情
  • © 2008 - 2023 Theme by - 学IT那点事 . All rights reserved 湘ICP备2022013417号

  • XML地图 | 站长导航
    升级SVIP尊享更多特权立即升级