NDK开发之获得域和方法描述符
在NDK开发之调用方法和NDK开发之访问域两篇博客中,我们在获得域ID和方法ID时都需要一个叫做描述符的参数,那么在实际开发中我们怎么知道我们要调用的域或者方法的描述符呢?
一个简单的方法就是使用Java提供的javap命令
JDK提供的命令行方式下的Java类文件反汇编程序称为javap,该工具可以从编译的文件中解压缩域和方法的描述符。
使用方法: 
在cmd命令行,首先进入到当前工程的主目录:
javap在编译的Java类文件上操作,它有两个参数,分别表示编译的类位置以及要反汇编的Java类名字,-p表示显示所有类和成员,-s则表示输出内部类型签名。格式如下:
javap -classpath bin/classes -p -s com.example.jni.MainActivity
javap工具将对com.example.jni.MainActivty类文件进行反汇编并输出如图所示的域或方法签名。
好了,所有的域或者方法描述符都可以通过这样一个简单的方式拿到了。
版权声明:本文为博主原创文章,未经博主允许不得转载。若有错误地方,还望批评指正,不胜感激。
NDK开发之获得域和方法描述符的更多相关文章
- Android NDK开发 JNI类型签名和方法签名(六)
		
在Java存在两种数据类型: 基本类型 和 引用类型 ,大家都懂的 . 在JNI的世界里也存在类似的数据类型,与Java比较起来,其范围更具严格性,如下: 1.primitive types ---- ...
 - NDK开发之访问域
		
Java有两类域,实例域和静态域.类的每个实例都有自己的实例域副本,而一个类的所有实例共享一个静态域(Java SE基础). JNI提供了相应的函数来访问这两类域,总体步骤是这样的: 1.通过对象引用 ...
 - UNIX域协议之描述符传递
		
一.mycat程序 #include <fcntl.h> #include <stdlib.h> #include <unistd.h> #define BUFFS ...
 - NDK开发之调用方法
		
与NDK开发之访问域中介绍的一样,Java中的方法也是分为两类:实例方法和静态方法.JNI提供了访问两类方法的函数,下面我们一起来看看怎么在C中访问Java中的方法. 我们的MainActivity中 ...
 - NDK开发-零散知识点整理
		
JavaVM 标准Java平台下,每一个Process可以产生很多JavaVM对象,但在Android平台上,每一个Process只能产生一个Dalvik VM对象,也就是说在Android进程中是通 ...
 - [转]jni数据类型映射、域描述符说明
		
在Java存在两种数据类型: 基本类型 和 引用类型 ,大家都懂的 . 在JNI的世界里也存在类似的数据类型,与Java比较起来,其范围更具严格性,如下: 1.primitive types ---- ...
 - JNI学习积累之二 ---- 数据类型映射、域描述符说明
		
本文原创,转载请注明出处:http://blog.csdn.NET/qinjuning 在Java存在两种数据类型: 基本类型 和 引用类型 ,大家都懂的 . 在JNI的世界里也存在类似的数据类型,与 ...
 - Android NDK开发篇:Java与原生代码通信(数据操作)
		
虽然说使用NDK可以提高Android程序的执行效率,但是调用起来还是稍微有点麻烦.NDK可以直接使用Java的原生数据类型,而引用类型,因为Java的引用类型的实现在NDK被屏蔽了,所以在NDK使用 ...
 - python - 数据描述符(class 内置 get/set/delete方法 )
		
数据描述符(class 内置 get/set/del方法 ): # 什么是描述符 # 官方的定义:描述符是一种具有“捆绑行为”的对象属性.访问(获取.设置和删除)它的属性时,实际是调用特殊的方法(_g ...
 
随机推荐
- 解决wordpress上传的文件尺寸超过 php.ini 中定义的 upload_max_filesize 值。
			
上传的文件尺寸超过 php.ini 中定义的 upload_max_filesize 值. 解决方法:修改/etc/php5/apache2/php.ini文件中的 post_max_size = 6 ...
 - USB otg 学习笔记
			
1 USB OTG的工作原理 OTG补充规范对USB2.0的最重要的扩展是其更具节能性的电源管理和允许设备以主机和外设两种形式工作.OTG有两种设备类型:两用OTG设备(Dualrole device ...
 - qt 原子操作 QAtomicInt(++和--都不是原子操作:都包含三条机器指令)
			
++和--都不是原子操作:都包含三条机器指令 http://sroply.blog.163.com/blog/static/17092651920106117251539/
 - Java I/O学习(一)
			
写作目的 自学Java,Java中流的概念比较复杂,故专门作一整理.期望开始学习的童鞋,看完本文后对Java流有一个大致的认识.主要分三个小篇: 一.概述.输入/输出字节流 二.输入/输出字符流.装饰 ...
 - devpress GridControl控件绑定RepositoryItemImageComboBox 作为下拉框使用 zt
			
1.拖出gridview控件,然后将字段绑定上去 2.将要做下拉框的控件加入RepositoryItemImageComboBox控件 3.绑定数据 ; i < ; i++) { //如果取值时 ...
 - List 三种遍历的方法
			
学习java语言list遍历的三种方法,顺便测试各种遍历方法的性能,测试方法为在ArrayList中插入1千万条记录,然后遍历ArrayList,发现了一个奇怪的现象,测试代码如下: package ...
 - HDU-2521                                       反素数
			
反素数 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submis ...
 - Android项目开发全程(三)-- 项目的前期搭建、网络请求封装是怎样实现的
			
在前两篇博文中已经做了铺垫,下面咱们就可以用前面介绍过的内容开始做一个小项目了(项目中会用到Afinal框架,不会用Afinal的童鞋可以先看一下上一篇博文),正所谓麻雀虽小,五脏俱全,这在里我会尽量 ...
 - 存储过程实例总结(开发中的错误与总结,调试,数据库函数DATEDIFF计算当前日期是否在本周内)
			
USE [POND] GO /****** Object: StoredProcedure [dbo].[OrderChargeList] Script Date: 04/16/2014 13:32: ...
 - Closure Compiler(封闭编辑器), Closure  Inspector, Closure Templates, 封闭图书馆(Closure Library) Google- 摘自网络
			
谷歌日前宣布,将自己开发者使用的一系列工具对外开放.这些工具曾用来开发谷歌的主要产品,包括Gmail.谷歌文档(Google Docs)和谷歌地图(Google Maps). 第一个工具叫做Closu ...