赵凯强

专注Android移动开发,热爱分享,支持开源

排序:
默认
按更新时间
按访问量

Android重难点解析——面试中可能被问到的那些问题

这篇项目主要介绍Android中的一些重难点概念,也包括面试中可能被问到的经典问题。 因为这些知识点比较琐碎,不太适合写成一篇文章,所以采用Github管理,内容会首先在Github更新,这里不定时同步,如果你想第一时间收到通知,请关注Github中的该项目。 项目地址Android重难...

2015-12-11 16:12:52

阅读数:18043

评论数:7

Android相关问题的好文章整理——温故而知新,可以为师矣

本篇文章将持续更新,收集我看过的写的非常好的文章,以便日后查阅回顾。 CSDN各大专家的Blog都是一个个的宝库,从现在开始,启动Blog“屠戮”计划,毕业之前,研究完所有移动开发专家Blog的博客!

2015-01-08 18:34:18

阅读数:16512

评论数:641

【SealDEV 倾情奉献】Android APK 安装过程详解

开发 Android 应用后,一般都会安装到手机上去运行,了解应用是如何安装到手机上的,可以更好的理解应用的本质,理解应用是如何运行的,在自己开发的应用遇到一些问题时,会从更深层次去分析,快速定位找到原因。这一篇文章中我们就来详细分析一下应用是如何安装的。背景知识要想详细了解 APK 的安装过程,...

2017-06-05 09:07:43

阅读数:2061

评论数:4

关于『65535问题』的一点研究与思考

背景 产生65535问题的原因 LinearAlloc问题的原因 Google提出的MultiDex方案 MultiDex实现原理 缺点 美团的多Dex分包动态异步加载方案 多Dex分包 异步加载方案 参考资料 关于我 背景目前来说,对于使用Android Studio的朋友来说,MultiDex...

2015-12-27 16:49:31

阅读数:19251

评论数:17

《Android源码设计模式解析》读书笔记——Android中你应该知道的设计模式

断断续续的,《Android源码设计模式解析》也看了一遍,书中提到了很多的设计模式,但是有部分在开发中见到的几率很小,所以掌握不了也没有太大影响。 我觉得这本书的最大价值有两点,一个是从设计模式的角度去理解Android源码,结合着日常开发中的常用类,对设计模式的理解会更加的深刻;另外一...

2015-12-13 18:03:58

阅读数:15664

评论数:3

关于三种『应用内主题切换』开源项目的一点思考

Theme 遍历View 开源项目 MultipleTheme Colorful AndroidChangeSkin 我的思考 参考文章 关于我 这里讨论的只是白天、夜晚主题切换这种场景,不涉及外部资源加载。现在要给App添加夜晚主题,所以就需要选择一种应用内部更换主题的实现方案,目前来说,比较常...

2015-12-10 17:41:45

阅读数:3945

评论数:10

开源项目OkHttpPlus——支持GET、POST、UI线程回调、JSON格式解析、链式调用、文件上传下载

开源项目OkHttpPlus——OkHttp封装库,支持GET、POST、UI线程回调、JSON格式解析、链式调用、小文件上传下载及进度监听OkHttpPlus介绍项目地址:https://github.com/ZhaoKaiQiang/OkHttpPlus主要功能:OkHttp封装,支持GET、...

2015-11-24 18:31:37

阅读数:18541

评论数:11

【凯子哥带你学Android】Andriod性能优化之列表卡顿——以“简书”APP为例

这几天闲得无聊,就打开手机上的开发者模式里面的“GPU过度绘制”功能,看看别家的App做的咋样,然后很偶然的打开了“简书”,然后就被它的过度绘制惊呆了,于是写了这篇性能分析的文章,从一个只有APK文件的角度,说下如何寻找布局中可能存在的性能问题,以及解决方案。本文章以简书Android最新版本1....

2015-11-20 19:43:49

阅读数:12447

评论数:14

【凯子哥带你学Android】Android专用Log开源项目——KLog

在Android开发和调试的过程中,Log的使用是非常频繁的,一个好的Log工具可以帮你节省很多时间,所以凯子哥抽空写了个这个开源项目KLog,希望可以帮助大家提高开发效率,本开源库的灵感来自于Logger KLog的特点 运行演示 使用详解 KLogd KLogdString KLogdTagS...

2015-11-14 18:23:36

阅读数:10613

评论数:25

