<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[瑜艾]]></title><description><![CDATA[路漫漫其修远兮]]></description><link>https://blog.csdn.net/xiaoru5127</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; xiaoru5127]]></copyright><item><title><![CDATA[Android 1.5到10.0 都有哪些新特性？]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/87365034</link><guid>https://blog.csdn.net/xiaoru5127/article/details/87365034</guid><author>xiaoru5127</author><pubDate>Fri, 15 Feb 2019 15:32:19 +0800</pubDate><description><![CDATA[转载
作者：嘟嘟呢
https://blog.csdn.net/u012758803/article/details/54844903
Android 1.5（Cupcake纸杯蛋糕）：
智能虚拟键盘；使用widgets实现桌面个性化；在线文件夹(Live Folder)快速浏览在线数据；视频录制和分享；图片上传；
更快的标准兼容浏览器；Voice search 语音搜索；立体声蓝牙和免提电话
A...]]></description><category></category></item><item><title><![CDATA[Android性能相关--性能指标篇]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/84862668</link><guid>https://blog.csdn.net/xiaoru5127/article/details/84862668</guid><author>xiaoru5127</author><pubDate>Thu, 13 Dec 2018 15:02:02 +0800</pubDate><description><![CDATA[数据概述
数据获取
CPU数据
/proc文件系统是一个伪文件系统，它只存在内存当中，而不占用外存空间。它以文件系统的方式为内核与进程提供通信的接口。用户和应用程序可以通过/proc得到系统的信息，并可以改变内核的某些参数。
/proc/&amp;amp;amp;amp;amp;amp;lt; pid &amp;amp;amp;amp;amp;amp;gt;/task/&amp;amp;amp;amp;amp;amp;lt; tid &amp;amp;amp;amp;amp;amp;gt;  ：  &amp]]></description><category></category></item><item><title><![CDATA[Android UI绘制 - 动画进阶]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/83825710</link><guid>https://blog.csdn.net/xiaoru5127/article/details/83825710</guid><author>xiaoru5127</author><pubDate>Thu, 22 Nov 2018 10:48:17 +0800</pubDate><description><![CDATA[Canvas、Layer

PS：addArc(Rect,startAngle,sweepAngle)中
startAngle：确定角度的起始位置
sweepAngle ： 确定扫过的角度，扫过的角度360为顺时针一圈,-360为逆时针一圈，但如果扫过的角度超过360则起点会变成0度而非startAngle百分比圆的时候特别注意，这时候一般设置为359
PS：saveLayer可以为canvas创...]]></description><category></category></item><item><title><![CDATA[Android UI绘制 - 动画基础]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/83754253</link><guid>https://blog.csdn.net/xiaoru5127/article/details/83754253</guid><author>xiaoru5127</author><pubDate>Wed, 07 Nov 2018 15:59:34 +0800</pubDate><description><![CDATA[帧动画
&amp;amp;amp;amp;lt;?xml version=&amp;amp;amp;quot;1.0&amp;amp;amp;quot; encoding=&amp;amp;amp;quot;utf-8&amp;amp;amp;quot;?&amp;amp;amp;amp;gt;
&amp;amp;amp;amp;lt;animation-list xmlns:android=&amp;amp;amp;quot;http://schemas.android.com/apk/res/andro]]></description><category></category></item><item><title><![CDATA[Android UI绘制 -- Drawable]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/83751574</link><guid>https://blog.csdn.net/xiaoru5127/article/details/83751574</guid><author>xiaoru5127</author><pubDate>Mon, 05 Nov 2018 16:19:03 +0800</pubDate><description><![CDATA[Drawable 功能
获取和设定可绘制区域
public final Rect getBounds()
 public void setBounds(int left, int top, int right, int bottom)
 public void setBounds(Rect bounds)
 //显示级别，从0到10000
public final boolean setLevel...]]></description><category></category></item><item><title><![CDATA[Android UI绘制 -- 屏幕适配]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/83624562</link><guid>https://blog.csdn.net/xiaoru5127/article/details/83624562</guid><author>xiaoru5127</author><pubDate>Fri, 02 Nov 2018 11:59:31 +0800</pubDate><description><![CDATA[#重要概念
屏幕尺寸
手机对角线的物理尺寸，单位英寸。
常见的有：5寸、5.5寸、6寸等
屏幕分辨率
手机在横向、纵向上的像素点数总和，单位px。
常见的有：1080x1980、720x1280/480x800等
屏幕像素密度
每英寸的像素点数，单位dpi。




密度类型
代表分辨率（px）
屏幕像素密度（dpi）




低密度（ldpi）
240x320
120


中密度（mdpi）
3...]]></description><category></category></item><item><title><![CDATA[Android多渠道打包]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/82855111</link><guid>https://blog.csdn.net/xiaoru5127/article/details/82855111</guid><author>xiaoru5127</author><pubDate>Wed, 26 Sep 2018 16:23:32 +0800</pubDate><description><![CDATA[



方案
介绍
优缺点




友盟多渠道打包方案
利用meta-data记录每个渠道，每个渠道都需要走一次打包流程
缺：打包速度慢


美团多渠道打包方案1
向apk的META-INF目录写入空文件，文件名即为渠道名
优：快速缺：Android7.0之后打包会记录文件结构,新增空文件导致签名不一致,无法使用


美团多渠道打包方案2 – Walle
通过在Apk中的APK Signature...]]></description><category></category></item><item><title><![CDATA[Android 资源、代码打包 && 签名过程&&资源查找过程]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/79141608</link><guid>https://blog.csdn.net/xiaoru5127/article/details/79141608</guid><author>xiaoru5127</author><pubDate>Thu, 20 Sep 2018 15:07:36 +0800</pubDate><description><![CDATA[1. 创建Android应用程序（利用SDK提供的android.bat批处理工具）


  android create project 
  Options: 
  -n –name     应用程序的名字 
  -t –target   SDK Target ID 
  -p –path     应用程序的工作目录 
  -k –package  应用程序的包名 
  -a –activit]]></description><category></category></item><item><title><![CDATA[Android AOP 三剑客：APT AspectJ Javassist]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/82497250</link><guid>https://blog.csdn.net/xiaoru5127/article/details/82497250</guid><author>xiaoru5127</author><pubDate>Tue, 11 Sep 2018 15:00:39 +0800</pubDate><description><![CDATA[概述

AOP三剑客各自作用的位置 


APT 注解处理器（Java5 中的Annotation Processing Tool），注解现在已经比较常见，使用广泛，可以为我们提供准确的切入点。教程参见

代表框架：DataBinding、Dagger2、EventBus3、DBFlow、AndroidAnnotation等

AspectJ主要任务是在编译期注入代码

代表框架：Hugo（Jak...]]></description><category></category></item><item><title><![CDATA[Android Framework -- WindowManagerService]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/82256240</link><guid>https://blog.csdn.net/xiaoru5127/article/details/82256240</guid><author>xiaoru5127</author><pubDate>Fri, 31 Aug 2018 16:06:24 +0800</pubDate><description><![CDATA[WindowManagerService

WindowManagerSerivce有三个主要功能： 
窗口管理系统：负责窗口的启动、添加、删除、大小、层级顺序等，它会为每个窗口分配一块Surface以供绘制。核心成员有DisplayContent、WindowToken、WindowState 
窗口动画系统：窗口切换时的动画。核心成员：WindowAnimator、Choreographer ...]]></description><category></category></item><item><title><![CDATA[Android Framework -- ActivityManagerService]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/81874112</link><guid>https://blog.csdn.net/xiaoru5127/article/details/81874112</guid><author>xiaoru5127</author><pubDate>Tue, 28 Aug 2018 15:15:53 +0800</pubDate><description><![CDATA[概述

AMS管理者四大组件 Activity Service BrocastCast ContentProvider，AMS与四大组件之间通过Binder通信，AMS作为服务端。

Activity启动流程

简化口述版


Launcher进程中：【图标】被点击，Launcher进程向AMS发起【启动某个Activity】（附带信息）的Binder请求
AMS进程中：【保存Activity信息...]]></description><category></category></item><item><title><![CDATA[Java语法-反射、注解（及APT）、泛型、动态代理]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/81167853</link><guid>https://blog.csdn.net/xiaoru5127/article/details/81167853</guid><author>xiaoru5127</author><pubDate>Tue, 24 Jul 2018 18:08:19 +0800</pubDate><description><![CDATA[反射



获取Class

//法一,对象.getClass,不适用于int等基础类型
Class clazz = new Person().getClass
//法二，.Class
Class clazz = Person.Class
//法三，包名
try {
    Class clazz = Class.forName(&amp;amp;quot;com.android.test.Person&amp;amp;quot;);
} catc...]]></description><category></category></item><item><title><![CDATA[Java基本类型和数据结构]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/81112820</link><guid>https://blog.csdn.net/xiaoru5127/article/details/81112820</guid><author>xiaoru5127</author><pubDate>Fri, 20 Jul 2018 13:52:09 +0800</pubDate><description><![CDATA[基本类型





精度丢失和溢出： 
精度丢失一般发生在浮点型存储数值或类型强制转换的时候。我们知道计算机存储数值实际存储的是二进制，举个粟子

double r1 = 1 - 0.99;
double r2 = 2 - 0.99 

result的值是0.010000000000000009，r2的值为1.01，因为0.99转换成二进制的时候就已经精度丢失了。小数二进制和十进制的转换方法，类似...]]></description><category></category></item><item><title><![CDATA[Java虚拟机--编译期/运行期优化与高效并发]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/77493654</link><guid>https://blog.csdn.net/xiaoru5127/article/details/77493654</guid><author>xiaoru5127</author><pubDate>Thu, 19 Jul 2018 09:59:35 +0800</pubDate><description><![CDATA[测试]]></description><category></category></item><item><title><![CDATA[Java虚拟机--Java内存模型与线程]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/77658942</link><guid>https://blog.csdn.net/xiaoru5127/article/details/77658942</guid><author>xiaoru5127</author><pubDate>Thu, 19 Jul 2018 09:58:51 +0800</pubDate><description><![CDATA[并发编程模型

线程之间的通信机制有两种：共享内存和消息传递


消息传递的并发模型（同步隐式进行） 
eg：主内存中有变量x=0；线程A和线程B都会对它进行自增操作。线程A先对x做自增操作，此时线程A会将主内存中的x=0复制一份到本地内存并进行自增x=1。当线程A与线程B通信的时候，线程A会首先把本地内存中的x刷新到主内存中，完成隐式同步。
共享内存的并发模型（同步显式进行，程序员需显式指定代码]]></description><category></category></item><item><title><![CDATA[代码规范与质量]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/80983401</link><guid>https://blog.csdn.net/xiaoru5127/article/details/80983401</guid><author>xiaoru5127</author><pubDate>Tue, 10 Jul 2018 11:34:45 +0800</pubDate><description><![CDATA[保证项目代码的和谐一致 CheckStyle 和 Alibaba Java Coding Guidelines

一般代码编写规范包含代码结构，格式，命名、javadoc还有编码的最佳实践等内容

CheckStyle是一个帮助程序员来遵守一直的编码规范的工具。默认，它支持google 和sun 的java style guide。而且它是高度可配置的，允许自定义编码规范，并可以对各种IDE（ec...]]></description><category></category></item><item><title><![CDATA[Android开源库选择]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/80897484</link><guid>https://blog.csdn.net/xiaoru5127/article/details/80897484</guid><author>xiaoru5127</author><pubDate>Tue, 03 Jul 2018 17:36:41 +0800</pubDate><description><![CDATA[事件总线/消息通信 EventBus VS Otto VS RxJava RxAndroid


EventBus支持异步线程场景，Otto主要在主线程中处理
EventBus采用反射的方式对整个注册的类的所有方法进行扫描来完成注册，3.0后支持注解以及在编译期扫描，性能有所提升。Otto才有注解方式
两个框架均缓存所有注册并有可用性的检测，同时可以移除注册。


EventBus官网性能对比

...]]></description><category></category></item><item><title><![CDATA[生命周期]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/80829395</link><guid>https://blog.csdn.net/xiaoru5127/article/details/80829395</guid><author>xiaoru5127</author><pubDate>Thu, 28 Jun 2018 17:18:31 +0800</pubDate><description><![CDATA[Activity的生命周期

 
Activity的四种状态 
 - 运行状态Running：Activity位于栈顶，处于屏幕最前方 
 - 暂停状态Pause：Activity失去了焦点但仍然对用于可见 
 - 停止状态Stop：Activity对用户不可见 
 - 销毁状态Destroy：人为或系统原因（如低内存等）被销毁

onCreate时界面尚不可见，onStart后界面可见，onRe...]]></description><category></category></item><item><title><![CDATA[Android 单元测试]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/78390749</link><guid>https://blog.csdn.net/xiaoru5127/article/details/78390749</guid><author>xiaoru5127</author><pubDate>Tue, 05 Jun 2018 17:04:12 +0800</pubDate><description><![CDATA[测试]]></description><category></category></item><item><title><![CDATA[Android IOS UI自动化测试：Appium]]></title><link>https://blog.csdn.net/xiaoru5127/article/details/80567368</link><guid>https://blog.csdn.net/xiaoru5127/article/details/80567368</guid><author>xiaoru5127</author><pubDate>Tue, 05 Jun 2018 17:03:34 +0800</pubDate><description><![CDATA[移动APP自动化测试框架对比【 腾讯移动品质中心TMQ】

客户端自动化测试研究【美团技术团队】

Appium【github】

Cucumber【github】

环境搭建


Node.js 
官网下载安装包并安装 
验证：打开cmd，输入npm
Java环境
Android环境
Ruby 
利用rubyinstaller安装Ruby



  gem update –system 
  g...]]></description><category></category></item></channel></rss>