- 博客(19)
- 资源 (11)
- 收藏
- 关注
原创 Android Apt实战
前言最近在做一个技术项目,解决的内容是:如何将模块动态注册到一个HashMap中。具体解释一下,项目的页面全部是模块化的,一个页面有若干个模块,这些模块分散在不同的业务库中,一个页面需要通过配置才能获取它自己的模块,配置文件(config)一般与Activity在一个库内。因为Activity所在库无法依赖所有的库,模块注册在config中,以key+class全路径形式存储,读取时通过反射获取模块
2017-07-16 23:22:38
950
转载 Android Context 上下文 你必须知道的一切
其实一直想写一篇关于Context的文章,但是又怕技术不如而误人子弟,于是参考了些资料,今天准备整理下写出来,如有不足,请指出,参考资料会在醒目地方标明。
2017-07-16 16:44:29
394
原创 置顶RecyclerView
简介置顶:如果要一个View滑动到顶部,然后置顶,保持不动;滑动回来,跟随RecyclerView一起滚动。最近对原有框架进行技术改造,ListView要换成RecyclerView,RecyclerView确实要比ListView灵活、可定制。之前给予ListView置顶方案要移到RecyclerView上面,这次只做了一个View的置顶,针对之前的置顶技术实现进行了调整,ListView置顶方案
2017-07-16 16:16:39
625
原创 RecyclerView 的坑 1 Added View has RecyclerView as parent but view is not a real child. Unfiltered in
前言最近在用ReyclerView写模块化页面,每个模块视图部分作为一个小的Aapter,会发现一些RecyclerView的坑,在博客中进行一些总结,保持更新。1、问题出现打开RecyclerView页面,快速滚动crash Added View has RecyclerView as parent **“Added View has RecyclerView as parent but v
2017-07-13 23:49:54
3100
原创 Android 打点方式总结
打点的痛点打点是由用户操作,引起视图变化,在记录视图变化时的业务数据信息,以供产品、运维分析。所以打点既包括视图逻辑,也包括业务逻辑,这是蛋疼的地方。我们在开发的时候,一直致力于业务逻辑和视图逻辑要分离,而打点非要将他们糅合在一起……
2017-06-18 21:49:21
11090
转载 文章标题
虽说现在做网络请求有了Volley全家桶和OkHttp这样好用的库,但是在处理其他后台任务以及与UI交互上,还是需要用到AsyncTask。但是你真的了解AsyncTask吗?AsyncTask的实现几经修改,因此在不同版本的Android系统上表现各异;我相信,任何一个用户量上千万的产品绝对不会在代码里面使用系统原生的AsynTask,因为它蛋疼的兼容性以及极高的崩溃率实在让人不敢恭维。本文将带你
2017-06-05 00:27:21
214
转载 你真的了解AsyncTask?
虽说现在做网络请求有了Volley全家桶和OkHttp这样好用的库,但是在处理其他后台任务以及与UI交互上,还是需要用到AsyncTask。但是你真的了解AsyncTask吗?AsyncTask的实现几经修改,因此在不同版本的Android系统上表现各异;我相信,任何一个用户量上千万的产品绝对不会在代码里面使用系统原生的AsynTask,因为它蛋疼的兼容性以及极高的崩溃率实在让人不敢恭维。
2017-06-05 00:24:27
351
原创 Android Service总结
参考文章Android总结篇系列:Android Service 【Android】远程服务(Remote Service)的使用 Android四大组件:Service服务史上最全面解析 startService与bindService的区别为什么要有Service在现实世界的工作中,我们做一件事情的完整过程:领导指示做什么事、去执行、保存成果、报告完成,抽象之后:交互、执行、存储、通信四个
2017-06-03 23:30:19
350
转载 从Instant-Run出发,谈谈Android上的热修复
AndroidStudio从2.0开始,加入了一个功能叫做InstantRun,顾名思义,这个功能的作用就是让开发者能够立即运行自己的程序。具体点说,就是我们不用再像以前那样每次修改完代码都要重新构建整个app,而是可以直接点击运行,修改的代码就可以作用于我们的app。
2017-06-03 19:24:50
392
原创 Android 线程模型和Looper深入理解
1、Android的单线程模型当APP启动时,AMS会通过守护进程为APP创建一个独立的进程,在他的静态ActivityThread的静态main方法中启动这主线程(Main Thread)并创建ActivityThread。主线程主要负责处理与UI相关的事件,如:用户的按键事件,用户接触屏幕的事件以及屏幕绘图事件,并把相关的事件分发到对应的组件进行处理。所以主线程通常又被叫做UI线程。如果他线程要
2017-05-30 01:33:29
850
原创 Android APP启动关键流程分析
前言本文简要分析一下Android APP启动关键流程,APP从被点击到启动中间流程很多,可以参考老罗的《Android应用程序启动过程源代码分析》。
2017-05-29 18:56:31
760
原创 Android DataBinding原理解析
一、简介首先声明,本文讲解的Android DataBinding原理,不涉及Android DataBinding的配置和使用,如果大家想了解Android DataBinding的使用教程,请去Google Android官网,里面有非常详细的讲解。另外,本文也不是为Android DataBinding歌功颂德的,如果对着对本文的一些总结有不同观点,请留言,希望和大家一起思考这项“新技术”。
2016-04-17 20:31:16
7157
原创 Android中的羊角符
简介 人民币羊角符是现在APP常使用的符号,有人会问,这个符号不是很简单吗?键盘结合输入法一敲就有了啊!当然,问题不会这么简单。 为什么强调“人民币”三个字呢?因为日元也是用羊角符,并且两者长得非常相似!我想问一下APP开发的码农们,你们用的人民币羊角符对吗?
2016-04-02 21:48:04
12261
原创 Android收拉可定制的格网控件——ExpandTagGridBar
简介最近写了一个有收拉条的格网控件,控件样式可定制,可以设置收拉参数,在这和大家分享,(源码地址)。Android格网控件实现方式有很多,可以通过RecycleView实现,本文通过TableRow实现;收拉操作通过设置格网控件的bottomMargin;为了用户体验,使用动画控制收缩过程……。
2016-03-27 15:16:18
512
原创 Mitmproxy 拦截、mock移动设备网络请求
Mitmproxy 拦截、mock移动设备网络请求本文主要介绍使用mitmproxy拦截、mock移动设备网络请求,讲解的硬件环境是mac + Android手机,其中的部分方法Linux、Windows平台和IOS同样适用。
2016-03-20 21:34:07
5584
原创 Windows NDK 开发调试遇到问题及解决方
弄了好久,出了N多问题网上有关windows NDK 开发的文章很多这里就不详细说明,紧针对可能遇到的问题进行总结。一 Windows NDK环境搭建参考:http://blog.youkuaiyun.com/android_panda/article/details/7607946http://blog.youkuaiyun.com/pocoyoshamoo/article/details/2353
2014-12-23 20:12:36
687
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人