转自:http://www.cnweblog.com/fly2700/archive/2012/03/21/320083.html

1,java 代码 结构体定义

1 public class  MediaInfo2 {3     public int nWidth;4     public int nHeight;5     public String strStream;6 }


java jni接口定义

public native static int       GetMediaInfo(int handle, MediaInfo info); //


c++ ndk 实现代码

 1 JNIEXPORT jint JNICALL Java_src_jni_RtspConnect_GetMediaInfo 2   (JNIEnv *e, jclass c, jint h, jobject o) 3 { 4     //获取Java中的实例类  5     jclass objectClass = (e)->FindClass("src/jni/MediaInfo");  6   7     //获取类中每一个变量的定义  8     jfieldID strStream = (e)->GetFieldID(objectClass, "strStream", "Ljava/lang/String;");  9     jfieldID nHeight = (e)->GetFieldID(objectClass, "nHeight", "I"); 10     jfieldID nWidth =  (e)->GetFieldID(objectClass, "nWidth", "I");11  12  13     //给每一个实例的变量付值 14     (e)->SetIntField(o, nHeight, 10); 15     (e)->SetIntField(o, nWidth, 100);16     (e)->SetObjectField(o, strStream, (e)->NewStringUTF("my stream"));  17     18     return 0; 19 }


Java 调用

1  MediaInfo info = new MediaInfo();2         RtspConnect.GetMediaInfo(0, info);3         Log.i("info", ""+info.nHeight);4         Log.i("info", ""+info.nWidth);5         Log.i("info", ""+info.strStream);

更多相关文章

  1. 从dumpsys自定义服务来认识Android(安卓)binder
  2. Android(安卓)Vibrator震动效果
  3. Android(安卓)XmlResourceParser解析Xm文件实例
  4. Android(安卓)中的menu以及自定义menu
  5. Android(安卓)下的 makefile 组织结构
  6. Android多视图(View)切换
  7. ubuntu gradle编译总结
  8. android通过ContentProvider实现应用间的数据共享
  9. 整理出15个Android很有用的代码片段(技巧)ophone

随机推荐

  1. Android(安卓)中Activity,Window和View之
  2. Android(安卓)中文 API (36) —— Toast
  3. eclipse android安装
  4. android framework 层服务 分析
  5. Android开发之GridView属性介绍
  6. mac 安装Android(安卓)studio遇到的问题
  7. Android设备管理器漏洞
  8. 后台动态添加布局文件、控件与动态设置属
  9. android 中文 api (43) —— Chronometer
  10. Android全屏显示的两种方式