自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(528)
  • 资源 (13)
  • 问答 (4)
  • 收藏
  • 关注

原创 Kotlin协程源码分析-7 Context左向链表

Context如何存储对象在自身

2020-03-24 21:01:43 822 3

原创 Kotlin协程源码分析-5 状态机

上文链接:Kotlin协程源码分析-4 状态机在上文中最后一行 “挂起函数的Continuation对象如何才能获取?”。“如何返回一个挂起标识符COROUTINE_SUSPENDED”。本文将做就这两个问题详细介绍获取挂起函数的Continuation对象你可以直接看kotlin协程库实现方式得到答案。这里直接给出答案。suspend fun mySuspendOne() = susp...

2020-03-23 21:53:27 1829 7

原创 Kotlin协程源码分析-4 状态机

今天就来分析所谓的协程的状态机首先来看一个问题,我们知道suspend 函数会在编译后生成一个传入continuation的函数。那么我们如何自己拿到这个传入的对象呢?这个对象又有什么作用?请看如下代码即可//com.example.studycoroutine.chapter.four.MyCoroutine.ktsuspend fun commonSuspendFun(): Stri...

2020-03-22 21:49:10 2559 3

原创 Kotlin协程源码分析-3 调用挂起函数

上文链接 Kotlin协程源码分析-2 调用挂起函数继续上文从编译后的字节码继续分析,继续查看上篇文章的源码//com.example.studycoroutine.chapter.two.CoroutineRun.ktfun testOne(){ val myCoroutineFun: suspend () -> String = { logD("返回 he...

2020-03-22 18:36:20 1456 2

原创 Kotlin协程源码分析-2 调用挂起函数

引语我们假设有如下挂起函数//com.example.studycoroutine.chapter.CoroutineRun.ktsuspend fun suspendFun(): Int { return 1;}上面的代码在kotlin编译的时候会变成如下函数 @Nullable public static final Object suspendFun( Contin...

2020-03-22 17:11:49 2014 6

原创 Android事件分发总结

总是忘记又要去看源码所以直接记下结果方便以后阅读:假设当前是假设View的ClickAble为false(如果为true默认消费事件)decorView我们接触不到但是我还是想写下来事件传播(默认):触摸事件按下1 Activity->dispatchTouchEvent2 decorView->dispatchTouchEvent 不做详细分析因为我们开发者控制不到3...

2019-09-18 11:18:21 224 2

原创 Mysql事务隔离与Spring

本文结合Spring讲解Mysql事务隔离与可读事务事务事务个人定义:某一任务序列的集合。举例:小明在银行取钱的一个序列小明插卡输入密码取款金额ATM吐纸钞退卡上面5个步骤合在一起我们就称为一个事务。在Mysql我们可以理解多个Sql语句的合集。如下Sql:# 小明给小张转账update User set money=money-23 where username='小明'...

2019-06-30 05:28:20 357

原创 Android 转场动画葵花宝典

文章目录概述Android 2.0 转场动画Android 4.4 场景动画Android 5.0 共享元素动画概述转场动画: 两个不同界面间的衔接动画效果如下图:在Android 不同版本提供了对应ApiAndroid 2.0 比较简单的淡入淡出 滑出动画 4.1 后被ActivityOptions代替Android 4.4 场景动画(Scene)Android 5.0 共享...

2019-06-21 14:49:06 347

原创 Interger一些关于==和equals的知识

