作者serflygod (serflygod)
看板AndroidDev
标题[问题] NDK的helloworld
时间Wed May 30 00:22:29 2012
各位你们好
我初次碰NDK,新手第一次当然跑helloworld
但一直碰壁无法成功
希望各位帮助一下
※有先在cygwin执行过ndk-build,生出so档
hello-jni.h档:
http://i.imgur.com/y9Xsb.jpg
hello-jni.c档:
http://i.imgur.com/flVFJ.jpg
HelloJni.java档:
http://i.imgur.com/WyMeU.jpg
档案结构:
http://i.imgur.com/QxPyK.jpg
Android.mk档:
http://i.imgur.com/KYOuH.jpg
出现的错误讯息:
http://i.imgur.com/obSSg.jpg
主要问题就是联结不到"stringFromJNI"
但我已经用静态的方法把它们连在一起了啊Q_Q
弄了整整两天了
还是找不到问题所在
另外eclipse一直说我的#include <档案.h> unresolved inclusion
header档里面则是
JNIEXPORT jstring JNICALL com_example_hellojni_HelloJni_stringFromJNI(JNIEnv
*, jobject);
一直出现syntax error
我查网路试了很多方法还是解决不了
像是这几篇:
http://pyleaf.iteye.com/blog/1408043
(里面提到的解决方法:C/C++ General -> Paths and Symbols
但我没C/C++这选项)
http://hi.baidu.com/otss/blog/item/911cb762cb1fe6c8e6113a7a.html
(里面提到右键你的工程-->C/C++ Build-->Discovery Options-->(找到)Discovery
profile: (选择)GCC per project scanner info profile)
但我右键我的project,也是没有找到c/C++的选项...*_*
我的project右键会出现的选项:
http://i.imgur.com/dCv5J.jpg
在想是不是我创造project选错选项
但我也是跟着别人的教程走的啊OTZ
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.115.73.121
※ 编辑: serflygod 来自: 140.115.73.121 (05/30 00:23)
1F:推 gpc:没注册JNI的样子 05/30 02:11
2F:→ layarice:loadLibrary("<MODULE>") => lib<MODULE>.so 05/30 02:20
请问要加在哪里?
我在build project的时候
有出现libhello-jni.so => libs/armeabi/libhello-jni.so
的字样
※ 编辑: serflygod 来自: 140.115.73.121 (05/30 02:28)
3F:推 qrtt1:先确定你 libs 目录下有出现,如果你是用 cmd 呼叫的情况 05/30 09:15
4F:→ qrtt1:变动不会反应在 eclipse 内,你得 refresh folder 05/30 09:15
5F:→ qrtt1:确定他有出现才行。 05/30 09:15
你好
我看到我的libs下面的确有libhello-jni.so的档案
这样算吗?
※ 编辑: serflygod 来自: 140.115.73.121 (05/30 09:17)
6F:推 gpc:在LIBS armeabi 里面吗 05/30 13:42
是的
※ 编辑: serflygod 来自: 140.115.73.121 (05/30 13:43)
7F:→ qrtt1:你的 device 是 arm 的吗 xd 05/30 14:53
不好意思
我不太确定你的意思
我目前是用 模拟器去跑
有另外找到教程照着它跑出来了
这一篇:
http://geek-garden.blogspot.com/2011/05/android-ndk-jni-eclipse.html
但还是不太了解先前的方式跑不出来OTZ
这一篇没有用到静态注册或者是动态注册
完全就是符合命名规则就好
但我看一下我原本的
看到有错误的有照它一样修改一下
但还是跑不出来
※ 编辑: serflygod 来自: 140.115.73.121 (05/30 16:56)
8F:推 henry74918:你c里面function name少了 Java_ 开头 05/30 17:43