在windows下面编译使用NDK,不是一个容易的事情,但是在ndk-r8后,似乎方便了很多。具体方法如下:
从事眉山服务器托管,服务器租用,云主机,网页空间,申请域名,CDN,网络代维等服务。
1. 下载安装android ndk,解压到一个目录,***是比较简单的英文路径,防止各种坑。然后将ndk加入到路径中。比如
set path=%paht%;H:\gp\Android\android-ndk-r9
set path=%path%;H:\gp\Android\android-studio\sdk\platform-tools
这两句话就是把ndk-build和adb命令加入到cmd的命令环境中,方便后面的使用。如果常用,建议加入到环境变量path中
2. 编写相关代码
注意,需要在项目目录下面建立一个jni目录,在jni目录下建立文件。
target.c
- #include
- int flag = 1;
- int count = 0;
- int main()
- {
- char* str = "abcdef";
- while(flag)
- {
- printf("Target is running:%d\n", count);
- count++;
- sleep(3);
- }
- return 0;
- }
Android.mk
- LOCAL_PATH := $(call my-dir)
- include $(CLEAR_VARS)
- LOCAL_MODULE := target
- LOCAL_SRC_FILES := target.c
- include $(BUILD_EXECUTABLE)
代码很简单,就是一个循环打印语句。值得注意的是Android.mk,根据需要修改LOCAL_XXX的名字就可以了,如果有多个文件,添加到SRC_FILES后面就可以了
在jni目录运行命令
ndk-build
- "Compile thumb : target <= target.c
- Executable : target
- Install : target => libs/armeabi/target
会在项目目录的libs/armeabi目录下面生产目标代码
下面的操作方法是将target上传到调试机器上,我一般使用机器,因为模拟器太慢了,折磨人。你的机器需要设置为usb development,并且需要有root权限,否则,只能在模拟器中测试。
adb remount
adb push target /data/local/tmp
adb shell
su
cd /data/local/tmp
chmod 751 target
./target
- root@android:/data/local/tmp # ./target
- ./target
- Target is running:0
- Target is running:1
- Target is running:2
- Target is running:3
- Target is running:4
- Target is running:5
需要注意的地方是android下面busybox的chmod u+x target不能工作,只能用751这种数字方式来设置程序的可运行。
希望你好运,能够运行一个helloword的ndk程序
分享题目:NDK编写Android终端helloworld
浏览地址:http://www.gawzjz.com/qtweb/news33/206333.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联