自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 AMS启动应用程序

进程启动与Activity创建Launcher向ActivityManagerService请求启动APP的根Activity。Activity首先经由mInstrumentation.execStartActivity,然后通过AMS的代理IActivityManager进入到了AMS,这里使用Binder。到了AMS先会进入到ActivityStarter,解析Intent#Action获得目标Activity的ActivityInfo,对权限等进行一些列校验并创建ActivityReco

2021-12-16 21:55:42 352

原创 Binder IPC通信原理

Binder 设备是 misc dev,即没有具体的设备,但它同样有驱动并且需要被加载。Binder 通信模型Binder Driver (Kernel)binder_init():创建设备节点“/dev/binder”驱动在内核启动时被加载。device_initcall(binder_init); // kernel/linux-5.14.10/drivers/android/binder.cret = init_binder_device(device_name);st.

2021-12-16 14:50:50 497 1

原创 Dalvik VM 进程系统

系统进程启动流程Android系统架构Linux Kernel硬件抽象层 Hardware Abstraction Layer(HAL)Native C/C++ LibrariesAndroid RuntimeJava API FrameworkSystem AppsOS启动流程1. Boot Rom -> Boot Loader2. Kernel内核启动时,设置缓存、被保护存储器、计划列表, 加载驱动。当内核完成系统设置,它首先在系统文件中寻找”init”文件.

2021-12-16 14:34:22 1742

原创 一些简单笔记

### 像素单位适配在代码里面的像素大小其实对应是 px 而不是 dp在屏幕分辨率 320 480的时候,1px=1dp,屏幕密度值是1, 每英寸160像素点让代码里面的数字使用dp来计量 ## ?// 根据dp 转换成px 值int size= getResources().getDimensionPixelSize(R.dimen.dot_size);-------

2021-12-16 13:41:08 75

原创 Android shape Java代码实现 (待续)

line 线性oval 椭圆形rectangle 矩形ring 环形

2016-10-07 14:39:39 2288 1

原创 flowlayoutlibrary源码释放(待续)

package com.example.flowlayoutlibrary;import android.content.Context;import android.util.AttributeSet;import android.view.View;import android.view.ViewGroup;import java.util.ArrayList;import j

2016-10-07 14:21:42 268

原创 Layout图片宽高自适应

范例:RatioLayoutTODO 包裹ImageView,适配宽度或高度,解决宽度或高度二次缩放问题public class RatioLayout extends FrameLayout { private static final String TAG = "RatioLayout"; private static final int MOD

2016-10-06 19:49:59 804

空空如也

空空如也

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

TA关注的人

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