Android超出方法数量限制问题

以前Java基础的时候,写JavaBean类都是有快捷键自动生成的,我们只需要定义好成员变量字段,剩下的构造方法、getXxx()方法,setXxx()方法,都可以自动生成。格式如下:

public class TrackOrderBean {

    private boolean success;
    private String  driverId;
    private String  licensePlat;
    private String  dispatchOrderId;
    private int     interval;
    private List<?> errors;

    public boolean isSuccess() {
        return success;
    }

    public void setSuccess(boolean success) {
        this.success = success;
    }

    public String getDriverId() {
        return driverId;
    }

    public void setDriverId(String driverId) {
        this.driverId = driverId;
    }

    public String getLicensePlat() {
        return licensePlat;
    }

    public void setLicensePlat(String licensePlat) {
        this.licensePlat = licensePlat;
    }

    public String getDispatchOrderId() {
        return dispatchOrderId;
    }

    public void setDispatchOrderId(String dispatchOrderId) {
        this.dispatchOrderId = dispatchOrderId;
    }

    public int getInterval() {
        return interval;
    }

    public void setInterval(int interval) {
        this.interval = interval;
    }

    public List<?> getErrors() {
        return errors;
    }

    public void setErrors(List<?> errors) {
        this.errors = errors;
    }
}

但是在Android里面,我们可能会看到一些老程序员会这样写JavaBean类:

public class TrackOrderBean {

    public boolean success;
    public String  driverId;
    public String  licensePlat;
    public String  dispatchOrderId;
    public int     interval;
    public List<?> errors;
    
}

因为成员变量声明是public,我们可以直接引用它,不需要getXxx()和setXxx()方法。这样做是为了避免方法数量超过限制的问题。因为Android中的方法数量不能超过65535,如果超过了,你可能会遇到一些意想不到的Bug。比如,我就遇到了Build APK失败的问题。

  • 先选择Build APK

    图片.png

  • 然后Android Studio就会报错

    图片.png

最开始,我以为是代码里有错误所以导致这个问题,但是检查了代码没有发现Bug。之后我又怀疑可能是清单文件或者build.gradle文件里面的配置有误,通通排查了一遍也没有发现问题。
后来终于找到了,因为是项目中所有的方法数量超过65535导致的。解决的方法就是,在build.gradle文件中,添加如下代码:

dexOptions{
        jumboMode true
    }

解决方法很简单,但是发现这个问题很难,我也是卡了很久才发现的。这样的话,我们用Android studio写JavaBean类也可以用快捷键Alt + Insert来自动生成。不用再担心方法数量超出限制的问题了。

希望能帮到你。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,123评论 25 709
  • 这一章主要针对项目中可以用到的一些实用功能来介绍Android Gradle,比如如何隐藏我们的证书文件,降低风险...
    acc8226阅读 12,307评论 3 25
  • (一)学生的写作 前几天读到一句话:只有写,才会写。出自于巴金先生之口。对这句话现在我深有体会。 由于每天坚持写日...
    绿水无忧春风拂面阅读 1,697评论 0 0

友情链接更多精彩内容