继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

2. APK瘦身, 一键删除无用java文件

慕村9548890
关注TA
已关注
手记 1249
粉丝 227
获赞 989
一. 问题描述:

在项目开发中, 由于需求不断的变动, 我们的页面也在不断的变化. 无用的文件也就越来越多, 这样就会加大apk的体积.
情况1: 有时候项目比较赶, 也不知道有些文件有没有用到, 也不敢乱删, 怕出问题, 久而久之无用文件就越来越多了
情况2: 如果你是半路接手人家的项目, 里面本身就有很多无用的文件, 一个一个找也不太现实.

这篇文章主要解决的问题: 如何删除无用的java文件.
想删除res下无效的资源文件, 请查看: 1. 利用Android Studio自带工具 删除res下无用的资源

二. 解决办法
  1. 首先选中你要查找的文件夹(搜索范围), 我这里选的是 项目/app下 , 右键选择Analyze(点上面Analyze按钮的也可以)---Run Inspection byName... 如下图:


    webp

    Analyze .png

  2. 弹出一个搜索框, 我们输入Unused搜索(直接搜索Unused declaration也可以),  选中Unused declaration.  (扩展: 里面还有很多功能, 感兴趣的自己慢慢去搞, 例如: Unused resources就是res下无效资源文件)


    webp

    image.png

  3. 弹出一个选择框, 上面红框的是选择要搜索的文件夹, 下面的红框的意思是:
    classes:public  公共类, 公共类没有被使用的话就会被赛选出来.
    Inner classes:public 内部公共类.
    其它的根据名字基本都能推测出来了.

    根据自己的需要选择即可, 选好以后点击OK


    webp

    select.png

  4. 如下图:  左边Entry Points的表示有用java文件, 下面红框的文件就是无用的java文件, 选中文件(和windows选择文件夹方式一样, 按住shirft或Alt选即可), 然后点击safe delete删除.
    假如有不想删除的java文件, 选中文件,点击Add as Entry Points按钮即可. 下次也不会被搜索出来.

    webp

    image.png


三. 如何判定为无用的java文件

java文件 没有直接或间接被app调用

例如: A 调用 B, B调用C.

  1. 假如A.java没有被app调用, 则 A B C 都会被判定为无用文件;

  2. 假如A.java没有被app调用, B有被APP调用, 则只有A被判定为无用文件;



作者:liys_android
链接:https://www.jianshu.com/p/6672e933e846


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP