美文网首页
一个引入问题导致的对android studio编译顺序的思考

一个引入问题导致的对android studio编译顺序的思考

作者: 努力深耕Android的小透明 | 来源:发表于2018-01-11 09:23 被阅读263次

        最近App项目中需要接入本公司的一个广告sdk,涉及到闪屏页广告的露出.因为已经把闪屏页,登录注册抽取了公共账户模块,所以需要在该模块中接入sdk,按照规定接入后,发现出现了闪退的问题:

    01-11 09:09:23.976 8796-9217/com.phicomm.envmonitor E/AndroidRuntime: FATAL EXCEPTION: Thread-20830
    Process: com.phicomm.envmonitor, PID: 8796
    java.lang.NoSuchMethodError: No virtual method load(Ljava/lang/String;)Lcom/bumptech/glide/DrawableTypeRequest; in class Lcom/bumptech/glide/RequestManager; or its super classes (declaration of 'com.bumptech.glide.RequestManager' appears in /data/app/com.phicomm.envmonitor-1/split_lib_dependencies_apk.apk)
    at com.phicomm.adplatform.startPage.StartPage$7.run(StartPage.java:283)
    at java.lang.Thread.run(Thread.java:818)​

       以上问题的主要意思是Glide找不到对应的方法,查阅了整个项目中引入Glide的地方,发现App模块中使用的Glide版本是4.1.1(较新),account library中使用的Glide版本是3.7.0(较老,为引入广告sdk导入),于是打开了报错处查看方法使用的Glide版本,发现是4.1.1,不是account模块中的3.7.0
       点击状态栏的project structure,查看项目结构后才恍然大悟,原来编译顺序是先app模块,再account模块,所以导致Glide的版本仍是4.1.1,广告sdk需要的3.7.0的方法找不到.

       解决方法是将app中Glide版本换为3.7.0,闪退问题就迎刃而解~


    project_structure.png 项目结构.png

    相关文章

      网友评论

          本文标题:一个引入问题导致的对android studio编译顺序的思考

          本文链接:https://www.haomeiwen.com/subject/kbdbnxtx.html