博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
将packages/apps/下的app导入eclipse
阅读量:2456 次
发布时间:2019-05-11

本文共 1271 字,大约阅读时间需要 4 分钟。

当刚接触android自带的一个模块时,如何去熟悉它?相信不少人第一步都会尝试着去了解其内容的调用流程,而此时若能够单步调试则显得非常重要了,于是有了文章标题所说的尝试。

作者这里要导入的是Settings文件夹,基于android 4.0(MTK6515所用):

1、将Settings整个文件夹拷贝一份备用

2、基于Settings建立一个eclipse工程

打开eclipse,File > New > Project > Android Project > Create project from existing source,选择第1步所拷贝的Settings文件夹。

3、导入部分framework library

执行完第2步会出现很多诸如"com.android.internal.R cannot be resolved"的错误,这主要是由于framework部分资源找不到,这时我们可以手动添加,当然前提是你要用整个工程的代码且已经编译。

在eclipse中右键工程名Settings,选择 Build Path > Configure Build Path > Libraries > Add External JARS,然后选择以下路径的jars:

1)out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar

--这个主要是android的框架类

2)out/target/common/obj/JAVA_LIBRARIES/android-common_intermediates/classes.jar

--这个包含com.android.common.Search这个类

3)out/target/common/obj/JAVA_LIBRARIES/core_intermediates/classes.jar

--这个包包含dalvik.system.VMRuntime这个类

4)out/target/common/obj/JAVA_LIBRARIES/mediatek-framework_intermediates/classes.jar

--这个主要是mediatek的框架类

这样基本上就能解决大部分framework资源找不到的问题

  • ps 这里也可将上述classes.jar重命名后复制到某一文件夹后统一导入

4、导入app自身

如这里导入:

out/target/common/obj/APPS/Settings_intermediates/classes.jar

5、去除uid

打开 AndroidManifest.xml,找到 android:sharedUserId并去除之:

android:sharedUserId="android.uid.system"

否则在运行时会提示如下错误:

INSTALL_FAILED_SHARED_USER_INCOMPATIBLE

参考资料:

from:

转载地址:http://lashb.baihongyu.com/

你可能感兴趣的文章
霍夫曼算法_霍夫曼编码算法
查看>>
python pytz模块_python pytz
查看>>
Python字符串拆分
查看>>
Python字符串join()方法
查看>>
python 原始字符串_Python原始字符串
查看>>
comptia a+_CompTIA认证考试– A +,Network + Security +,CASP,Linux +和IT基础实践测试和网站
查看>>
Python字符串包含
查看>>
python等待用户输入_Python等待时间,等待用户输入
查看>>
python 字符串模板_Python字符串模板
查看>>
Android Realm数据库
查看>>
python 字符串 变量_Python检查变量是字符串
查看>>
python字符串 切片_Python切片字符串
查看>>
python 捕获多个异常_Python捕获多个异常
查看>>
sirikit_iOS 12 Siri捷径SiriKit
查看>>
Python字符串转换为大写字母– str.upper()
查看>>
Python字符串比较
查看>>
python摆锤_Python摆锤模块
查看>>
python cmath_Python复数– cmath
查看>>
Python字符串格式()
查看>>
Python字符串转换为小写字母– str.lower()
查看>>