logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

epic hook性能监控

Epic 是一个在虚拟机层面、以 Java Method 为粒度的运行时AOP Hook 框架。简单来说,Epic 就是 ART 上的Dexposed(支持 Android 5.0 ~ 11)。它可以拦截本进程内部几乎任意的 Java 方法调用,可用于实现AOP 编程、运行时插桩、性能分析、安全审计等。Epic:GitHub - tiann/epic: Dynamic java method AO

#android#kotlin#java
面试:Java中的泛型会被类型擦除,那为什么在运行期仍然可以使用反射获取到具体的泛型类型

要想理解这个问题,首先应该对java虚拟机class文件有一定的理解,然后对这个问题的理解就会非常清晰。众所周知,java是在Java5的时候引入的泛型,为了支持泛型,JVM的class文件也做了相应的修改,其中最重要的就是新增了属性表,java编译为字节码后,其申明侧泛型信息都存储在Signature中,通过反射获取的泛型信息都来源于这里。而Signature属性表可以被class文件,字段表,

文章图片
#java#jvm#servlet
安装Santoku

安装环境为:Win10+VMware WorkStation 12+Santoku安装VMWareStation时注意创建新的虚拟机时候选择稍后安装操作系统,新建虚拟机时,最开始出现的问题,新建向导提示无法识别的光盘问题。原因很简单,VMware只能识别官方系统安装光盘,这里只能使用官方系统光盘(官方安装方法看之前发布的经验)或者直接选择“稍后安装操作系统”选项,并完成虚拟

面试:各种热修复框架对比

为每个类插入一个ChangeQuickRedirect类型的静态变量,当这个字段为空时,执行旧的方法,不为空时,就可以对badMethod做拦截,执行新的逻辑,替代掉badMethod,从而达到修复的目的。超级补丁技术基于DEX分包方案,使用了多DEX加载的原理,大致的过程就是:把BUG方法修复以后,放到一个单独的DEX里,插入到dexElements数组的最前面,让虚拟机去加载修复完后的方法。与

#面试#职场和发展
面试:Art虚拟机和Davlik虚拟机简要对比

Android 4.4以后推出了ART虚拟机,它与Davlik虚拟机最大的不同在于,系统在安装应用时会对其进行预编译一次,将字节码转换成机器指令,以后每次启动不会重新编译,直接运行本地机器码。直接上图:Art与Davlik加载过程.pngJava虚拟机首先先来说一下java虚拟机,不管是Art虚拟机还是Davlik虚拟机,首先第一步需要得到.class字节码。Java虚拟机加载的是.class字节

#面试#java#职场和发展
Android studio模拟器架构选择arm还是x86 解决报错MissingLibraryException

首先,如果你的APP可以正常安装包括第三方或者自己编译的,那么就用x86,因为这个架构的虚拟机很快;如果像我一样,编译出的apk中的so都是ARM的,那么就需要ARM架构的虚拟机,否则就会报下面的错误。x86兼容性不够 , 很多app装不上 或者装上了不能玩。市面上的模拟器大多是x86的,因此如果安装不上的话,可以考虑是否是不支持x86架构的原因。用的谷歌官方的模拟器, intel x86 系统镜

#x86
JVM垃圾回收--年轻代、年老点和持久代

虚拟机中的共划分为三个代:年轻代(Young Generation)、年老点(Old Generation)和持久代(Permanent Generation)。其中持久代主要存放的是Java类的类信息,与垃圾收集要收集的Java对象关系不大。年轻代和年老代的划分是对垃圾收集影响比较大的。  年轻代:  所有新生成的对象首先都是放在年轻代的。年轻代的目标就是尽可能快速的收集掉那些生

#jvm#虚拟机
Android studio模拟器架构选择arm还是x86 解决报错MissingLibraryException

首先,如果你的APP可以正常安装包括第三方或者自己编译的,那么就用x86,因为这个架构的虚拟机很快;如果像我一样,编译出的apk中的so都是ARM的,那么就需要ARM架构的虚拟机,否则就会报下面的错误。x86兼容性不够 , 很多app装不上 或者装上了不能玩。市面上的模拟器大多是x86的,因此如果安装不上的话,可以考虑是否是不支持x86架构的原因。用的谷歌官方的模拟器, intel x86 系统镜

#x86
Android圆形头像轮播闪动实现

项目中需要使用头像可以循环轮播的效果,哈哈,啥也不说,先上效果图,不要看例子花里胡哨的,其实只是中间那四个头像啊!单独抽出来是右边这样的图片效果,这里是搞了个按钮开启自动更新的任务。          要想使用自动轮播头像闪动,首先需要圆形的头像,这个圆形的头像图片使用的是一个叫CircleImageView的开源控件,大家可以参考下面这篇博客,  https://blog.csd...

Android网络安全之NetworkSecurityConfig

google在android p为了安全起见,已经明确规定禁止http协议额,但是之前很多接口都是http协议,我们一般是这样解决的:在res目录下创建xml目录,然后随便创建一个.xml文件,里面内容如下:<?xml version="1.0" encoding="utf-8"?><network-security-config><base-config clear

    共 20 条
  • 1
  • 2
  • 请选择