android8.1.0中launcher3开发(1)

launcher3开发一般分两种方式,一种是从0开始,一种是在launcher3源码的基础上进行修改,下面说的是在原有的基础上进行修改,我是在8.1.0的基础上修改的,个版本之间差异可能较大,其他版本不做过多说明,下载地址:https://android.googlesource.com/platform/packages/apps/Launcher3/+/refs/tags/android-8.1.0_r78。

下载下来的压缩包解压后,使用android studio打开时要按照打开eclipse项目的方式打开,打开后项目中的gradle文件夹下的相关版本会按照我们本地环境最高版本来进行设置的,但是这个版本和build.gradle文件中的Gradle的版本并不匹配,所以会编译失败,失败后首先修改gradle文件夹下版本与build文件中的版本相匹配,如:https\://services.gradle.org/distributions/gradle-3.3-all.zip,build文件中的配置如:

dependencies {
        classpath "com.android.tools.build:gradle:2.3.3"
        classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.2'
    }

(如果提示NDK的某一设备型号不支持,那么更改NDK的版本就行了)

修改后在进行编译,这次可能还是会停止,不过不是错误,是提示需要安装相关26版本的环境(我的这样提示的)或者是更新build文件里如上图中的版本为目前本地最新版本,我选择了第一种方式,这样就不需要修改相关编译的gradle版本,避免不必要的错误,安装成功后在进行编译会进入一个漫长的相关依赖库的下载的过程(一个多小时),结果又出现了了如下错误:

android8.1.0中launcher3开发(1)_第1张图片

左侧有五个相关错误,都是右边的非常相似,处理方式首先点击最上面这条,然后更改如下操作:

final String SUPPORT_LIBS_VERSION = '26.0.0-SNAPSHOT'

修改为:

final String SUPPORT_LIBS_VERSION = '26.0.0'

经过上述修改之后在编译的时候会提示某些类找不到,某些常量也找不到,这个时候要注意因为我们针对的是8.1.0系统,所以所有26版本号都要修改成27,重新编译后就可以编译成功了。

你可能感兴趣的:(launcher3)