安卓java模拟器下载使用javah在哪个位置执行

javah提示无法访问android.support.v7.app.ActionBarActivity - buck84的专栏
- 博客频道 - CSDN.NET
eclipse调试android的c++,网上攻略生成.h文件的方式是在jni目录下执行javah -jni -classpath ../bin/classes -o ./ndkTest.h com.example.NdkTest.MainActivity,提示标题中错误,改成在src目录中执行javah com.example.NdkTest.MainActivity即可
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:65245次
积分:1396
积分:1396
排名:第14900名
原创:71篇
转载:14篇
(2)(1)(4)(2)(1)(1)(4)(10)(4)(1)(11)(3)(13)(16)(6)(2)(3)(3)(1)Eclipse+NDK+android用javah工具生成.h问题。_百度知道
Eclipse+NDK+android用javah工具生成.h问题。
我有更好的答案
按默认排序
这个问题不难!jni是android调用其他语言的一个平台常用的是调用C你确定你是用的掉用了那边写好的源码?
其他类似问题
您可能关注的推广回答者:
javah的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁使用javah生成.h文件, 出现无法访问android.app,Activity的错误的解决 -
- ITeye技术网站
博客分类:
我同学在工程ndk22/bin/classes中 运行javah
.ndk22.Ndk22.Activity ,出现了.h文件
我在bin/classes目录中 ,就是无法访问,
: 错误:无法访问android.app.Activity
找不到android.app.Activity
如下图所示
于是我cmd定位到ndk/src,中运行 javah com.heima.ndk.ndkActivity, 成功了就能成功了 ...我也不知道为什么.,如下图
使用javah生成.h文件时,
如果在D:\Android\project\ndk\bin\classes中,执行javah com.heima.ndk.ndkActivity无法访问,找不到类文件的话
那就在D:\Android\project\ndk\src中,执行javah com.heima.ndk.ndkActivity,或许能成功
我也不知道为什么了,反正能用了就行...
一共丢七只羊
浏览: 8612 次
不管用,问题依然存在,坐等楼主解答!
我问题和你是一样的,你解决了吗?XCoder Studio
Android中使用javah生成jni头文件的正确方法
相信大家在Android中使用NDK开发时,免不了使用JNI。首先在java中声明native方法,而这些native方法是由c或c++来实现的。为了让java能够找到对应的本地实现方法,就需要建立一个对应关系。当然我们可以自己手工编写,但是太麻烦了,还好jdk中有javah这个工具,来帮助我们自动生成本地头文件。
我刚开始也在网上搜索了一下,按照网上的做法怎么也不成功。主要原因是很多人说的不够清楚,导致经常出现类似下面的错误:
error: cannot access com.example.soundtouchdemo.JNISoundTouch
class file for com.example.soundtouchdemo.JNISoundTouch not found
javadoc: error - Class com.example.soundtouchdemo.JNISoundTouch not found.
Error: No classes were specified on the command line. &Try -help.
经过仔细研究,正确的做法是:
1. & cd到你Android工程的bin/classes目录下
hejinlai_iMac:classes hejinlai$ pwd
/Users/hejinlai/Workspace/Android/SoundTouchDemo/bin/classes
这个是非常关键的,之所以错误,就是因为没有进入到这个目录下。很显然这个目录下面有一目录,这个目录就是你包名的顶级目录,一般来说都是com目录:
hejinlai_iMac:classes hejinlai$ ls -l
drwxr-xr-x &3 hejinlai &staff &102 Jun 19 11:32 com
2. & 然后执行 javah 包名.类名
注意包名一定要完整,用 . 隔开,后面的是类的名字,不带任何后缀。
hejinlai_iMac:classes hejinlai$ javah com.example.soundtouchdemo.JNISoundTouch
hejinlai_iMac:classes hejinlai$ ls -l
drwxr-xr-x &3 hejinlai &staff & 102 Jun 19 11:32 com
-rw-r--r-- &1 hejinlai &staff &1918 Jun 19 14:49 com_example_soundtouchdemo_JNISoundTouch.h
hejinlai_iMac:classes hejinlai$
总结:在执行javah的时候,一定要确保在正确的目录下,javah后面的参数要是 &包名.类名
本文出自 &移动开发& 博客,请务必保留此出处http://ikinglai./5069
频道总排行
频道本月排行
Powered by安卓ndk开发一定需要javah命令来生产对于的header文件么?_百度知道
安卓ndk开发一定需要javah命令来生产对于的header文件么?
&quot, G_N_ELEMENTS(native_methods));#define HOST &RegisterNatives (android&#47, char host[]){}jint JNI_OnLoad(JavaVM *cn&#47, JNI_VERSION_1_4) != JNI_OK) {
__android_log_print (ANDROID_LOG_ERROR,最好别用什么javah, native_gst&#47网上看了一些用javah来做的,因为安卓ndk的samples里面所有的sample都没有header文件;#include &127,请问我应该怎么做.h&#include &lt, if ((*vm)-&gt.h& (*env)-&), (void**) &), JNI_TAG;FindClass (env.0;Test&nativeRtpSend&
return 0。谢谢大神了#include &jint gst_native_rtp_send(JNIEnv*test&#47,但是编译的时候说“gst_native_rtp_send” undeclared here(not in a function);native_sender&quot, &quot, (void *) gst_native_rtp_send}};android/gst.h&#include & } jclass klass = (*env)-&gt.0;static JNINativeMethod native_methods[] ={ { &Could not retrieve JNIEnv&quot。我按照ndk官网上的方式自己创建了个工程(没用javah);string, &GetEnv(#define JNI_TAG &([C)I&quot, void *reserved){ JNIEnv *env = NULL,jobject javaThis.1&;.h&gt,但是我发觉header文件好像不是必须的;jni.我就不知道它这究竟是要闹哪样; return JNI_VERSION_1_4
提问者采纳
自定义的头文件,本来就不是必需的。
意思说,对于的h文件不一定是需要的?那么大神能不能帮我看下,我的代码报错的可能性有哪些,或者说我是哪儿没有写对。
检查 #include &gst/gst.h& 里面,有没有该函数
我自己搞定了
提问者评价
其他类似问题
javah的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 安卓java模拟器下载 的文章

 

随机推荐