• 星辰大海
    2019-04-30
    哈哈,shwen哥,重写arsc文件我们在matrix里其实已经实现了,借你的文章广告下。

    作者回复: 牛逼

     3
     13
  • Danny _Jiang
    2019-06-12
    Matrix中的UnusedAssetTask也有一定的缺陷,因为只是调用DexFileFactory.loadDexFile加载dex文件,所以只会去搜索java文件中的引用。
     如果在assets目录下有一个.json文件,此.json文件中记录assets文件夹中的其它图片路径,然后在java代码中通过AssetManager读取这个json文件之后,循环遍历出它所引用的图片,对于这种方式Matrix是检测不到的,会将它置为unused.
    想问一下作者,对于这种情况有什么好的建议优化matrix吗

    作者回复: 对于xml是有做处理的,json这个属于特殊情况,只能放到白名单里面了

    
     1
  • 功夫熊猫
    2019-02-27
    极限压缩这部分说的更高效率的压缩是指压缩的什么,最后APK的压缩算法?如果是那么系统安装如何解压?还是说优化了现有的zip算法?

    作者回复: 依然是zip算法,只是优化了字典

    
     1
  • Tony
    2019-12-09
    绍文大师,我看完了你写的这篇文章,但是有个疑问,直接删除无用资源文件的话,java代码或者kotlin代码中资源引用例如0x73c8745为什么会错乱或找不到呢,虽然资源ID是顺序分配的,但是并不会影响java代码中的引用把?对这个不是很理解啊

    作者回复: 删除的无用代码都是没有Java引用的,你看起来有Java引用,可能是因为那些Java代码被proguard了

    
    
  • joker°
    2019-05-08
    请问 shrinkResources 输入的无用文件相关代码在哪里看呢?实测无用 drawable 文件会压缩为一个内容仅为“<x/>”文件,但是无用 layout 文件并无任何改动

    作者回复: 指的是源码吗?源码可以看build-system里面

    
    
  • Carlo
    2019-03-25
    有没有一个好的,通用的linter或者真正的resourceshirk 工具?

    作者回复: 现在专栏完结了,真正的无用资源删除等我有空实现一下

    
    
  • 奚岩
    2019-02-23
    Lint 只能静态分析 ,但是有些动态生成的就没法识别,比如我了 kotlin-android-extensions, 有些 id 使用了,但是 Lint 却不知道,有没有什么工具可以 分析编译后 代码?

    有个插件 statistics 可以统计代码。

    作者回复: shrinkresource看的就是java字节码

    
    
  • 张晴天天天天天☁️☁...
    2019-02-20
    老师您好,我从网上了解到shrinkResources=true时可能会导致一些应用崩溃的问题,那还要去使用它吗?

    作者回复: 是因为没有排除某些会使用的文件,需要加白名单

    
    
  • Egos
    2019-02-15
    所有资源文件合成一个大文件,是一个zip?

    作者回复: 不是,是一个自定义的二进制文件

    
    
我们在线,来聊聊吧