如何使用Android源代码编译Helloworld

时间:2010-09-12 02:58:02

标签: android android-source

我想用AOSP运行helloworld应用程序并在模拟器中查看它。 [不通过Android SDK设置]

我按照http://source.android.com/source/download.html中的步骤进行操作 并成功编译了/ directory中的完整代码。

我可以看到contacts.apk,camera.apk所有应用程序apk in 〜/ mydroid /输出/目标/产品/通用/系统/应用程序。

我尝试了两件事。

1 - 转到/ package / apps文件夹。拿了一个helloworld应用程序(helloworld文件夹,它是在android-sdk中创建的),并从Launcher2文件夹中复制了一个'Android.mk'文件,保留了我的应用程序新名称,并将该文件夹放在packages / app文件夹中并编译为/。      我看不到为〜/ mydroid / out / target / product / generic / system / app创建的.apk文件。

2 - 我在'Android,mk'文件的packages / app文件夹中更改了Launcher2的软件包名称,并在root用户编译。我无法在新的打包名称下看到新的apk      〜/ mydroid /出/目标/产品/通用/系统/应用程序。

我尝试了多次更改活动名称,manifest.xml文件中的应用程序名称。没有什么能反映出来。但是可以肯定的是,helloworld和包名的变化都会在编译时被拾取。我可以看到中间类被创建了。 〜/ mydroid / out / target / common / obj / APPS / manifirst_intermediates / src / com / android / mani - >明确就像一个我创造和运行的helloworld。 〜/ mydroid / out / target / common / obj / APPS / Launcher2_intermediates / src / com / android / launcher

有没有人可以分享在AOSP中编写一个简单的Helloworld程序的步骤。

谢谢, 摩尼

1 个答案:

答案 0 :(得分:6)

从任何其他软件包复制Android.mk,只需更改LOCAL_PACKAGE_NAME并使其与软件包/应用程序中的文件夹名称匹配。

另外,在/build/target/product/core.mk的列表中添加您的包

编译完成后,你应该找到你期望的apk ...(out / target / product /.../ system / app)