在ubuntu下开发,免不了配置eclipse,尤其ndk。目前在开发中需要让生成的apk带有系统签名, 且能调试。eclipse下如何安装adt这里不提。
首先点开Window->Preferences->Android->NDK,NDK Location选上下载好的ndk, 如图:
添加完后,右键点击工程名,选择Android Tools->Add Native Support并填入如下值:如图所示
然后在工程目录下会多出一个jni目录来。
接下来点击菜单中的Run->External Tools->External Tools Configurations, 填入如图所示的内容:
这样在run->External Toosls下会出现1 Generate C and C++ Header File, 先选中java源文件,再选择这个选项,就会在jni目录下生成jni头文件。
如果需要调试c++文件,右键点击工程名选择Properties->C/C++ Build, Build Type下Build Command 中填入ndk-build NDK_DEBUG=1。如果调试的ndk代码需要system权限。那么还需要用 android 源码目录build/target/product/security/下的platform key来生成keystore.
首先在 https://github.com/getfatday/keytool-importkeypair 下载源码,然后使用命令keytool-importkeypair -k debug.keystore -p android -pk8 platform.pk8 -cert platform.x509.pem -alias androiddebugkey 来生成debug key, 注意-p 后的密码必须是android, -alias后的别名必须是androiddebugkey, 否则在eclipse下设置key的时候会分别报以下错误: Keystore was tampered with, or password was incorrect和Unable to find debug key in keystore!错误,此时,点run, 生成的签名就可以以system权限运行了,当然,前提是在工程中的AndroidMainefest.xml有system权限请求。