以前一直忽略的知识现在补上public class MainTest { public static void main(String args[]) { Integer integer_one = 3; Integer integer_two = 3; Integer integer_three = 129; Inte...

2018-11-01 20:03:40 634

原创 rxjava源码分析之scheduler

本文基于1.3.8版本分析 rxjava线程切换分析代码如下: // 被观察者(事件源) Observable<String> stringObservable = Observable.create(new Observable.OnSubscribe<String&

2018-09-02 00:15:47 963

原创 读后感-Android ART运行时无缝替换Dalvik虚拟机的过程分析

老罗原文地址 ART启动流程  高清无码流程图dadao.png      art安装apkdex2oat.png​

2018-08-01 15:17:47 694

原创 微信6.6.7版本摇塞子破解思路(居多图)

工具:JEB ,apkiller,AS,smaliIDE(动态调试) BuildProp Enhancer 是一个Xposed软件,可以让apk在不开启debugable的时候进行动态调试在你无从下手的时候我使用DDMS中的traceView工具来帮助我们减少工作量。 打开微信界面 打开DDMS,在divices对应的启动应用列表中选择腾讯微信对应包名(com.tencent...

2018-07-28 00:18:49 5022 1

原创 arm偏移计算

https://blog.csdn.net/zhangmiaoping23/article/details/43445797流水线知识 可以方便理解为什么偏移的时候arm要+8(执行的某处代码时,已经完成下一行指令的译码,和在下来一行的指令的取码): https://blog.csdn.net/haoge921026/article/details/46686367...

2018-07-22 14:33:19 1210

原创 IDA PRO调试和修改

用到的APK是2016腾讯安全比赛的apk的第一题. apk地址: https://download.csdn.net/download/qfanmingyiq/10556311科普知识: android 若有so库会放置于 data/app-lib/package/或者data/data/package.IDA 动态调试步骤反编译apk 在清单文件添加debugable=t...

2018-07-21 23:47:56 11705

原创 android逆向-动态调试1

本文采用过时apktool动态调试功能.请采用apktool2.10以下版本(高版本废弃,后面第二篇文章在讲新方法).工具:apktool2.10Android studio 3.0.1Android studio自带的模拟器 (android 7.1版本)signapk.jar或者jarsigner.exe(mac或linux忽略后缀)当然还有电脑一台 备注 ...

2018-07-14 19:37:07 1923

原创 Android逆向之旅

apk打包流程https://www.jianshu.com/p/7c288a17cda8[可选]手动开始打包一次apk慢慢记录…

2018-07-12 00:32:08 626 1

原创 Arralist源码分析

在看源码之前先看两个API:1. int [] Arrays.copyOf(int[] original, int newLength)2. System.arraycopy(Object src, int srcPos,Object dest, int destPos,int length);两个代码功能相似.解析如下Arrays.copyOf 申请newLength长度...

2018-04-02 23:40:59 252

原创 LCS最长公共序列java实现模板

不提供思想 提供了就是制作车轮子.网上太多了没意义import java.lang.reflect.Array;import java.util.Arrays;import java.util.Scanner;public class Main { public static void main(String[] args) { String a = ...

2018-03-26 22:33:59 193

原创 腾讯暑假实习在线笔编程试模拟试题-正方形判断

2018年3月23日牛客网举行了腾讯实习在线模拟笔试先看题目:正方形判断 思路1: 用4个点,任意三点组成一个等边直角三角形,并且斜边是直角边的根号2倍(设斜边为y,那么和直角边为x 那么可以推出 y=(√2)*x ). 原理:正方形你可以看着是由两个三角形拼接而成.正方形任意三点组合成等边直接三角形. 这个比较简单我就不列出代码了.可以利用数学向量...

2018-03-24 16:38:39 1167

原创 android转场动画精品文章收集

你所不知道的Activity转场动画——ActivityOptions Android5.0之Activity的转场动画 Android 自定义Activity过场动画 Android 过渡(Transition)动画解析之基础篇 用开源项目ActivityOptionsICS让ActivityOptions的动画实现兼容总结1:5.0转场动画基于4.4的trasition a

2018-01-24 21:54:29 335

原创 Kotlin-databing遇到的错误

出现错误: Error:(16, 38) Unresolved reference: databinding Error:(37, 27) Unresolved reference: FragmentDataBinding解决方法:// at the top of file apply plugin: 'kotlin-kapt'android { dataBinding.enabl

2017-11-15 17:26:20 1027

原创 Xposed遇到的坑

如果某个APP的dex有多个在安卓5,0以上ART会合成一个oat文件。那么5.0以下会存在多个dex。 所以在5.0以下hook一个某个方法,而这个方法不在主dex,而存在分包dex。此时xposed会在没有加载分包dex的时候进行回调handleLoadPackage().此时类加载器并没有加载分包里面的类 会导致 XposedHelpers.findAndHookMethod 抛出异常。解决

2017-10-23 20:58:21 7348 1

原创 KMP next数组讲解

本文只讲解KMP子串keyString(下标用j表示),中和源字符串SoureceString(下标i表示)某次匹配失败后。下次匹配j的取值。 关于KMP算法入门可以看看其他博文(最主要网上关于这个算法写烂了,我这里只记录下我学习不懂的地方)前言在学KMP算法的时候一直感觉next数组的实现是让我最头痛的。所以现在回过头写下笔记,方便以后再看。规则: 1. keyString(子串)的ne

2017-10-05 13:42:14 513

原创 在阿里搭建FTP服务的坑

坑死了 什么安全云 还有安全策略1 在阿里云控制台开启端口很重要很重要很重要很重要很重要很重要 我这里开启了全端口. -1/-1就是全端口2 关闭安骑士当你后面运行有问题的时候再关。安全云相当于安全狗.有时候发起疯来乱咬人。我在用的时候被误当黑客了。。。害我FTP总是连接不上安装FTP输入命令 1 yum install vsftpd 安装 2 chkconfig vsftpd on 开机自

2017-09-27 17:23:07 647

原创 AIDL源码分析

前言本文是本人研究AIDL时候的笔记,包含很多UML图和截图,内容仓促且不包含驱动层分析,如下文有错漏还请指出(容我精通Linux和C++后杀入,很可惜现在太菜)服务端首先写一个AIDL文件 如下:// IMyAidlInterface.aidlpackage com.fmy.changevoice.aidl_resource;interface IMyAidlInterface { v

2017-09-26 13:51:04 1102 2

原创 AOP之使用AspectJ案例

这篇文章作为自己学习笔记: 国内翻译教程AOP翻译过来 “面向切面”。如果非要用一句话来理解的话:”在程序编译或者运行时,在代码某处切入另一段代码”。AOP的出现是弥补OOM的不足。 作者:知乎用户 链接:https://www.zhihu.com/question/24863332/answer/48376158 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非

2017-09-12 22:07:03 776

原创 交叉编译

在android开发的时候需要经常编译第三方c库文件,可你编译的时候在电脑 运行在adnroid上,所以需要交叉编译实现。–sysroot 的作用 如果在编译时指定了-sysroot就是为编译时指定了逻辑目录。编译过程中需要引用的库,头文件,如果要到/usr/include目录下去找的情况下,则会在前面加上逻辑目录。这里可以简单的理解我需要目标平台系统的某个文件这时候我可以同过这个地址去获取

2017-08-24 00:06:45 2577

原创 NDK报错将报错行转换

使用sdk的工具arm-linux-androideabi-addr2line -e J:/mars-jee/dn_ffmpeg_player/obj/local/armeabi/libmyffmpeg.so 0x580001d

2017-08-23 22:15:01 546

原创 android编译x264

本人在linux下编译。下载ndk官方下载地址这里推荐用 linux指令下载 wget 命令wget 目标URL地址 下载后解压配置NDK环境变量这一步其实可以省略 运行如下命令: 1. vim /etc/profile 2. 在最后添加如下代码 NDKROOT=/home/fmy/android-ndk-r14b(你NDK的目录) export PATH=$

2017-08-08 22:10:04 3675

原创 javac编译 编码GBK的不可映射字符

这个问题很常见 解决办法:javac -encoding UTF-8 XX.java但是我们在使用android studio 自动帮我们自动化编译过程,或者我们使用编译时 注解时候想添加UTF-8的源码 可以采用如下方法: 配置环境系统变量: 变量名:JAVA_TOOL_OPTIONS 数值:-Dfile.encoding=UTF-8这样的好处之一就是android studio 右下

2017-07-25 16:43:06 787

原创 编译时注解参考文献

自定义注解之编译时注解(RetentionPolicy.CLASS)(一)Java注解处理器鸿洋的利用处理器完成ioc

2017-07-24 14:32:48 674

原创 Android使用ANativeWindow_fromSurface返回空

原因surfaceview没有创建完成的时候就获取导致的 解决办法: surfaceview.getHolder().addCallback(new SurfaceHolder.Callback() { @Override public void surfaceCreated(SurfaceHolder holder) {

2017-07-23 14:51:02 3309

原创 Kotlin遇到DataBind的坑

今天尝试用kotlin写android项目一上来就时一个坑 Error:(12, 29) Unresolved reference: databinding Error:(15, 53) Unresolved reference: ActivitySplashBinding Error:Execution failed for task ‘:app:compileDebugKotli

2017-07-12 13:01:29 2040

原创 FFmpeg解码音频

基于第一篇文章: 第一篇解码视频 我们知道mp4是视频格式,其实内部封装了音频的压缩数据,和视频的压缩数据,这篇文章将从视频中读取音频压缩数据,并且解压缩音频以下图片转载自 雷霄骅博士ppt音频的压缩格式有aac,和MP3等等.他们都是通过采样格式(pcm)转化而来如图: 几个术语采样率:采样频率,也称为采样速度或者采样率,定义了每秒从连续信号中提取并组成离散信号的采样个数,它用赫兹(

2017-06-10 16:59:15 3567 1

原创 RXJAVA学习资料整理

全新的网络加载框架Retrofit2,上位的小三 Retrofit 2.X使用详解之基本使用Retrofit各个注解的含义及作用 Android基于Retrofit2.0 +RxJava 封装的超好用的RetrofitClient工具类(六)给 Android 开发者的 RxJava 详解

2017-06-06 11:27:39 877

原创 用surfaceview播放FFmpeg解码视屏

关于FFmpeg解码请看第一篇教程:FFmpeg解码下载转码库libyuv一般我们用surfaceview播放视频都是才用RGBA格式等播放的,但我们解码之后的视频可能是h.264等等 所以我们这里不管解码的是什么格式直接转化为RGBA即可. 所以我们这里用ffmeg解码再用libyuv转码(谷歌推出的一个转码库)转码库:libyuv是谷歌推出一个转码库 libyuv官网地址(请科学上网)我

2017-06-04 20:14:16 3761 2

原创 安卓用ffmeg解码

本文章是用ffmeg解码封装格式(如mp4)转换为yuv420p保存到本地,本文是结合雷霄骅博客ppt和某地方学习的一个笔记(说出来等下被认为做广告就尴尬了)封装格式视频编码数据将封装格式解压后可以得到压缩过的音视频等. 将压缩过的视频解压后可以得到 视频像素数据(RGB,YUV等).常见的视频压缩格式有H.264, MPEG4等… YUV420P格式介绍YUV是视频像素格式,在压缩视频格式解

2017-05-31 13:16:32 3003

原创 AIDL基本使用5 客户端远程回调

案例完全借鉴 android开发艺术探索 使用情况:服务端回调客户端接口API介绍: CopyOnWriteArrayList 一个多线程安全的list集合.假设有两个线程对我们常用arrayList一个进行删除操作一个进行遍历操作,我们知道会丢出一个curseModify异常.而CopyOnWriteArrayList不会.因为CopyOnWriteArrayList会在增加或者删除集合

2017-05-22 10:14:38 859

原创 AIDL基本使用4—- 4、linkToDeath和unlinkToDeath

完全参考 任玉刚老师的书籍案例案例Binder运行在服务端进程,如果服务端进程由于某些原因异常终止,这个时候我们到服务端的Binder连接断裂,会导致我们的远程调用失败。Binder提供了两个配对的方法linkToDeath和unlinkToDeath,通过linkToDeath我们可以给Binder设置一个死亡代理,当Binder死亡时,我们会收到通知,这个时候我们就可以重新发起连接请求从而恢复

2017-05-18 17:56:49 2612

原创 AIDL基本使用3—-in out inout的用

在AIDL中客户端和服务端传入参数 是可以设置流向.仅限参数不包含返回值 1. in :客户端可以传入参数到服务到(默认方法) 2. out:服务端修改客户端传入参数对象 会影响客户端的传入实例 3. inout:服务端即可接受客户端参数也可以修改对其客户端实例影响这个标签在哪?这里用AIDL基本使用2的Demo作为案例:AIDL基本使用2在AIDL基本使用2案例中 IMy

2017-05-18 17:19:00 2107

MyDebugger.rar

MyDebugger.rar

2021-12-12

frida-12.8.20-py2.7-macosx-10.9-intel.egg

mac frida相关工具。如果你使用pip install frida-tools过慢时,请下载此资源,然后放入/Library/Python/2.7/site-packages/目录下

2020-04-05

腾讯2016安全比赛第一题

安全比赛第一题的题目apk.要求写出注册机.考点位于反编译后的so库.

2018-07-21

AIDL bindservice流程图

aidl binserive的流程图 内含png oom两个原文。http://blog.csdn.net/qfanmingyiq/article/details/78094417

2017-09-29

Android使用的libjpeg库文件

可以用于Android下使用libjpeg。内部有arm x86 x64的静态库和头文件

2017-08-29

电脑Gif制作器licecap126-install

电脑安装软件后移动窗口到某一区域点击record录制 然后按下stop键生成gif图

2016-10-20

Navicat Premium数据管理

Navicat Premium 可视化管理一些轻量级数据库如 mysql sqlite内含补丁

2016-09-07

仿QQ截图工具

一款仿照QQ截图的工具简单实用

2016-09-06

ColorCop屏幕取色器

获取屏幕某个点的RGB颜色值 无广告简洁 开发者必备

2016-09-05

fastjson 阿里巴巴json工具jar包

阿里巴巴的json解析生成 的jar包 如快速解析json生成javabean 或者javabean生成json

2016-09-02

fastjson 阿里巴巴的解析生成json工具

2016-09-01

GSON 包含源码和DOC

谷歌解析json工具

2016-09-01

json解析器

用于解析json数据 并且清晰的结构图

2016-08-30

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

TA关注的人

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