关于Android中图片大小、内存占用与drawable文件夹关系的研究与分析

从上一篇文章《Android屏幕适配全攻略》写完之后,经常会有朋友问我这个问题:“能不能一个App只提供一套切图适应所有的分辨率呢?”我觉得有必要写一篇文章来研究一下这个问题,所以就有了这篇文章。 研究内容 研究方法 测试环境 研究过程 结果分析 结论 另外一个难以解释的问题 ...

2015-11-11 22:02:47

阅读数:20854

评论数:38

【凯子哥带你学Framework】Activity界面显示全解析

前几天凯子哥写的Framework层的解析文章《Activity启动过程全解析》,反响还不错,这说明“写让大家都能看懂的Framework解析文章”的思想是基本正确的。 我个人觉得,深入分析的文章必不可少,但是对于更多的Android开发者——即只想做应用层开发,不想了解底层实现细节——...

2015-11-09 10:26:26

阅读数:14209

评论数:22

【凯子哥带你学Framework】Activity启动过程全解析

It’s right time to learn Android’s Framework !一个App是怎么启动起来的? App的程序入口到底是哪里? Launcher到底是什么神奇的东西? 听说还有个AMS的东西,它是做什么的? Binder是什么?他是如何进行IPC通信的? Acti...

2015-10-27 10:14:17

阅读数:30431

评论数:62

【Android开源项目解析】RecyclerView侧滑删除粒子效果实现——初探Android开源粒子库 Leonids

前两天在微博上看到了这个侧滑删除的粒子效果,但是只有IOS的,所以心血来潮,写了个玩玩,下面简单介绍下实现的思路 项目简介 实现原理解析 代码实现 如何使用项目简介先不废话,上效果图项目地址:https://github.com/ZhaoKaiQiang/ParticleLayout实现原理解析其...

2015-09-23 17:12:45

阅读数:5796

评论数:6

【Android开源项目解析】仿支付宝付款成功及"天女散花"效果实现——看PathMeasure大展身手

话说,在前面两篇文章中,我们学习了BitmapShader、Path的基本使用,那么这一篇文章,咱们接着来学习一下PathMeasure的用法。什么,你没听说过PathMeasure?那你就要OUT咯~ 项目效果图 PathMeasure介绍 更多参考资料 项目效果图...

2015-09-15 21:35:28

阅读数:6611

评论数:5

【Android开源项目解析】QQ“一键下班”功能实现解析——学习Path及贝塞尔曲线的基本使用

早在很久很久以前,QQ就实现了“一键下班”功能。何为“一键下班”?当你QQ有信息时,下部会有信息数量提示红点,点击拖动之后,就会出现“一键下班”效果。本文将结合github上关于此功能的一个简单实现,介绍这个功能的基本实现思路。 项目地址https://github.com/chenupt/Bez...

2015-09-13 20:10:45

阅读数:5129

评论数:9

【Android开源项目解析】背景有波浪效果的TextView——从Titanic项目学习BitmapShader的使用

项目地址 https://github.com/RomainPiel/Titanic 效果展示 实现原理

2015-09-07 21:22:16

阅读数:5707

评论数:5

Android中图像变换Matrix的原理、代码验证和应用(二)

注:本篇文章为转载文章,因为原文格式排版较乱,但是内容非常棒,所以整理一下,方便以后查看。 查看原文请戳:http://blog.csdn.net/pathuang68/article/details/6991988 Matrix介绍文章请戳:http://blog.csdn.net/...

2015-08-25 22:30:41

阅读数:2602

评论数:1

This Activity already has an action bar supplied by the window decor

问题描述:继承自AppCompatActivity,使用Toolbar替代ActionBar的时候,出现错误错误信息: 2.Caused by: java.lang.IllegalStateException: This Activity already has an action bar sup...

2015-08-12 12:40:34

阅读数:7385

评论数:0

【API Guides】Android字符串资源的格式化和样式

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 本文章翻译自Android开发指导,介绍了如何对字符串资源进行格式化和设置不同的样式。 想看原文,请戳这里 字符串资源的格式化和样式 小心撇号和引用号的坑 格式化字符串 用HTML添加样式 字符串...

2015-05-21 15:34:02

阅读数:3543

评论数:2

【API Guides】Android是如何根据限定符,来寻找合适的资源文件的?

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 本文主要介绍了当我们使用限定符修饰我们的资源文件夹,例如drawable-en-ldpi时,Android系统是根据什么规则对这些文件夹进行筛选和选择的。 本文不是严肃翻译,想查看原文的请戳 ...

