android framework 系列(二)Launcher3编译

上一篇文章把android整体源码编译好,并导入到了AS中。 为了能够方便对Launcher3进行开发调试,这篇写一下将Launcher3 项目单独进行编译的过程。

  1. 首先clone下来它的源码
    git clone [https://android.googlesource.com/platform/packages/apps/Launcher3]

  2. 切换分支到自己想要的版本
    git checkout android-10.0.0_r20

  3. 导入项目到AS中

这个时候控制台会报这个错
ERROR: Failed to find Platform SDK with path: platforms;android-Q
配置一下sdk

image.png

修改protos目录下launcher_dump.proto
option java_package = "com.android.launcher3.model";
修改为:
option java_package = "com.android.launcher3.model.nano";

此处修改为了保证引用的import com.android.launcher3.model.nano.LauncherDumpProto的地方,能够找到LauncherDumpProto类。

这时候还可能会报下面的错误
Directory '/Users/project/app/build/extracted-include-protos/main' specified for property '$3' does not exist.
解决方案为把protobuf-gradle-plugin 版本更新到 0.8.8

classpath'com.google.protobuf:protobuf-gradle-plugin:0.8.8'

如果有其他protobuf问题可参看protobuf-gradle-plugin github

接下来运行launcher工程到我们对应版本虚拟机即可。

参考资料

1.protobuf-gradle-plugin
2.Launcher3导入Android Studio
3.Android launcher3 开发初始篇

你可能感兴趣的:(android framework 系列(二)Launcher3编译)