Android NDK--自己编写调用JNI
来源:互联网 发布:如何看八字排盘 知乎 编辑:程序博客网 时间:2024/06/04 18:48
其实ubuntu中android开发环境的搭建也很简单
(1)下载android-sdk (2)为Eclipse安装ADT,从help->Install New SoftWare进入,地址输入http://dl-ssl.google.com/android/eclipse/
要进入NDK开发再下一个android-ndk就可以了
以上开发包均可以从http://androidappdocs.appspot.com/sdk/ndk/index.html上下载得到
然后vi .bashrc,在PATH中添加3个路径:
android-sdk/tools android-sdk/platform-tools android-ndk
source .bashrc使更改生效
PATH下的工具命令可以直接使用,不需要指定路径。今天我们要用到android-sdk/tools下的android命令、android-sdk/platform-tools下的adb命令、android-ndk下的ndk-build命令。
Eclipse中使用NDK编程
1.New->Android Project
Project Name:hello-jni
Applicatin Name:hello-jni
create activity:HelloJni
Package Name:com.example.hellojni
Min SDK Version:3
2.项目下新建一个文件夹jni,该文件夹下新建两个文件:hello-jni.c和Android.mk
hello-jni.c
#include <string.h>#include <jni.h>jstringJava_com_example_hellojni_HelloJni_stringFromJNI( JNIEnv* env, jobject thiz ){ return (*env)->NewStringUTF(env, "Hello from JNI !");}
Java_com_example_hellojni_HelloJni_stringFromJNI这个函数名称是有讲究的
Java_ 固定
com_example_hellojni_ java代码的包名
HelloJni_ java代码的类名
stringFromJNI java代码中使用的方法名
Android.mk
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := hello-jniLOCAL_SRC_FILES := hello-jni.cinclude $(BUILD_SHARED_LIBRARY)
3.编写Android程序
com.example.hellojni.HelloJni.java
package com.example.hellojni;import android.app.Activity;import android.widget.TextView;import android.os.Bundle;public class HelloJni extends Activity{ /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView tv = new TextView(this); tv.setText( stringFromJNI() ); setContentView(tv); } public native String stringFromJNI(); static { System.loadLibrary("hello-jni"); }}
4.编译C代码,生成共享库
进入项目的根目录$cd hello-jni
hello-jni $ android update project -p . -s
hello-jni $ ndk-build
此时libhello-jni.so就生成了,在bin下也有了apk包
5.直接在Eclipse中点击运行,或者手动安装apk包
首先输入android命令,启动模拟器
然后安装apk包:adb install bin/hello-jni.apk
6.卸载apk包
使用adb提供的shell命令
adb shell
#cd /data/app
#rm com.example.hellojin.apk
- Android NDK--自己编写调用JNI
- Android NDK: 用 NDK 编写 JNI
- android 之 JNI 调用 NDK
- android studio NDK-JNI调用
- Android Studio-NDK-JNI调用
- Android jni的调用过程JNI_OnLoad(),利用Android NDK编写一个简单的HelloWorld
- Android For JNI(六)——交叉编译,NDK概述以及文件结构,编写自己的第一个JNI工程
- Android For JNI(六)——交叉编译,NDK概述以及文件结构,编写自己的第一个JNI工程
- 在Android Studio下编写JNI(二)NDK调用java
- JNI入门,使用NDK编写自己的SO库
- Android NDK介绍及JNI调用
- Android Studio通过JNI调用NDK程序
- Android studio 使用NDK ,jni调用
- android ndk通过jni调用C++
- 编写自己的android jni程序
- NDK Java JNI调用
- Android NDK编程,我的第一个hello-jni程序,如何调用自己编译的so库
- android ndk搭建以及JNI的Helloworld编写
- 多线程编程
- MyEclipse创建WebService
- Java连接SQL Server和MongoDb
- Ksoap调用WebService
- Java--产生随机数及随机字符的方法
- Android NDK--自己编写调用JNI
- underScore源码解析-----Collections
- Android中sdcard和adb命令的使用
- TCP收发图片
- 写入日志文件
- C语言里的字符串
- Android第四讲--用户界面
- Android第五讲--Menu
- Android第六讲--Intent