我下载了android源代码并在框架中做了几处更改并添加了一些新方法。现在我正在尝试开发一个应用程序来测试新的更改,我正在使用eclipse并指向原始的sdk(包含在android sdk-eclipse包中的那个),如何更改项目的设置以使其查看新建的来源?
答案 0 :(得分:2)
问题在于,eclipse并不知道你对自己的个人构建做了什么。为了让eclipse识别出这些变化,你需要在aosp SDK之前加载你的OWN框架jar。
构建AOSP时,它应该在这里生成一个文件:
out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes-full-debug.jar
这是一个包含aosp生成的所有方法的jar文件,包括标记为@hide的方法。在项目的构建路径中包含它,在Order and Export下,确保首先加载它。
有一个excellent guide详细说明了android.jar(sdk)如何工作的内部和隐藏部分,以及如何为项目加载不同的jar。如果您不想使用我上面描述的方法将其从aosp树中的out目录中拉出来,您也可以将其从设备中删除,以确保您使用的是您的应用程序可用的确切类。设备。从第2部分开始:
adb pull /system/framework/framework.jar
但是如果没有关于你正在改变什么的额外信息,我不能提供比这更多的建议。如果您阅读整个指南,它将解释为什么如果您对内部进行了更改,您仍然无法在没有额外工作的情况下让eclipse识别这些更改。
答案 1 :(得分:0)
转到:
Eclipse中的Window -> Preferences -> Android and browse to the SDK folder.
然后将您的清单更改为:
<uses-sdk android:minSdkVersion="19"
android:targetSdkVersion="19"
android:maxSdkVersion="19" />
如果你正确保护任何新的api呼叫,你可以降低你的minSdk
答案 2 :(得分:-1)
我不是专家,但我认为你可能需要使用像ant,maven或gradle这样的东西,而不是仅仅使用eclipse。