V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sewer
V2EX  ›  Android

安卓目前 abi 只保留 arm64 应该没多大问题吧

  •  
  •   sewer · 2020-12-29 19:43:53 +08:00 · 5145 次点击
    这是一个创建于 1184 天前的主题,其中的信息可能已经有所发展或是发生改变。
    flutter 打包有点大 带上 armv7 有 20m 不带 16m
    11 条回复    2020-12-30 11:59:29 +08:00
    mxT52CRuqR6o5
        1
    mxT52CRuqR6o5  
       2020-12-29 19:55:38 +08:00 via Android
    不是可以打 split bundle 吗,一个指令集一个包
    sewer
        2
    sewer  
    OP
       2020-12-29 20:08:41 +08:00
    @mxT52CRuqR6o5 是 但是你解包 发现里面还是会有 其他 abi 的 so 还是我姿势不对 flutter build apk --target-platform android-arm64 --no-shrink
    systemcall
        3
    systemcall  
       2020-12-29 22:35:05 +08:00
    一些魔改系统只支持 ARMv7,不支持 64 位软件
    最近见到的:雷鸟 R625c 的系统
    SpicaStar
        4
    SpicaStar  
       2020-12-29 22:51:02 +08:00
    @systemcall TCL 电视,考虑这玩意儿干嘛?
    zhgg0
        5
    zhgg0  
       2020-12-29 23:11:43 +08:00
    如果那些 native 库性能不是重点的话,可以只保留 armv7 的,能兼容 99.99%了。
    john6lq
        6
    john6lq  
       2020-12-29 23:23:16 +08:00 via iPhone
    不是“arm64-v8a”吗?忘记怎么写了
    chenjiajia9411
        7
    chenjiajia9411  
       2020-12-30 09:54:37 +08:00
    如果不同目标包的差距只有 3M 的话,我觉得你的包太大应该不是因为原生库,你可以试试看一些常规的 android 包大小优化措施(代码缩减,三方库裁剪,png 压缩甚至转 webp/svg 等等)。
    sewer
        8
    sewer  
    OP
       2020-12-30 10:20:41 +08:00
    @chenjiajia9411 对主要是 ffmpeg 开启 r8 的话 解压缩功能会 crash, 去找原因成本可能有点大, 如果用 exoplayer 的话 小一点,但是我懒得重新封装 flutter plugin 画 ui
    chenjiajia9411
        9
    chenjiajia9411  
       2020-12-30 10:26:06 +08:00
    @sewer #8 把相关的类和方法 keep 起来不就好了,这里有一个写 proguard-rules.pro 的指南: https://r8-docs.preemptive.com/
    sewer
        10
    sewer  
    OP
       2020-12-30 11:39:28 +08:00
    @chenjiajia9411 规则我都写了 只要开启 r8 就算把混淆关了 也会 crash
    chenjiajia9411
        11
    chenjiajia9411  
       2020-12-30 11:59:29 +08:00
    @sewer #10 可能是类里面用到的内部方法也被混淆了或者你混淆写的有问题,第一种可以在 proguard-rules.pro 里-printmapping map.txt 打印出映射,然后把错误堆栈还原一下看看是不是有哪个类你没有排除混淆,第二种可以用 jadx 打开混淆之后的包查看是不是该排除的类和方法都被排除了,如果有误混淆的就加到 proguard-rules.pro 里去。
    顺便一提,配置文件里不要有-addconfigurationdebugging,不然会出现奇怪的问题,我以前被这个困扰了一整天。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3685 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 10:42 · PVG 18:42 · LAX 03:42 · JFK 06:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.