- 博客(22)
- 收藏
- 关注

原创 界面卡顿优化
1.UI层优化常见问题 : 过度绘制,布局复杂,层级过深 排查工具: GPU过度绘制工具 ,Hierachy Viewer(层级查看器) 过度绘制 在屏幕上一个像素点出现多次绘制 .(如背景重叠绘制) 布局复杂,层级过深 优化做法:没有用的父布局--没有背景绘制或没有大小限制的父布局,不会对界面效果产生任何影响.可以通过<merge>替代 在...
2018-09-05 15:28:06
1244
原创 常见Property属性
在编译源码时,会选择产品, 这些属性就是用来记录当前源码选择产品所对应的信息,其实我们在配置一个新产品时, 产品mk文件的内容就会在属性中展示。[ro.boottime.init.cold_boot_wait]: [273] :init 等待 ueventd 的冷启动阶段结束的时间。[ro.boottime.<服务名称>]:以 ns 为单位启动后的时间,该服务首次启动的时间,如。记录编译镜像的情况的属性, 如:编译时间,系统版本, sdk api,系统补丁时间。
2023-09-01 15:18:58
315
原创 App电量优化方案
一.设备电量消耗情况排查 1.工具Batterystats工具 ;收集设备电量消耗数据 Battery Historian工具; 将 Batterystats收集的数据转成html,方便在浏览器上查看(Battery Historian工具是开源项目,可以在github上搜索) 2.关注重点在将数据转成html后 , 我们主要关注设备的cpu ,屏幕唤醒 , 移动网络 , ...
2018-09-05 14:58:58
785
原创 视频画面帧的展示控件SurfaceView及TextureView对比
视频画面帧的展示控件SurfaceView及TextureView对比SurfaceView是什么?它继承自类View,因此它本质上是一个View。但与普通View不同的是,它有自己的Surface。有自己的Surface,在WMS中有对应的WindowState,在SurfaceFlinger中有Layer。我们知道,一般的Ac
2017-03-02 12:16:37
1032
转载 Android Nougat 7.1的app快捷方式
谷歌为我们带来了牛轧糖的第二个版本7.1(API 25),但这并只是一个次要版本,实际上它绑定了一些有趣的功能。其中一个额外的功能就是应用快捷方式(App Shortcuts)。本文概要应用快捷方式对于用户发现应用的操作是非常有用的,提高用户粘性。它们可以是静态或者动态的静态的一旦定义好就写死了(你只能在app部署时更新它们)动态的可
2016-10-27 12:21:33
760
转载 Android中的数据绑定框架DataBinding(对比AngularJS双向数据绑定很好理解)
转自:http://blog.youkuaiyun.com/qibin0506/article/details/47393725今天来了解一下Android最新给我们带来的数据绑定框架——Data Binding Library。数据绑定框架给我们带来了更大的方便性,以前我们可能需要在Activity里写很多的findViewById,烦人的代码也增加了我们代码的耦合性,现在我们马上就可以抛弃
2016-10-16 18:48:12
797
原创 浏览器兼容性处理大全
【web前端开发】浏览器兼容性处理大全1、居中问题div里的内容,IE默认为居中,而FF默认为左对齐,可以尝试增加代码margin: 0 auto;2、高度问题两上下排列或嵌套的div,上面的div设置高度(height),如果div里的实际内容大于所设高度,在FF中会出现两个div重叠的现象;但在IE中,下面的div会自动给上面的div让出空间所以为避免出
2016-10-16 18:25:24
447
原创 Dagger2在Android中的使用
在我们写程序的过程中,不可避免的就会牵扯到一些依赖,如会创建各种工厂类来生产我们所要依赖的对象等等。太多依赖会让我们的程序看起来很乱,而且很不利于测试,所以我们就使用Dagger2来进行依赖注入。(文章转载自@MrlLee,安卓巴士)依赖注入到底是个什么概念呢?我自己的理解就是将对象的生产和使用给分开了。比如说有一个Car对象,当你要出行的时候就自己new一个Car对象,然后使
2016-10-13 14:50:08
433
转载 详解7.0带来的新工具类:DiffUtil
一 概述DiffUtil是support-v7:24.2.0中的新工具类,它用来比较两个数据集,寻找出旧数据集-》新数据集的最小变化量。 说到数据集,相信大家知道它是和谁相关的了,就是我的最爱,RecyclerView。 就我使用的这几天来看,它最大的用处就是在RecyclerView刷新时,不再无脑mAdapter.notifyDataSetChanged()。 以前无脑mA
2016-10-12 14:24:43
1015
原创 Konva的使用快速上手
5.1 Konva的整体理念· 舞台的概念的引入。整个视图看做是一个舞台 stage· 舞台中可以绘制很多个层 layer· layer下面可以有很多的group· group下面可以有 矩形、图片、其他形状等· 参看:快速上手文档---查看翻译文档 Stage | +
2016-10-12 14:17:59
6271
原创 canvas
一、canvas简介1.1 什么是canvas?(了解)· 是HTML5提供的一种新标签 英 ['kænvəs] 美 ['kænvəs] 帆布 画布· Canvas是一个矩形区域的画布,可以用JavaScript在上面绘画。控制其每一个像素。· canvas 标签使用 JavaScript 在网页上绘制图像,本身不具备绘图功能。· canvas 拥有多种绘制路
2016-10-12 14:14:45
536
原创 host修改
在Android下,/etc是link到/system/etc的,我们需要修改/system/etc/hosts来实现。但是这个文件是只读,不能通过shell直接修改。可以通过连接到PC上使用adb来修改。1、获得root权限:adb root2、设置/system为可读写:adb remount3、将hosts文件复制到PC:adb pull /system/etc/ho
2016-10-12 14:12:04
555
原创 AngularJS常用指令
ng-app 指令ng-app指令用来标明一个AngularJS应用程序标记在一个AngularJS的作用范围的根对象上系统执行时会自动的执行根对象范围内的其他指令可以在同一个页面创建多个ng-app节点ng-bind 指令shit'"> {{username}} --> n
2016-10-12 12:59:34
354
原创 AngularJS 总结
Features of AngularJS :MVC模块化自动化双向数据绑定指令系统下载 Angular.js 的包https://github.com/angular/angular.js/releases使用 CDN 上的 Angular.jshttp://apps.bdimg.com/libs/angular
2016-10-12 12:56:57
341
原创 gulp的使用
gulp是基于Nodejs的自动任务运行器她能自动化地完成 javascript、coffee、sass、less、html/image、css 等文件的测试、检查、合并、压缩、格式化、浏览器自动刷新、部署文件生成,并监听文件在改动后重复指定的这些步骤。在实现上,她借鉴了Unix操作系统的管道(pipe)思想,前一级的输出,直接变成后一级的输入,使得在操作上非常简单。
2016-10-12 12:54:44
534
原创 前端流行的框架
流行开发框架介绍1 移动端开发有哪些框架那?IonicHtml5+AppCanFramework7 Jquery Mobile React Native…….2 Html5+2.2.1 首先要认识Html5+联盟是什么?HTML5中国产业联盟,简称“HTML5+联盟”,是为了更好的推进HTML5的商用、更好的为HTML5开发者服务而由产 业链
2016-10-12 12:49:21
933
原创 Promise/A+规范
1.1.1 Promise/A+规范规范出现的原因1、 我们不知道异步请求什么时候返回数据,所以我们就需要些回调函数。但是在某些情况下我们需要知道数据是在什么时候返回的,然后进行一些处理。2、 当我们在异步回调里面处理的操作还是异步操作的时候,这样就形成了异步回调的嵌套3、 正是为了杜绝以上两种情况的出现,社区出现了Promise/a+规范 规范的内容是什么1、 不管进
2016-10-09 18:47:15
2148
转载 Android开发中使用矢量图
本文我们将介绍一些关于Android矢量图的相关知识点。最新的项目中要求以矢量图替代传统的.png资源文件,所以特意学习了一下Android中的矢量图相关概念,不得不说矢量图还是一个比较好的适配方案。Android从Android5.0开始引入了对矢量图的支持,但是其并不支持svg这种矢量图片格式,,而是以VectorDrawable的方式来实现矢量图的效果。Google官方关于矢量图的相
2016-10-09 10:22:03
16104
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人