android:android-jni
This is an old revision of the document!
Table of Contents
Android JNI相关
收集一些Android JNI的使用方法。
Android JNI介绍
- Android JNI详述:参考http://hi.baidu.com/zhang_sg1984/blog/item/d0d7fcdd698916d58d1029af.html,讲得比较详细
- Android JNI 使用的数据结构JNINativeMethod详解:参考http://hi.baidu.com/caicry/blog/item/fd717a80cf98c7da9123d9da.html
- JNI 返回结构体参数:http://andilyliao.javaeye.com/blog/496816 很不错的讲解结构体参数传递的教程。
- NDK 应用及扩展介绍:http://wenku.baidu.com/view/361c9a2d2af90242a895e516.html,讲解了如何NDK中如何使用so文件。
- JNI tutorial,老外写的教程,http://www.giamungo.com/JNI/JNI.html
- JNI Examples for Android:http://android.wooyd.org/JNIExample/
NDK
- 教程
- 【eoe特刊】第七期:Android NDK开发:http://www.eoeandroid.com/viewthread.php?tid=2718&extra=&highlight=&page=1
- 实例:
- Porting curl to Android - A success story with NDK 1.6:http://curl.haxx.se/mail/lib-2009-12/0071.html
NDK Tips
- NDK的默认Android.mk路径指定在project/jni目录下,如果我们需要将Android.mk提到上一级目录,需要修改文件NDK_ROOT\build\core\default-application.mk
#APP_BUILD_SCRIPT := $(APP_PROJECT_PATH)/jni/Android.mk
APP_BUILD_SCRIPT := $(APP_PROJECT_PATH)/Android.mk * undefined reference to `wcstombs'
默认的NDK,在用到wcstombs函数时(已经include <stdlib.h>),编译会报错,在网上找了一下,是NDK的问题:http://blog.sina.com.cn/s/blog_4b650d650100m07j.html 可以在这里下载打过patch的版本,http://www.crystax.net/android/ndk-r4.php
Linux 网络编程
- Linux网络编程一步一步学+基础:http://blog.chinaunix.net/u1/48325/showart_413841.html
NDK编译命令
安装cygwin后,把cygwin/bin路径添加到PATH路径,执行下面的命令可以编译SO文件。这样就不需要每次都进入cygwin环境下再执行ndk-build。
再简单一点将这行命令写成一个bat文件,这样只需要在cmd下面直接运行这个bat文件就行了。
bash D:\android\ndk\android-ndk-r4-windows\android-ndk-r4-windows\android-ndk-r4\ndk-build
/var/www/dokuwiki/wiki/data/attic/android/android-jni.1289457199.txt.gz · Last modified: 2016/05/05 13:06 (external edit)