自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【源码分析】BroadcastReceiver启动源码分析

1.实际使用流程(1). 创建一个类继承自BroadcastReceiver(2). 注册:静态注册,动态注册(3). 消息发送创建一个类:public class MyReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) {...

2020-04-21 17:19:50 250

原创 【源码分析】Service启动过程

service有两种工作状态,两种状态可以共存启动状态,主要用于执行后台计算绑定状态,用于其他组件与service的交互(1)启动Service/** 通过startService()来启动一个Service**/Intent intent = new Intent(this,MyService.class);startService(intent);/** 进入Cont...

2020-04-21 17:17:11 301

原创 【源码分析】Activity的启动流程分析

(基于API25分析)/** 使用过程中启动一个Activity**/startActivity(new Intent(this, UserMangerActivity.class));/** 最终执行到的是startActivityForResult()方法**/ public void startActivityForResult(@RequiresPermission ...

2020-04-21 17:13:36 257

原创 【源码分析】Retrofit分析

1 Retrofit 使用 mRetrofit = new Retrofit.Builder() //1.1 .baseUrl(HttpConfig.baseURL)//1.2 配置服务器路径 .addConverterFactory(MyGsonConverterFactory.create())//配置转化库,Gson//1.3 添加数据转换工厂 .addCallAda...

2020-04-21 17:09:40 165

原创 【源码分析】View绘制流程

绘制的起始流程起于ViewRoot 的实现类 ViewRootImpl 里面的performTraversals()方法,在此方法中实现onMeasure , onLayout , onDraw 等流程,流程图如下:一. MeasureSpec(测量规格)的获取流程:顶级View–DecorView里面,在ViewRootImpl 类中的performTraversals()里面 —&g...

2020-04-21 17:06:51 150

原创 【源码分析】Android消息机制

Android消息机制ThreadLocal分析是一个线程内部存储类,数据存储后,只能通过指定的线程读取,其他线程无法获取。set()、 get() 方法操作的都是当前线程ThreadLocalMap对象里面 的table数组。/** 保存数据:set方法**/ public void set(T value) { Thread t = Thread.currentT...

2020-04-21 17:00:30 222

原创 Android 低功耗蓝牙(BLE)开发(4)-- 蓝牙扫描和连接

在了解了API里面的常用类和方法后,现在来看蓝牙打开和扫描的实现蓝牙扫描实现的基本步骤如下:1.添加权限 2.判断设备是否支持BLE 3.判断蓝牙是否开启,如果未开启,则弹出开启窗口 4.开启后,开始进行蓝牙扫描 5.通过BluetoothAdapter.LeScanCallback获取扫描结果下面具体来实现蓝牙的扫描过程1.权限的添加在AndroidMani

2017-01-13 22:35:25 5970 1

原创 Android 低功耗蓝牙(BLE)开发(3)-- BluetoothDevice详解

一. 概述代表一个远程蓝牙设备。通过此类可以查询其名称、地址、连接状态等信息。这个类的操作会执行在远程蓝牙硬件上,BluetoothDevice获取方法:1.使用BluetoothAdapter.getRemoteDevice(String)方法去创建一个已知MAC地址的设备2.通过 BluetoothAdapter.getBondedDevices()得到已经配对

2016-12-24 21:55:49 9379

原创 Android 低功耗蓝牙(BLE)开发(2)-- BluetoothAdapter详解

来看一下官方的API文档接口定义主要有:主要类有:下面来对我们使用到的一些类进行说明BluetoothAdapter类1.概述代表本地蓝牙适配器设备,通过该适配器来对蓝牙执行一些基本的任务,如:初始化设备的搜索, 查询可匹配的设备列表,使用一个已知的Mac地址来初始化一个BluetoothDevice类,创建一

2016-12-20 22:44:54 1859

原创 Android 低功耗蓝牙(BLE)开发(1)-- 基本概念

1. 名字的由来公元940-985年,哈洛德.布美塔特(Harald Blatand),后人称Harald Bluetooth,统一了整个丹麦。他的名字“Blatand”可能取自两个古老的丹麦词语。“bla”意思是黑皮肤的,而“tan”是伟人的含义。和许多君王一样 ,哈洛德四处扩张,为政治、经济和荣誉而征战。公元960年哈洛德到达了他权力的最高点,征服了整个丹麦和挪威。而蓝牙是这个丹麦国王Vikin

2016-12-17 10:47:15 1114

原创 Android自定义UI实战(基础篇3)---图标圆弧运动

先上效果:实现基本步骤;1.背景和圆弧的绘制:在此使用到背景图片如下,我们可以根据需求更换成自己的图片2.图标源着圆弧绘制 3.左滑,右滑的处理一 、圆弧背景的实现关于背景的截取,在此使用BitmapShader来实现,不明白BitmapShader实现原理的可以学习一下这篇文章:http://blog.csdn.net/harvic880925/article/details/52039081

2016-12-04 17:42:54 1642

原创 Android自定义UI实战(基础篇2)---搜索酷炫界面

在实现搜索功能的时候,比如蓝牙搜索,附近热点搜索等,通常我们需要一个比较友好的界面,以下通过自定义View来实现一个搜索界面。效果图如下: 当实现一个这样的动画的时候,思路是这样的呢?将整个View拆分,可以分为三个部分。第一部分: 实现中间的图片 第二部分: 实现扩散的圆 第三部分: 实现游标转动这样一个酷炫的搜索效果就出来了,用到的资源文件主要有两张图片:首先自定

2016-11-10 16:17:50 1232 2

原创 Android自定义UI实战(基础篇1)---组合控件封装

在实际开发过程中,我们会碰到许多这种界面, 下面来介绍怎样封装成为一个通用的控件1. 首先新建一个类,在这里继承自FrameLayout,实现对应的构造方法 public class ItemGroup extends RelativeLayout{ public ItemGroup(Context context) { super(co

2016-11-09 14:08:57 5615 2

空空如也

空空如也

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

TA关注的人

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