commit 2fe64895c6ea5ecd8d1fda1eba73b97e164f8911 Author: JinJinFeng <1416042808@qq.com> Date: Mon Dec 23 15:16:14 2024 +0800 上传文件至 操作文档 diff --git a/操作文档/操作文档.docx b/操作文档/操作文档.docx new file mode 100644 index 0000000..5ab79f6 --- /dev/null +++ b/操作文档/操作文档.docx @@ -0,0 +1,76 @@ + Android JNI Demo 操作文档 +本应用程序演示了Android中JNI的基本使用,实现了以下功能: +1. 页面间的按钮跳转 +2. 通过JNI显示来自C++的字符串 +3. 错误处理和日志记录 + +一、项目结构 +app/ + ├── src/ + │ ├── main/ + │ │ ├── java/com/example/jnidemo/ + │ │ │ ├── MainActivity.java # 主页面活动 + │ │ │ └── SecondActivity.java # 第二页面活动 + │ │ ├── cpp/ + │ │ │ └── native-lib.cpp # JNI原生代码 + │ │ ├── res/layout/ + │ │ │ ├── activity_main.xml # 主页面布局 + │ │ │ └── activity_second.xml # 第二页面布局 + │ │ └── AndroidManifest.xml + │ └── CMakeLists.txt # CMake构建配置 + └── build.gradle # Gradle构建配置 + +二、主要代码说明 +1. MainActivity.java +实现主页面按钮点击事件 +使用Intent跳转到SecondActivity + +2. SecondActivity.java +加载native-lib原生库 +通过JNI调用获取字符串 +在TextView中显示JNI返回的字符串 + +3. nativelib.cpp +实现JNI原生方法 +返回UTF8编码的字符串 +包含错误处理和日志记录 + +三、运行步骤 +1. 环境准备: + 安装Android Studio + 安装Android SDK + 安装NDK和CMake + +2. 打开项目: + 启动Android Studio + 选择"Open an existing Android Studio project" + 导航到项目目录并打开 + +3. 构建项目: + 等待Gradle同步完成 + 点击"Build > Make Project"确保项目能够正常构建 + +4. 运行应用: + 连接Android设备或启动模拟器 + 点击工具栏的"Run"按钮(▶️) + 选择目标设备并确认运行 + +5. 测试功能: + 应用启动后显示主页面 + 点击"GO TO SECOND PAGE"按钮 + 第二页面将显示来自JNI的中文字符串 + + + +四、故障排除 +如果应用崩溃,请检查以下内容: +1. Logcat中查看详细错误信息(过滤标签:"NativeLib"和"SecondActivity") +2. 确保NDK和CMake正确安装 +3. 检查Gradle同步是否成功 +4. 确保设备支持的ABI与项目配置匹配 + +五、注意事项 +1. 项目使用CMake进行原生代码构建 +2. JNI方法名必须严格匹配Java代码中的native方法声明 +3. 字符串使用UTF8编码以支持中文显示 +