2015-05-19 15:20:50

阅读数:4005

评论数:6

使用Android Studio进行单元测试

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 Android Studio已经到了1.2版本,国内的开发者基本也在从Eclipse向Android Studio进行转变,对于Android开发者,以后必将是Android Studio的天下。 ...

2015-05-19 11:37:14

阅读数:19424

评论数:6

Android屏幕适配全攻略(最权威的官方适配指导)

Android的屏幕适配一直以来都在折磨着我们这些开发者,本篇文章以Google的官方文档为基础,全面而深入的讲解了Android屏幕适配的原因、重要概念、解决方案及最佳实践,我相信如果你能认真的学习本文,对于Android的屏幕适配,你将不再有疑惑! Android屏幕适配出现的原因 在

2015-05-19 11:34:17

阅读数:124974

评论数:92

【凯子哥带你做高仿】“煎蛋”Android版的高仿及优化(三)——使用GreenDao实现本地Sqlite缓存

到目前为止,煎蛋的Android项目算是告一段落了,功能基本都已完成,那么今天,我就介绍一下在煎蛋这个项目里,是怎么完成数据缓存功能的。想看代码的请戳煎蛋项目的GITHUB地址 转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 缓存功能的解决方案...

2015-05-14 08:52:34

阅读数:6815

评论数:17

【凯子哥带你做高仿】“煎蛋”Android版的高仿及优化(二)——大图显示模式、评论“盖楼”效果实现详解

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 在前一篇文章中,我们学习了如何进行逆向工程和TcpDump进行抓包,获取我们的数据接口,那么有了数据之后,我们就可以开始代码编写工作了。 本项目在前几天获得了daimajia大神的推荐,star数...

2015-04-27 14:54:24

阅读数:12690

评论数:32

【凯子哥带你做高仿】“煎蛋”Android版的高仿及优化(一)——逆向工程及TcpDump抓包入门

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 转眼之间,毕业季已经来临,四年充实而忙碌的大学也将走到尾声,我很期待毕业后的生活呀! 首先多谢各位对我的Blog的支持,大家互相交流学习,作为回报,我把自己收藏的好文章分享给大家,详情请戳An...

2015-04-14 15:03:31

阅读数:15164

评论数:30

FaceBook推出的Android图片加载库-Fresco

在Android设备上面,快速高效的显示图片是极为重要的。过去的几年里,我们在如何高效的存储图像这方面遇到了很多问题。图片太大,但是手机的内存却很小。每一个像素的R、G、B和alpha通道总共要占用4byte的空间。如果手机的屏幕是480*800,那么一张屏幕大小的图片就要占用1.5M的内存。手机...

2015-04-02 09:50:12

阅读数:5893

评论数:9

【凯子哥带你夯实应用层】读 Develop API Guides 有感(一)

