异常我们已经很熟悉了,空指针、数组越界等等,在Java中,当抛出一个异常,虚拟机会停止执行代码块并进入调用栈反向检查能处理特定异常的异常处理程序代码块,虚拟机清除异常并将控制权交给异常处理程序。而JNI不同,JNI没有像…
标签:代码
其实用高大上的Hook技术动态注入代码很简单,一看就会!
Hook 背景介绍 很多时候系统处于安全考虑,将很多东西对外隐藏,而有时我们偏偏又不得不去使用这些隐藏的东西。甚至,我们希望向系统中注入一些自己的代码,以提高程序的灵活性。刚好有这么一种特殊的回调模式,Hook模式可以实…
无代码侵入统计Alamofire所有请求
我们在上一篇文章中如何拦截iOS所有网络请求介绍了如何使用NSURLProtocol拦截所有的网络请求添加统计代码。使用NSURLProtocol拦截第三方框架像Alamofire、AFNetwoking、SDWebIm…
Objective-C文件组织介绍(附代码)
接口与实现 Objective-C类的代码分为两部分,一部分是接口,用来展示类的构造: #import <Foundation/Foundation.h> #import "Hand.h" #import "…
JavaPoet - 优雅地生成代码
JavaPoet – 优雅地生成代码 [TOC] 一、项目简介 JavaPoet是square推出的开源java代码生成框架,提供Java Api生成.java源文件。这个框架功能非常有用,我们可以很方便的使…
Android中对一段程序测试时间的代码
在做项目的时候有时候需要对一段程序代码或者对一个操作测试时间,那代码可以如下: long startTime = System.nanoTime(); try { Thread.sleep(3000); } catch …
通过Espresso测试异步代码
本篇讲如何通过Espresso实现异步测试. 概述 如果没有框架的支持测试异步代码还是非常具有挑战性的 ! 在 Espresso 之前典型的做法就是等待预定的时间.或者在测试代码使用 CountDownLatch 类的实…
android中通过代码合成二维码
今天项目上给了一个二维码的链接和中心Logo,让我通过代码合成一个二维码。其实也可以通过草料二维码合成一个图片,直接展示图片就可以了,不过通过代码是怎么实现,下面来学习一下! 效果图如下 image.png 实现过程 1…
R树建立路网索引(附代码)
R树作为一种可以存储高维数据的数据结构,在时空数据挖掘和空间信息存储方面得到了广泛的应用,在这里我将介绍如何利用R树建立路网的空间索引,并进行测试。 首先我们必须准备数据,才能开始实验,这里选取的是北京市的路网数据:路网…
使用lombok提升代码开发效率
一、lombok介绍 lombok是一款为了简化代码而生的工具。按照java传统开发方式,我们每定义一个POJO,都要生成Getter,Setter方法,时不时的还要覆盖一下toString、hashCode;还要提供各…
Android 代码混淆在AS的实践
一.关于混淆 ProGuard是一个混淆代码的开源项目,它的主要作用是混淆代码,还包括以下4个功能: 1.压缩(Shrink):检测并移除代码中无用的类、字段、方法和特性(Attribute); 2.优化(Optimiz…