自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 探究android-aidl---bindService的绑定及其内部原理

bindService的用法 private IMyAidlInterface iMyAidlInterface; private void bindService() { Intent intent = new Intent(); intent.setComponent(new ComponentName("com.example.aidlserver", "MyService")); bindService(intent, service

2021-03-12 12:33:27 9155

原创 探究StartService的启动与其原理

前言启动服务-基本使用通过将 Intent 传递给 startService() 或 startForegroundService(),从 Activity 或其他应用组件启动服务。Android 系统会调用服务的 onStartCommand() 方法,并向其传递 Intent,从而指定要启动的服务。Intent intent = new Intent(this, MyService.class);startService(intent);MyService.javapublic class

2021-03-05 16:49:40 8694 2

原创 binder应用层的学习——ADIL的使用与原理

使用aidl首先看下应用使用aidl时的代码:①在服务端和客户端创建aidl文件服务端// IMyAidlInterface.aidlpackage aidl.com.example.test;interface IMyAidlInterface { void hi(String s); String bye(int s); void hello(int s);}客户端// IMyAidlInterface.aidlpackage aidl.com.exampl

2021-02-24 17:43:43 8508

原创 [framework]android - 四大组件 - 动态广播的注册和收发原理

在安卓中,广播的接收有动态注册和静态注册两种方式,这篇博客沿着动态广播的注册、发送和接收三条路线开展探究。动态广播的注册首先,先整理一波动态注册的鸟瞰图从图中可以看到1)代码中调用的egisterReceiver(BroadcastReceiver, IntentFilter),在ContextImpl.java中实现(关于Context和Activity的关联,可以翻看我的前一篇博文),实际真正是ActivityManagerService去注册广播。2)再通过跨进程通讯(这里采用的是bind

2021-01-27 17:14:14 8564 1

原创 探索APP进程的启动流程(一)

未开始

2021-01-06 17:15:02 8682

原创 探索APP进程的启动流程(二)完结篇

首先回顾下冷启动的流程图:共有四个步骤:1.launcher进程通过binder请求ams启动Activity,AMS进程查询内存中是否存在该进程。2.内存中无相应进程,ams通过socket发送创建进程命令和相关资料到zygote进程。3.zygote进程收到socket信息后,fork子进程,创建出ActivityThread的进程(目的进程)4.ActivityThread通过binder把新建的进程信息与AMS进行相关联。在上一篇博客中,介绍了从用户点开app到发送指令给zygote进

2021-01-06 17:14:51 8395

原创 靠谱的app加固分享(已完成)

先来看看大概流程加固俯瞰1、编写加密方法,作为工具方法用于后续的加密和解密准备。2、编写代理Application(ProxyApplication),作为加固后的apk的伪入口。(ProxyApplication作为伪入口时,需要将加密apk进行解密并重新加载于classLoader中)3、将1、2步的文件打包成aar包。4、解压aar包(于aarTemp文件夹),并将解压后的jar文件,编译成dex文件(Entrance.dex)(安卓虚拟机可识别的机器码文件)。5、对需要加密的apk的An

2020-09-14 17:22:12 11526 1

原创 [framework]了解android的各种Context

这里写目录标题

2020-08-07 18:55:54 9006

空空如也

空空如也

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

TA关注的人

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