Launcher2导入Eclipse

Android  2018年6月13日 pm8:57发布7年前 (2018)更新 城堡大人
83 0 0


在分析源码中,除了使用Source Insight 这个强大的软件外,有些应用还是用编译器看源码是最好的,因此今天我们学习一下如何导入源码到Eclipse中。

这里主要是讲正确把Android 6.0 的Launcher2 导入Eclipse中并运行和安装应用。

工具: Eclipse,Luna Service Release 2 (4.4.2)

JDK:1.7

版本: Android 6.0 

第一步:找到相关的jar

你需要有编译过的源码,这个是前提,因为Launcher2 没有导入其他jar是不能单独执行的。

我们可以看看Launcher项目中Android.mk是怎么写的

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

LOCAL_MODULE_TAGS := optional

LOCAL_STATIC_JAVA_LIBRARIES := android-common android-support-v13

LOCAL_SRC_FILES := $(call all-java-files-under, src) $(call all-renderscript-files-under, src)
LOCAL_SDK_VERSION := current

LOCAL_PACKAGE_NAME := Launcher2
LOCAL_CERTIFICATE := shared
LOCAL_PRIVILEGED_MODULE := true

LOCAL_OVERRIDES_PACKAGES := Home

LOCAL_PROGUARD_FLAG_FILES := proguard.flags

include $(BUILD_PACKAGE)

include $(call all-makefiles-under,$(LOCAL_PATH))

从上面可以看出,我们需要找到“android-common,android-support-v13 ”这两个jar包,因此只要我们找到这两个jar就成功了一半。

如果你有成功编译过Android源码,在out/目录中会有发现你所需要的jar,具体如下:

android-common: /out/target/common/obj/JAVA_LIBRARIES/android-common_intermediates/javalib.jar

ndroid-support-v13: /out/target/common/obj/JAVA_LIBRARIES/android-support-v13_intermediates/javalib.jar

第二步:导入Launcher2

先导入Launcher2代码带Eclipse中,一步一步来,有些信息千万别错过

1.选中Eclipse中的项目Launcher2右键,点击最下面的Proprieties,进入如下界面

Launcher2导入Eclipse

2. 更改Android 6.0 Project Build Target的版本

右键进入Proprieties进入,如上图的第一张,这次我们选择左边选项中的第二个(Android),就会进入 Project Build Target的版本选择页面

选择Target Name 中的Android 6.0 (API Level 23)

为啥要API Level 23,因为Launcher中部分代码使用API23的接口

3. 点击Eclipse中的顶部菜单栏 Project---> Clean 这一步很重要的。【重点】

PS: 如果代码中还是有错误提示,把鼠标放上去看看提示,根据提示执行对应操作。(我这主要提示jdk要求1,7,更换jdk后没有任何错误)

4. 为了让Eclipse运行并直接安装Launcher.apk。

我们需要先删除平板上的Android.apk,删除步骤如下:

进入system/app目录下,执行:rm -r Launcher2   (Launcher2是个目录)

再进入data/data目录下,执行: rm -r com.android.launcher

如果你不删除上的就直接运行安装,会提示安装错误,至于提示信息我就懒得附上了。

我们重新启动平板,开机后运行Eclipse中的Launcher2项目。

 历史上的今天

  1. 2024: 樊小纯:借我(0条评论)
  2. 2024: 郑愁予:归航曲(0条评论)
  3. 2024: 郑愁予:生命(0条评论)
  4. 2024: 洛夫:石榴树(0条评论)
  5. 2023: SQLite的limit用法(0条评论)
版权声明 1、 本站名称: 笔友城堡
2、 本站网址: https://www.biumall.com/
3、 本站部分文章来源于网络,仅供学习与参考,如有侵权,请留言

暂无评论

暂无评论...

随机推荐

席慕容 :盼望

其实,我盼望的,也不过就只是那一瞬。我从没要求过你给我,你的一生。如果能在开满了栀子花的山坡上与你相遇,如果能深深地爱过一次再别离,那么,再长久的一生,不也就只是,就只是,回首时,那短短的一瞬。

林清玄:把时间花在心灵上

朋友带我去看一位收藏家的收藏,据说他收藏的都是顶级的东西,随便拿一件来都是价逾千万。我们穿过一条条的巷子,来到一家不起眼的公寓前面,我心中正自纳闷,顶级的古董怎么会收藏在这种地方呢?收藏家来开门了,连续打开三扇不锈钢门,才走进屋内。室内的灯光非常幽暗,等了几秒钟,我才适应了室内的光线,这时,才赫...

龙应台:目送

华安上小学第一天,我和他手牵着手,穿过好几条街,到维多利亚小学。九月初,家家户户院子里的苹果和梨树都缀满了拳头大小的果子,枝丫因为负重而沉沉下垂,越出了树篱,勾到过路行人的头发。很多很多的孩子,在操场上等候上课的第一声铃响。小小的手,圈在爸爸的、妈妈的手心里,怯怯的眼神,打量着周遭。他们是幼稚园的...

梁实秋:时间即生命

最令人怵目惊心的一件事,是看着钟表上的秒针一下一下的移动,每移动一下就是表示我们的寿命已经缩短了一部分。再看看墙上挂着的可以一张张撕下的日历,每天撕下一张就是表示我们的寿命又缩短了一天。因为时间即生命。没有人不爱惜他的生命,但很少人珍视他的时间。如果想在有生之年做一点什么事,学一点什么学问,充实自己...

林清玄:和时间赛跑

读小学的时候,我的外祖母去世了。外祖母生前最疼爱我。我无法排除自己的忧伤,每天在学校的操场上一圈一圈地跑着,跑得累倒在地上,扑在草坪上痛哭。那哀痛的日子持续了很久,爸爸妈妈也不知道如何安慰我。他们知道与其欺骗我说外祖母睡着了,还不如对我说实话:外祖母永远不会回来了。“什么是永远不会回来了呢?”我问...

java.lang.ClassNotFoundException

在工作中遇到Caused by: java.lang.ClassNotFoundException: Didn’t find class “XXX” on path: DexPathList[[zip file“/data/app/net.sourceforge.simcpux-2.apk”],n...