Android
微光长明
成为一道微光、直到闪耀
展开
-
代理模式--如何快速切换APP的三方框架
文章目录定义简单说明快速切换网络框架设计1. 通用规则设计2. 具体的代理对象3. 对通用规则适配的三方框架4. 调用方的使用及切换DemoApp开发过程中,会涉及到很多三方支持组件的使用,比如网络框架,在重度依赖某框架的情况下,一旦发生不得不进行的替换,所带来的工作量将是巨大的,而如果前期对第三方的使用进行了代理控制,我们所做的工作将会大量减轻定义代理模式(Proxy):为其他对象提供一种...原创 2020-03-28 19:12:04 · 382 阅读 · 0 评论 -
Handler 工作原理简析及手写自定义Handler
文章目录1. Handler概述2. 工作原理简析(一起送快递)2.1 工作原理简述(如何送快递?)2.2 主要相关类(谁在帮你干活?)1. Handler(快递小哥做什么?)2. MessageQueue(快递仓库做什么?)3. Looper(流水线做什么?)4. Thread (快递公司做什么?)5. Message(快递做什么?)3. 仿照源码通过自定义Handler来熟悉各功能重点3....原创 2020-02-12 12:17:57 · 553 阅读 · 0 评论 -
Android动态权限适配解决方案
文章目录动态权限适配方案1. 权限管理的更改2. 危险权限的申请方案2.1 基本的权限申请2.2 权限申请方案封装3 危险权限清单4.Demo代码动态权限适配方案1. 权限管理的更改Android 6.0之前,权限的申请在清单文件中注册即可(用户安装App时会列出安装的App的访问权限,而且只有安装时会出现一次)Android 6.0开始,权限除了在清单文件中注册,部分危险权限需要在使用...原创 2020-02-03 14:21:28 · 968 阅读 · 0 评论 -
如何确定Android设备唯一识别码
文章目录应用设备唯一识别码的解决方案方向一:使用硬件标识1. 使用 DEVICE_ID2. 使用 ANDROID_ID3. 使用 MAC ADDRESS4. 使用 SERIAL NUMBER5. 硬件标识的优势与局限性方向二 使用UUID趋于完美的方案希望但又矛盾的完美方案名词解释应用设备唯一识别码的解决方案唯一标识必须满足两个特性才能完美解决定位唯一设备的问题,但这个问题的解决却注定只能极...原创 2020-01-14 10:55:08 · 2329 阅读 · 0 评论 -
阿里云推送 AndroidSDK 3.0 快速集成
文章目录0.控制台中配置好产品应用1.1配置根目录的 build.gradle文件1.2配置要接入module的build.gradle文件1.3配置清单文件2. 接收消息配置--Receiver2.1 Recevier方法简析3. 注册使用与调试3.1 自行抽取配置使用3.2 官方使用3.3 使用辅助快速集成官方文档在这里,这里只关心在Android接入时的必要步骤与相关配置,满足快速接入并调...原创 2020-01-07 11:11:11 · 1465 阅读 · 0 评论 -
属性动画基础全记录
文章目录使用1. ObjectAnimator、ValueAnimator1.1 使用属性动画来实现简单的View动画2. 插值器与估值器2.1 时间插值器 TimeInterpolator2.2 估值器 TypeEvalutor3.属性动画监听3.1 AnimatorListener3.2 AnimatorPauseListener3.3 AnimatorListenerAdapter3.2 A...原创 2020-01-02 22:09:07 · 149 阅读 · 0 评论 -
基础动画全纪录
文章目录1. View/(Tween)补间动画 Animation1.1 平移 TranslateAnimation1.2缩放 ScaleAnimation1.3旋转 RotateAnimation1.4 透明度 AlphaAnimation1.5 动画集合2. 帧动画/AnimationDrawable3. 自定义动画4. 使用补充4.1 动画监听4.2 插值器4.3 特殊使用场景1. Vie...原创 2019-12-16 19:51:33 · 257 阅读 · 0 评论 -
ContentProvider基础全纪录
文章目录1. 定义2. 使用1. 使用 ContentResolver访问其他应用中数据2. 创建ContentProvider提供给其他应用程序访问本应用数据2.1 实现说明2.2 自定义ContentProvider2.3 使用3. 问题1. 定义Android四大组件之一用于在不同应用程序之间实现数据共享的功能内容提供其可以选择只对哪一部分数据进行共享,保证隐私数据的安全性2...原创 2019-12-16 16:46:07 · 207 阅读 · 2 评论 -
Broadcast基础全记录
文章目录1. 什么是Broadcast2. Broadcast使用2.1 广播类型广播的发送定义广播接收器广播注册2.3 本地广播的使用1. 什么是BroadcastAndroid四大组件之一为了便于进行系统级别的消息通知,引入的类似广播的消息机制2. Broadcast使用Android中的广播使用更加灵活,可以自行对感兴趣的广播内容进行注册,这样就只会接受到自己关心的内容...原创 2019-12-12 15:01:42 · 362 阅读 · 0 评论 -
Activity的启动与管理之图记表查
Activity 作为AndroidApp重要的组成之一,它的创建、运行和维护也是我们必须知悉的一部分;Activity的创建是由开发人员决定,它的运行与维护则由系统通过任务栈进行协助管理,我们通过配置指定的启动模式来实现我们App的良好使用Activity的管理——任务栈任务栈Android Task 是用来存放Activity实例的容器,Android系统可以通过Task可以有序的对每个...原创 2019-04-08 22:56:58 · 230 阅读 · 0 评论 -
Activity的生命周期之图记表查
生命周期方法调用时机说明onCreate在Activity第一次被创建时在此完成各种初始化操作onStart在Activity即将可见时onResume在Activity准备好与用户交互onPause在用户跳转另一个Activity或可见但不可交互时此处不能进行一些耗时操作,因为会影响新Activity的显示onStop在Acti...原创 2019-03-28 15:15:05 · 176 阅读 · 0 评论 -
ConstraintLayout使用详解——怎么用在这里都能找到
ConstraintLayout使用详解ConstraintLayout 官方文档相对定位定位规则为:app:layout_自身位置_相对位置=“目标控件id/parent(父布局)”自身位置 : constraint+left/start/right/end/top/bottom相对位置:_to+left/start/right/end/top/bottom注意:lay...原创 2019-03-22 23:16:19 · 1367 阅读 · 0 评论 -
数据持久化--SharedPreference
大致说明 SP常用于对基本配置信息的保存,一处修改,多处读取配置,一般在项目中会用于对用户名的保存、APP是否初次进入等配置,适合存储简单、轻量级的数据存储。 使用步骤大致为 获取SP对象、通过SP获取编辑器 editor,通过editor进行添加、修改、移除K-V,清空或者其他操作,但进行操作之后务必要进行提交操作,否则操作将无法生效。 开发过程中,一般会将这些操作进行封装,省去重...原创 2019-03-14 20:38:16 · 315 阅读 · 0 评论