读 Develop API Guides 有感(一) 我们可以使用下面的代码动态检测当前设备是否具备某一个特性,如是否有方向传感器 PackageManager pm = getPackageManager(); if(!pm.hasSystemFeature(PackageManag...

2015-03-31 15:42:25

阅读数:2299

评论数:2

【凯子哥带你夯实应用层】还在用XListView?试试更漂亮的AutoLoadListView吧!

关于上拉刷新和下拉加载,已经有不少的解决方案了,XListView和PullToRefresh应该是被广为熟知的开源项目,项目很棒,可以解决我们的需求。但是,今天咱们用一种更简单的方式,来实现上拉刷新和下拉加载功能,我叫它AutoLoadListView~先来一张效果图。刷新效果使用19版本之后的...

2015-03-31 10:59:34

阅读数:5966

评论数:12

用RxJava.Observable取代AsyncTask和AsyncTaskLoader-RxJava Android模版

在网上有很多关于RxJava入门指南的帖子,其中一些是基于Android环境的。但是,我想到目前为止,很多人只是沉迷于他们所看到的这些,当要解决在他们的Android项目中出现的具体问题时,他们并不知道如何或者是为什么要使用RxJava。在这一系列的文章中,我想要探索在我工作过的一些依赖于RxJa...

2015-03-30 14:54:01

阅读数:7129

评论数:2

【凯子哥带你夯实应用层】新手必备的常用代码片段整理(二)

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 以下内容来自多个开源项目的整理和自己的项目积累收集设备信息用于信息统计分析 是否有SD卡 动态隐藏软键盘 动态显示软键盘 动态显示或者是隐藏软键盘 主动回到Home后台运行 获取状态栏高度 获取状态栏高...

2015-03-29 11:05:56

阅读数:4313

评论数:5

【凯子哥带你夯实应用层】新手必备的常用代码片段整理(一)

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 以下内容来自多个开源项目的整理 拨打电话 context.startActivity(new Intent(Intent.ACTION_CALL, Uri.parse("tel...

2015-03-29 09:34:59

阅读数:5875

评论数:7

【凯子哥带你夯实应用层】使用ActionProvider实现子菜单时遇到的一个坑

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992     最近在重温Android基础,在看到ActionProvider的时候遇到一个坑,分享到大家,避免入坑。    首先简单介绍下ActionProvider。    ShareActionProvid...

2015-03-18 11:41:51

阅读数:3314

评论数:8

【凯子哥带你夯实应用层】使用ActionMode实现有删除动画的多选删除功能

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992     ActionMode是3.0之后,官方推荐的一种上下文菜单的实现方式,在之前一直用的是Context Menu,今天这篇文章简单介绍一下ActionMode,并实现多选删除功能。    如果要在Li...

2015-03-16 11:00:37

阅读数:3630

评论数:5

【凯子哥带你夯实应用层】Android的Google官方设计指南(上)

本文章是我公司一个大牛之前的公司同事翻译的Android的Google官方设计指导,经过我整理而成,分享给大家,欢迎转载,但是请保留出处和翻译作者。本指导内容详实、规范,无论是初级开发者还是高级开发者,甚至是公司产品设计和美工,都应该研读学习,特此推荐!由于文章内容较颇多,所以我分为几篇发布,方便...

2015-03-03 09:03:42

阅读数:17629

评论数:32

【凯子哥带你夯实应用层】滚来滚去,滚来滚去...Scroller相关类使用大揭秘!!!

其实说到这里,有的同学可能比较迷惑,OverScroller和Scroller有什么区别呢?事实上,这两个类都属于Scrollers,Scroller出现的比较早,在API1就有了,OverScroller是在API9才添加上的,出现的比较晚,所以功能比较完善,Over的意思就是超出,即OverS...

2015-03-01 17:53:55

阅读数:7004

评论数:15

【凯子哥带你夯实应用层】都说“知乎”逼格高,我们来实现“知乎”回答详情页动画效果

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992     2014已经远去,2015年的目标很简单,就是继续熟悉Android的上层API,虽然偶尔会为了某个问题去研究下FrameWork的代码,但是对于我们这种新手来说,只有对上层的API用的熟练了,才能...

2015-02-27 16:33:20

阅读数:8424

评论数:31

【Android开发经验】关于“多线程断点续传下载”功能的一个简单实现和讲解

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992    上班第一天,在技术群里面和大家闲扯,无意中谈到了关于框架的使用,一个同学说为了用xUtils的断线续传下载功能,把整个库引入到了项目中,在google的官方建议中,是非常不建议这种做法的,集合框架虽然...

2015-02-25 19:46:50

阅读数:7279

评论数:15

一个Android开发者开博一周年的成长日记——送给不知如何下手的【初级开发者】和【在校生】

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992     今天一看日历,哟,2.12号,这不是我第一份工作入职的时间吗?不知不觉竟然已经工作了一年了,那根据“主席”的话说,应该算是中级开发者水平了!在这工作的一年里,我有过迷茫,有过动摇,但更多,则是坚持和...

2015-02-12 10:52:56

阅读数:6685

评论数:61

Android开发相关的Blog推荐——跟随大神的脚步才能成长为大神

本篇文章主要纪录我在学习过程中,发现的非常给力的CSDNBlog和个人Blog,这些Blog都有一个共同的特点,即内容详实,讲解透彻,也算是给后来的初学者指一条路吧!只要你下定决心跟随强者的脚步,成为人们眼中的大神,只不过是时间问题! 下面排名不分先后

2015-02-11 11:53:33

阅读数:36760

评论数:49

【Android开发经验】兼容不同的屏幕大小(推荐,最官方的适应屏幕大小的经验)

由于Android设备的碎片特性,关于屏幕适配的话题一直绵绵不休,这篇文章是Android开发者官网的屏幕适配教程,算是非常官方的解决方案,我们可以从这里学到很多。 这节课教你如何通过以下几种方式支持多屏幕: ☞确保你的布局能自适应屏幕 ☞根据你的屏幕配置提供合适的UI布局 ...

2015-02-10 09:56:09

阅读数:10662

评论数:8

【Android开发经验】Bitmap高效显示系列——如何有效的加载大尺寸Bitmap

我们先看一下加载原图消耗的时间和内存,内存分配190ms,内存占用44.92M,因为我的Smartisan1内存充足,所以没问题,如果是比较老的机型,可能就直接崩掉了! 下面我们再看使用小尺寸的运行结果,内存分配花费89ms,内存占用10.39M,相比之前内存少占用34.53M,所以说使用小尺寸的...

2015-02-05 09:45:19

阅读数:3905

评论数:12

【Android开发经验】APP的缓存文件到底应该存在哪?看完这篇文章你应该就自己清楚了

只要是需要进行联网获取数据的APP,那么不管是版本更新,还是图片缓存,都会在本地产生缓存文件。那么,这些缓存文件到底放在什地方合适呢?系统有没有给我们提供建议的缓存位置呢?不同的缓存位置有什么不同呢?今天这篇文章就是主要来说明这个问题的。

2015-02-03 17:18:49

阅读数:11818

评论数:5

【Android开发经验】来来来,同学,咱们讨论一下“只能在UI主线程更新View”这件小事

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992    ”只能在UI主线程中更新View“。    这句话很熟悉吧?    来来,哥们,看一下下面的例子@Override protected void onCreate(Bundle savedInsta...

2015-02-02 17:35:33

阅读数:6944

评论数:17

【Android开发经验】设置用户头像并裁剪,仅仅是这么简单?

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992    在做APP的时候,如果有用户系统功能,那么一般都逃不了这个需求,就是给用户设置头像,而设置头像,又包括从拍照和从相册选取两个方式,而且选择了之后,一般又都会要求对图像进行裁剪,让用户设置头像。今天这篇...

2015-01-22 17:07:59

阅读数:11846

评论数:5

【Android界面实现】关于Android中9patch图的一点小解释

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992    关于为什么使用.9图,我就不长篇大论了,就是为了减少图片资源体积,我们这篇文章重点解决.9图的制作的一些小问题。    .9的制作,实际上就是在原图片上添加1px的边界,然后按照我们的需求,把对应的位...

2015-01-21 14:47:34

阅读数:4204

评论数:4

【Android开发经验】ViewHolder到底用什么修饰?static?final?static final?

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992    现在大家都知道用ViewHolder来实现listview的优化了,但是,ViewHolder到底要用什么来修饰呢?这种修饰有什么意义呢?在一个ListView里面,存在多少个VIewHolder实例...

2015-01-15 15:02:52

阅读数:8248

评论数:18

【Android界面实现】ZListView,一个最强大的刷新、加载、滑动删除的ListView控件(二)

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 我们接着上篇的文章说,在前一篇文章中,我们学习了ZListView的使用,这一篇就开始说一些干货了,本篇文章将介绍ZListView的实现原理。 其实说是ZListView的实现原理,不...

2015-01-08 17:43:19

阅读数:5385

评论数:13

【Android界面实现】ZListView,一个最强大的刷新、加载、滑动删除的ListView控件(一)

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992    两个月之前,写过一篇文章【Android界面实现】整合了刷新、加载更多、滑动删除功能的XListview ,介绍了如何整合两个开源项目实现这种功能,但是在实际的使用中,却出现了一些问题,比如说item...

2015-01-08 11:47:58

阅读数:9671

评论数:29

【Android界面实现】XListView实现原理讲解及分析

转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992    XListview是一个非常受欢迎的下拉刷新控件,但是已经停止维护了。之前写过一篇XListview的使用介绍,用起来非常简单,这两天放假无聊,研究了下XListview的实现原理,学到了很多,今天分...

2015-01-04 16:34:33

阅读数:7229

评论数:7

【Android开发经验】低版本中PopupWindow的init方法空指针异常的问题

昨天测试人员给我提交了一个BUG,在2.3版本中,弹出popupwindow的时候,会有空指针异常,在高版本没有问题,下面是报错信息(找的一段一样的异常,我的异常已经解决了)异常信息: Exception: null 堆栈信息: android.widget.PopupWindow.set...

2014-12-31 11:52:31

阅读数:2404

评论数:0

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