自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 Gitlab项目配置

前言Gitlab可以用来搭建Git仓库服务器端,具有很好的项目管理和用户管理功能,目前Gitlab服务端主要部署在Linux相关平台,Window平台还没有对应的部署包。笔者通过在VMWare Redhat Linux上安装Gitlab服务器来实现代码的版本控制功能,RedHat默认源由于GFW的问题都无法正常请求到Gitlab包,可以在百度上搜索清华Redhat源,很快就能够下载好需要的软件...

2018-07-13 20:04:01 6103

原创 手动生成APK文件

前言学习Android很长一段时间,一直都是使用开发工具生成APK文件,所有的Android打包过程基本上都是透明的,开发人员很难搞清楚底层的编译打包过程究竟是如何进行的。这里使用简单的只包含一个Activity和一个Service的手动打包来深入了解APK打包的每个过程。aapt资源打包打包最开始是处理资源和AndroidManifest文件,处理之后的各种资源会编译出一个R.j...

2018-07-05 21:09:11 4203

原创 Javassist分析类依赖和动态代理实现

前言Javassist作为一款强大的class编辑器,它能够读取class文件内容,class文件的常量池中包含了当前类所有需要交互的其他类。要获取当前类所有依赖的类,只需要先获取当前类直接依赖的类,再继续广度优先遍历直接依赖类依赖的类,最终遍历了整棵依赖树之后就能获取当前类依赖。对于动态代理其实也是通过在运行过程中动态新的代理类,代理类不但会增加额外的用户逻辑,还会调用被代理对象的对应方法,...

2018-07-05 19:18:44 1811

原创 Javassist基础使用

前言Javassist是日本人开发的一款编辑class字节码框架,可以用来检查、动态修改及创建Java类。与JDK自带的反射功能相比Javassist功能更加强大,熟练使用Javassist工具对提高Java动态编程有着重要意义。常用类ClassPool:javassist的类池,使用ClassPool 类可以跟踪和控制所操作的类,它的工作方式与 JVM 类装载器非常相似。 Ct...

2018-07-05 18:02:28 1099

原创 Java Class文件格式简析

前言Java开发只需要编写Java代码之后通过javac命令将其编译成.class文件,.class文件可以被JVM虚拟机加载并执行。如果需要Java能够像动态语言那样编码,通常需要修改.class文件的内容,这种情况下了解.class文件的内部结构就很有必要。类文件查看Java的class文件内容大致上包含如下的各种结构,如果某个节点有多个会被表示成数组结构,数组的长度通常都在实...

2018-07-04 20:40:33 3279 1

原创 Smali简介和实现类外调用父类方法

前言通常基于Java语言开发程序都是通过调用javac编译器将源代码编译成.class文件,这种文件能够被JVM识别,加载并执行的文件格式(除了常见的java源代码生成的class文件,其他的Scalar、Python和Groovy等语言都可以生成class文件,每个类和接口都单独占据一个class文件)。不过class文件内存占用量大,不适合移动端,采用堆栈的加载模式,文件IO操作多,cla...

2018-07-04 17:30:36 1549

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除