`

使用javah生成.h文件, 出现无法访问android.app,Activity的错误的解决

    博客分类:
  • jni
 
阅读更多



  

  我同学在工程ndk22/bin/classes中 运行javah  com.cn.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,或许能成功

      我也不知道为什么了,反正能用了就行...

 

 

 

  • 大小: 12.9 KB
  • 大小: 29 KB
  • 大小: 63.9 KB
  • 大小: 37.2 KB
分享到:
评论
1 楼 sdlyjzh 2012-08-20  
我问题和你是一样的,你解决了吗?

相关推荐

    android jni使用libzip读取压缩文件

    然后,使用`javah`命令生成对应的C/C++头文件,这个头文件将定义JNI函数原型。 接下来,在C/C++代码中实现`readZipFromAssets`函数。首先,打开assets中的ZIP文件,然后使用libzip API读取其中的文件。这里可能需要...

    Android_平台怎样使用第三方动态库

    2. **头文件**:扩展名为 `.h` 的文件,定义了动态库中的 API 接口。 例如,假设有一个简单的加法运算库 `Add`,其文件结构可能如下所示: - `Add.c`:实现了加法功能。 - `Add.h`:声明了加法函数 `Add` 的原型。...

    ndk_r7_windows使用入门

    - 使用`javah`命令生成对应的`.h`文件,格式如下: ```bash javah -classpath bin: -d jni cc.android.jni.JniTest ``` #### 四、编写C代码 1. **创建C源文件** - 根据生成的`cc_android_jni_JniTest.h`头文件...

    Android_JNI_实例.doc

    4. 将生成的头文件 `com_test_TestHelloLib.h` 放入 `development/hellolib` 目录,并将其包含到 `Android.mk` 文件中。修改后的 `Android.mk` 文件可能如下所示: ```makefile LOCAL_PATH:= $(call my-dir) ...

    android ndk纯c编程调用so文件

    4. **生成JNI头文件**:使用`javah`命令(在Android Studio中,也可以通过菜单栏的"Build" -> "Generate Signed Bundle / APK" -> "Generate JNI Header")生成C语言的头文件,比如`NativeActivity.h`。这个头文件...

    Android-NDK开发.pdf

    import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class Main extends Activity { static { System.loadLibrary("native-lib"); } @Override protected void...

    androidNDK编程入门.pdf

    在上述描述中提到,由于Android应用程序的权限限制,无法直接访问根文件系统中的文件。通过NDK,开发者可以编写C/C++代码来实现这一功能,因为原生代码不受Dalvik虚拟机的权限约束,可以拥有更高级别的系统访问权限...

    android jni使用curl进行http请求和文件下载

    - 使用`javah`命令生成对应的C++头文件,或者在Android Studio中使用CMakeLists.txt自动处理。 3. **编写C++代码** - 在生成的C++头文件中,声明libcurl的接口。然后在对应的cpp文件中实现这些接口。例如,`...

    Android studio jni简单编程实例

    使用`javah`工具(现在通常由Android Studio的`Make Project`操作代替)生成JNI头文件。头文件会声明C/C++函数原型,供原生代码实现。 6. **实现JNI函数** 在`hello-jni.c`中,实现`stringFromJNI`函数,该函数将...

    android 自定义so库使用与方法调用demo

    3. **编写C/C++代码**:在jni目录下创建对应的头文件(.h)和源文件(.c或.cpp),例如`hello-jni.c`,实现需要暴露给Java层的方法。 4. **编写Android.mk**:这是构建SO库的配置文件,指定编译选项、依赖库等。...

    jni生成so并在另一个项目使用

    接下来,使用`javah`工具(在Android Studio中,可以通过右键点击Java类并选择"Generate JNI Header")生成对应的C/C++头文件。例如,这将生成`NativeDemo.h`: ```c /* DO NOT EDIT THIS FILE - it is machine ...

    Android 打包包含jni代码jar包

    - 使用`javah`工具(或者Android Studio的`Generate C++ Headers`功能)自动生成C/C++头文件。这个头文件包含了Java native方法的定义。 3. **构建JNI库** - 使用Android NDK(Native Development Kit)来编译C/...

    LLDB调试Android NDK

    - 使用`javah`工具或Android Studio自动生成对应的头文件`native-lib.h`,它包含了C/C++端的函数原型。 3. **实现JNI函数** - 在C/C++源文件中实现这些函数,如`native-lib.cpp`: ```cpp extern "C" JNIEXPORT...

    Android studio 通过jar调用jni so库

    6. **生成JNI头文件**:使用`javah`命令或Android Studio的`Generate C++ Header`功能,根据你的Java类生成对应的JNI头文件,它定义了Java方法的C/C++接口。 7. **实现本地方法**:在生成的头文件中找到声明的方法...

    Android JNI简单使用

    2. 使用`javah`命令生成JNI头文件:在命令行中,进入`app/src/main/java/your_package_name`目录,运行`javah -jni YourClassName`(替换`YourClassName`为包含本地方法的Java类名)。这将在同一目录下生成一个...

    android studio JNI

    使用Android Studio的`Build` -> `Generate Signed Bundle / APK`或`Build` -> `Make Project`,系统会自动调用`javah`工具(在现代版本中,是`javac -h`)生成JNI头文件,一般位于`app/build/generated/source/ndk...

    Android Studio JNI编程入门实例

    为了使Java能识别这个方法,我们需要使用`javah`命令生成对应的头文件,或者在Android Studio中右键点击方法,选择"Generate... > C/C++ Headers"。 最后,运行`ndk-build`命令(如果使用CMake,则运行`gradlew ...

    Android NDK——Hello JNI

    使用`javah`命令(在Android Studio中,可以通过右键点击`HelloJNI`类,选择`GenerateJNI`)生成JNI头文件`HelloJNI.h`,它定义了Java的native方法在C/C++中的原型。 4. **编写C/C++代码** 在`src/main/cpp`目录...

Global site tag (gtag.js) - Google Analytics