flutter 做代码混淆

news/2025/5/22 2:46:14/

第一种、手动混淆

修改代码中出现次数多的 类目 方法 。修改静态资源的名字,转静态资源为webp

第二种、使用flutter 自带的命令行工具进行混淆

混淆 Dart 代码 | Flutter 中文文档 - Flutter 中文开发者网站 - Flutter

使用@pragma('vm:entry-point') 装饰器修改方法 忽略方法名字的混淆

@pragma('vm:entry-point')

对于iOS:
在iOS上,Flutter使用了LLVM编译器,它不使用类似于R8的混淆工具。然而,Xcode默认会对符号进行一些形式的混淆或优化。为了防止特定的类被混淆,你可能需要:
禁用Bitcode: 在Xcode项目设置中,找到你的Flutter项目的Build Settings,搜索 Bitcode 并将其设置为 NO。这会保留更易读的符号,但会增加二进制文件大小。
使用自定义符号剔除规则: 如果你的目标是仅防止某些类被剔除,你可能需要更深入地了解Xcode的链接器选项和构建设置,这通常不是Flutter开发者日常操作的一部分。
通常,在Flutter开发中,主要关注的是Android上的代码混淆,因为iOS的构建过程有所不同,且默认的符号处理方式已经足够满足大多数需求。

 执行打包ipa 的命令 会自动生成

flutter build ipa --obfuscate --split-debug-info=./symlinks

 报错 分发证书报错,可以先不管 因为我本地的确没有分发正式,先用开发证书

Encountered error while creating the IPA:
error: exportArchive: No signing certificate "iOS Distribution" found

 打包完成生成下面的路径

Try distributing the app in Xcode: "open /Users/alanyu/Desktop/space_whisper_app/build/ios/archive/Runner.xcarchive"

Runner.xcarchive 双击打开 然后进行xcode的导出ipa包操作

其中正式直接拖进钥匙串 中  , 描述文件enjoy_dev.mobileprovision在 xcode 中导入

第三种:使用IpaGuard

Ipa Guard使用常见问题 | ipaguard使用教程


http://www.ppmy.cn/news/1505070.html

相关文章

vue3项目,应用初始化过程

在 Vue 3 项目中,应用初始化过程涉及多个步骤,从创建 Vue 实例到挂载到 DOM 上。以下是详细的初始化过程,包括关键步骤和代码示例。 1. 创建 Vue 应用实例 首先,你需要使用 ​​createApp​​ 函数创建一个 Vue 应用实例。这个实…

Skywalking9部署的问题

1. skywalking9需要使用es8。不支持es7,这里要注意,需要修改es版本。 2. es8部署的时候,默认是配置了安全选项的,需要把安全配置关掉,或者修改skywalking的配置文件,设置相关配置。 这里偷懒,…

kickstart自动脚本制作

克隆7主机,配置网络 安装图形 yum group install "Server with GUI" -y 有的话直接切换 init 5 关闭 Vmware dhcp 安装图形化生成kickstar自动安装脚本的工具 yum install system-config-kickstart -y 配置http 安装 yum install httpd -y 启动服务…

SAP MM学习笔记 - 豆知识02 - MR21 修改物料原价,MM02 修改基本数量单位/评价Class,MMAM 修改物料类型/评价Class

上一章讲了一些豆知识。比如 - MM50 批量扩张品目 - XK05/06 Block/消除供应商 - MM06/MM16 品目消除 - SE11/SE16/SE16/SE16N/SE16H/DB02 等查看常用的操作Table和数据的T-code SAP MM学习笔记- 豆知识01 - MM50 批量扩张,XK05/XK06 Block/消除供应商&#xf…

【归纳】常见函数模版和解析2(含进制转换详细代码)

【归纳】常见函数模版和解析2,含进制转换详细代码 1.计算阶乘2.斐波那契数列3.进制转换3.1.十进制转n进制3.1.1.迭代法3.1.2.递归法 3.2.n进制转十进制3.3.a进制转b进制3.4.代码整合 1.计算阶乘 阶乘的定义:阶乘符号为!,即 n ! 1 2 3 . . . ( n − …

【链表OJ】常见面试题

学习完链表后,当然还需要实操才行。 文章目录 1.[移除链表元素](https://leetcode.cn/problems/remove-linked-list-elements/description/)1.1 题目要求1.2 迭代法1.3 递归法 2. [反转链表](https://leetcode.cn/problems/reverse-linked-list/description/)2.1 题…

《LeetCode热题100》---<5.①普通数组篇五道>

本篇博客讲解LeetCode热题100道普通数组篇中的五道题 第一道:最大子数组和(中等) 第二道:合并区间(中等) 第一道:最大子数组和(中等) 法一:贪心算法 class So…

共享`pexlinux`数据文件的网络服务

实验环境准备: 1.红帽7主机 2.要全图形安装 3.配置网络为手动,配置网络可用 4.关闭vmware DHCP功能 一、kickstart自动安装脚本制作 1.安装图形化生成kickstart自动脚本安装工具 2.启动图形制作工具 3.图形配置脚本 这里使用的共享方式是http&#xff0…