import org.jf.dexlib2.iface.Method; //导入方法依赖的package包/类

@Override

public Method reMethod(Method method) {

String newType = null;

boolean isBasic = false;

boolean isInit = false;

boolean changeOpcode = false;

String methodName = method.getName();

String returnType = method.getReturnType();

MethodImplementation methodImplementation = method.getImplementation();

List extends MethodParameter> paramters = method.getParameters();

if (methodName.equals("") || methodName.equals("")) {

isInit = true;

}

if (basicType.containsKey(returnType)) {

newType = returnType;

isBasic = true;

} else {

newType = classProcessor.classProcess(DefineUtils.getDalvikClassName(returnType)).className;

}

String[] argsOringn = new String[paramters.size()];

String[] args = new String[paramters.size()];

for (int i = 0; i < paramters.size(); i++) {

//型参数不混淆

if (basicType.containsKey(paramters.get(i).getType())) {

argsOringn[i] = basicType.get(paramters.get(i).getType());

args[i] = argsOringn[i];

continue;

}

argsOringn[i] = DefineUtils.getDalvikClassName(paramters.get(i).getType());

args[i] = classProcessor.classProcess(DefineUtils.getDalvikClassName(paramters.get(i).getType())).className;

}

String type = method.getReturnType();

return new ImmutableMethod(reType,

classProcessor.methodProcess(isInit ? methodName :

DefineUtils.getDalvikClassName(method.getDefiningClass()), methodName, isBasic ? basicType.get(returnType) : DefineUtils.getDalvikClassName(returnType), StringUtils.join(argsOringn, ",")).methodName,

reParameters(paramters),

isBasic ? newType:

DefineUtils.getDefineClassName(newType,type.startsWith("[")),

method.getAccessFlags(),

getAnnotation(method.getAnnotations()),

reMethodImpl(methodImplementation));

}

java getaccessflags_Java Method.getAccessFlags方法代码示例相关推荐

  1. java methode_Java Method.getTypeParameters方法代码示例

    import java.lang.reflect.Method; //导入方法依赖的package包/类 private void validateRuleMethod(MethodRuleDefin ...

  2. java kryo_Kryo框架使用方法代码示例

    Kryo框架的source已移至https://github.com/EsotericSoftware/kryo ,进入此页面,然后点击右边的Download Zip按钮,就能下载到最新版本的Kryo ...

  3. java readtimeout_Java HttpURLConnection.getReadTimeout方法代码示例

    import java.net.HttpURLConnection; //导入方法依赖的package包/类 /** * 得到响应对象 * * @param urlConnection * @retu ...

  4. java instraction_Java Instruction.getCodeUnits方法代码示例

    import org.jf.dexlib2.iface.instruction.Instruction; //导入方法依赖的package包/类 /** * @param code the codei ...

  5. java invalidate_Java Component.invalidate方法代码示例

    import java.awt.Component; //导入方法依赖的package包/类 /** Installs the component we will embed to display t ...

  6. java hasmoreelements_Java IOException.hasMoreElements方法代码示例

    import java.io.IOException; //导入方法依赖的package包/类 /** * fileName���� ���� package �������� ������ ���� ...

  7. java setmethod_Java Operation.setJavaMethod方法代码示例

    import com.sun.tools.internal.ws.processor.model.Operation; //导入方法依赖的package包/类 private void createJ ...

  8. java deepcopy_Java JsonNode.deepCopy方法代码示例

    import com.fasterxml.jackson.databind.JsonNode; //导入方法依赖的package包/类 /** * Applies this schema rule t ...

  9. java cancel_Java RunnableFuture.cancel方法代码示例

    import java.util.concurrent.RunnableFuture; //导入方法依赖的package包/类 @Test public void testSnapshotAsyncC ...

最新文章

  1. Python 2.4 递归函数
  2. Linux平台上最常用的翻译工具—StarDict(星际译王)。
  3. 谈判失败:Oracle杀死Java EE
  4. strcore.cpp(156) 内存泄漏
  5. java 月度相减_java根据日期获取月龄,按照减法原理,先day相减,不够向month借;然后month相减,不够向year借;最后year相减。...
  6. 图书管理系统【C++】
  7. dosbox汇编环境turboC环境配置
  8. openwrt带宽测速
  9. 全国社会消费品零售总额ARIMA建模分析
  10. element-ui + 腾讯地图
  11. 「Go工具箱」web中想做到cookie值安全?securecookie库的使用和实现原理
  12. 搜狗搜索php,搜狗搜索公众号内容提取
  13. 计算机替换规定文字颜色,改Windows系统字体颜色的方法
  14. 疯狂模渲大师链接永久是最新版|怎么安装客户端并激活素材库联系作者加载自营专属素材扩展包高效使用超一流辅助插件脚本工具的步骤教程?...
  15. 阿里技术专家花3年写的《MySQL笔记》解决了70%数据库面试难题,网友:非常棒!
  16. 不同的丘脑皮层网络动力学与慢性腰痛的病理生理学有关
  17. maven自定义依赖并推送到远程仓库
  18. Part 1: 3.1 时序逻辑~3.2 flip flop 触发器寄存器
  19. 2014年10月25日深圳彩讯科技和北京宇信易诚的笔试记录
  20. html5 xdwlnjs cn,最近需要调用一个网站的js,但是发现是加密的,有大佬来解密下吗?...

热门文章

  1. 解决 DNS general: warning: *** POKED TIMER ***
  2. (电影播放器)MPMoviePlayerController
  3. MySQL utf8mb4与emoji表情
  4. C++在构造函数中调用构造函数
  5. android java file 清理垃圾获取文件大小 删除文件等操作
  6. c实现的trim函数
  7. Hyper-V安装(摘自本站)
  8. Mybatis分库分表扩展插件
  9. js-jQuery对象与dom对象相互转换
  10. centos 7 包管理工具 snap 安装部署