美文网首页
android老项目运行的辛酸泪:No resource ide

android老项目运行的辛酸泪:No resource ide

作者: sunny635533 | 来源:发表于2020-08-21 14:34 被阅读0次

    公司有个好几年的老项目,子模块是一直维护更新的。这个项目我一直没机会碰,昨天开始下载下来弄,发现各种错。现在记录下遇到的几个错:

    1、glide库版本冲突,主项目的glide和用到的第三方的glide版本不一致。最重要的是glide库在老版本(我猜测是从4.10.0前)用的是support包,后面都升级用了androidx。刚开始看到项目的库有androidx的jar引用,找了半天没找到那里用了。后面问下大神才知道如何查找各种依赖库关系。有两种方法:

    第一种,在项目目录下运行:./gradlew app:dependencies

    第二种,如图点击运行:

    可以非常方便看到哪个库用到androidx!!

    2、当然就是support包版本的冲突

    我在主项目app目录的build.gradle文件的android大括号里添加appCompact包强制统一的版本使用,如图:

    configurations.all{

        resolutionStrategy.eachDependency{ details->

            def requested = details.requested

    // requested.group == 'com.android.support:recyclerview-v7'

            if (requested.group =='com.android.support') {

    if (!requested.name.startsWith("multidex")) {

    //这里写你想统一的版本是多少,前提是你sdk里有

                    details.useVersion'28.0.0'

                }

    }

    }

    }

    以为到了这步就可以运行起来,发现一直报这个错:No resource identifier found for attribute 'appComponentFactory' in package 'android',不关androidx问题,还是support冲突问题。

    上网查了资料,始终没头绪,后面想起来之前遇到过类似的问题。解决方法就是app项目的build.gradle的compileSdkVersion、targetSdkVersion、buildToolsVersion这些相关的版本号需要和com.android.support:appcompat-v7:28.0.0的一致,也就是需要把他们改成 28 的版本号。

    最后完美运行起来了!

    相关文章

      网友评论

          本文标题:android老项目运行的辛酸泪:No resource ide

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