- 博客(221)
- 资源 (1)
- 收藏
- 关注
原创 Android学习必用-推荐大牛的博客
鸿洋:http://blog.youkuaiyun.com/lmj623565791 爱哥:http://blog.youkuaiyun.com/aigestudio 老罗(源码分析):http://blog.youkuaiyun.com/luoshengyang 阿拉神农(源码分析):http://blog.youkuaiyun.com/innost 小巫:http://blog.youkuaiyun.com
2017-06-05 14:54:29
861
原创 Android属性动画
什么是Android属性动画 属性动画(Property Animation)系统是一个健壮的动画框架系统,它可以满足你大部分动画需求。不管动画对象是否已经绘制到屏幕上,你都可以在动画执行过程中改变它任意的属性值。一个属性动画会在一段特定长度的时间内改变一个属性(一个对象中的字段)的值。你可以通过以下几步定义一个动画:指定你要执行动画的属性,比如动画对象(View)在屏幕上的位置,指定执
2016-04-25 16:54:07
2281
转载 Android ViewDragHelper完全解析 自定义ViewGroup神器
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]转载请标明出处: http://blog.youkuaiyun.com/lmj623565791/article/details/46858663;本文出自:【张鸿洋的博客】一、概述在自定义ViewGroup中,很多效果都包含用户手指去拖动其内部的某个View(eg:侧滑菜单等),针对具体的需要
2016-04-25 11:03:07
859
转载 Android 深入理解Android中的自定义属性
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]转载请标明出处: http://blog.youkuaiyun.com/lmj623565791/article/details/45022631;本文出自:【张鸿洋的博客】1、引言对于自定义属性,大家肯定都不陌生,遵循以下几步,就可以实现:自定义一个CustomView(ext
2016-04-25 11:02:17
689
转载 Android 手把手教您自定义ViewGroup(一)
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/38339817 , 本文出自:【张鸿洋的博客】最近由于工作的变动,导致的博客的更新计划有点被打乱,希望可以尽快脉动回来~今天给大家带来一篇自定义ViewGroup的教程,说白了,就是
2016-04-25 11:01:42
644
转载 Android 自定义View (四) 视频音量调控
版权声明:本文为博主原创文章,未经博主允许不得转载。转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/24529807今天没事逛eoe,看见有人求助要做一个下面的效果,我看下面一哥们说要用12张图片,这尼玛逆天的麻烦,仔细看了一下感觉自定义控件木有问题,就花点时间写了一个。好了,进入正题,继续我们的自定义Vi
2016-04-25 11:01:10
590
转载 Android 自定义View (三) 圆环交替 等待效果
转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/24500107一个朋友今天有这么个需求(下图),我觉得那自定义View来做还是很适合的,就做了下,顺便和大家分享下,对于自定义View多练没坏处么。如果你看了前两篇,那么这篇一定so easy 。效果就这样,分析了一下,大概有这几个属性,两个颜色,一个速度,一个圆环
2016-04-25 11:00:38
710
转载 Android 自定义View (二) 进阶
转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/24300125继续自定义View之旅,前面已经介绍过一个自定义View的基础的例子,Android 自定义View (一),如果你还对自定义View不了解可以去看看。今天给大家带来一个稍微复杂点的例子。自定义View显示一张图片,下面包含图片的文本介绍,类似相片介绍什么
2016-04-25 10:59:59
490
转载 Android 自定义View (一)
转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/24252901很多的Android入门程序猿来说对于Android自定义View,可能都是比较恐惧的,但是这又是高手进阶的必经之路,所有准备在自定义View上面花一些功夫,多写一些文章。先总结下自定义View的步骤:1、自定义View的属性2、在View的构造方法中获得
2016-04-25 10:59:24
554
转载 Android 属性动画(Property Animation) 完全解析 (下)
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/38092093上一篇Android 属性动画(Property Animation) 完全解析 (上)已经基本展示了属性动画的核心用法:ObjectAnimator实现动画,ValueA
2016-04-25 10:56:46
889
转载 Android 属性动画(Property Animation) 完全解析 (上)
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/380674751、概述Android提供了几种动画类型:View Animation 、Drawable Animation 、Property Animation 。View Anim
2016-04-25 10:55:59
754
转载 Android EventBus源码解析
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/40920453,本文出自:【张鸿洋的博客】上一篇带大家初步了解了EventBus的使用方式,详见:Android EventBus实战 没听过你就out了,本篇博客将解析EventBus
2016-04-22 17:04:58
515
转载 Android EventBus使用详解
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]转载请表明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/40794879,本文出自:【张鸿洋的博客】1、概述最近大家面试说经常被问到EventBus,github上果断down了一份,地址:https://github.com/greenrob
2016-04-22 17:03:57
578
转载 Android OkHttp完全解析 是时候来了解OkHttp了
转载请标明出处: http://blog.youkuaiyun.com/lmj623565791/article/details/47911083;本文出自:【张鸿洋的博客】一、概述最近在群里听到各种讨论okhttp的话题,可见okhttp的口碑相当好了。再加上Google貌似在6.0版本里面删除了HttpClient相关API,对于这个行为不做评价。为了更好的在应对网络访问,学习下o
2016-03-03 16:41:34
1476
转载 Retrofit 2.0使用详解,配合OkHttp、Gson,Android最强网络请求框架
Retrofit终于迎来了2.0版本,也修复了老版本的一些bug,这是修复日志,各位可以自己去看看,https://github.com/square/retrofit/blob/master/CHANGELOG.md注:【转载请注明出处啊】1.使用retrofit,需要下载一些jar包retrofit gitHub项目地址:https://github.com/square/re
2016-03-03 16:19:27
12356
转载 给 Android 开发者的 RxJava 详解
前言我从去年开始使用 RxJava ,到现在一年多了。今年加入了 Flipboard 后,看到 Flipboard 的 Android 项目也在使用 RxJava ,并且使用的场景越来越多 。而最近这几个月,我也发现国内越来越多的人开始提及 RxJava 。有人说『RxJava 真是太好用了』,有人说『RxJava 真是太难用了』,另外更多的人表示:我真的百度了也谷歌了,但我还是想问: RxJ
2016-01-19 17:44:19
1598
1
转载 经典SQL语句大全
一、基础1、说明:创建数据库CREATE DATABASE database-name 2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\My
2016-01-03 23:17:42
630
转载 利用 LeakCanary 来检查 Android 内存泄漏
利用 LeakCanary 来检查 Android 内存泄漏字数1769 阅读2762 评论6 喜欢6前言你被概率性的 OOM 困扰么?有时候,OOM 像幽灵一样,挥之不去,可真想把它揪出来时,又捉之不着。或许,是时候用 LeakCanary 来诊断一下了。它是一个用来检查 Android 下内存泄漏的开源库,这篇文章主要介绍其用法、架构和其背后的实现原理。Squa
2015-12-31 11:22:50
811
转载 Android 使用ORMLite 操作数据库
用过ssh,s2sh的肯定不会陌生 ,应该一学就会第一步: 下载ormlite-android-4.41.jar和ormlite-core-4.41.jar两个jar包,放入工程的libs文件夹内,然后右键 builder path-->add path第二步:对你要持久化的类进行注解(记住.提供一个默认无参构造)[java] view plainco
2015-12-30 13:49:01
780
转载 LeakCanary——直白的展现Android中的内存泄露
之前碰到的OOM问题,终于很直白的呈现在我的眼前:我尝试了MAT,但是发现不怎么会用。直到今天终于发现了这个新工具:当我们的App中存在内存泄露时会在通知栏弹出通知:当点击该通知时,会跳转到具体的页面,展示出Leak的引用路径,如下图所示:LeakCanary 可以用更加直白的方式将内存泄露展现在我们的面前。以下是我找到的学习资料,写的非常棒: 1、LeakCanary
2015-12-21 16:04:15
700
转载 Android内存优化杂谈
Android内存优化是我们性能优化工作中比较重要的一环,这里其实主要包括两方面的工作:优化RAM,即降低运行时内存。这里的目的是防止程序发生OOM异常,以及降低程序由于内存过大被LMK机制杀死的概率。另一方面,不合理的内存使用会使GC大大增多,从而导致程序变卡。优化ROM,即降低程序占ROM的体积。这里主要是为了降低程序占用的空间,防止由于ROM空间不足导致程序无法安装。
2015-12-16 16:57:02
1548
原创 关于即时通讯的一点记录
即时通讯实现方式:1.第三方:环信,融云,推送等2.开源库:Smack(客户端)+Openfire(服务端) http://www.cnblogs.com/hoojo/archive/2012/06/25/2561576.html3.Socket(推荐):基于 传输层的TCP/IP协议。三次握手建立连接,四次挥手断开连接。可以自己实现或者用第三方Socket组件,如N
2015-11-29 23:00:52
1056
转载 Android如何避免OOM总结
Android如何避免OOM总结前面介绍了一些基础的内存管理机制以及OOM的基础知识,那么在实践操作当中,有哪些指导性的规则可以参考呢?归纳下来,可以从四个方面着手,首先是减小对象的内存占用,其次是内存对象的重复利用,然后是避免对象的内存泄露,最后是内存使用策略优化。1)使用更加轻量的数据结构例如,我们可以考虑使用ArrayMap/SparseArray而不是HashMap等传统数
2015-11-25 15:21:20
11767
转载 内存泄露从入门到精通三部曲之排查方法篇
内存泄露从入门到精通三部曲之排查方法篇2015.11.11腾讯Bugly微信分享1 最原始的内存泄露测试重复多次操作关键的可疑的路径,从内存监控工具中观察内存曲线,是否存在不断上升的趋势且不会在程序返回时明显回落。这种方式可以发现最基本,也是最明显的内存泄露问题,对用户价值最大,操作难度小,性价比极高。2 MAT内存分析工具2.1 MAT分析heap的总内存占用大小来初
2015-11-25 09:55:35
993
转载 Android 使用android-support-multidex解决Dex超出方法数的限制问题,让你的应用不再爆棚
如有转载,请声明出处: 时之沙: http://blog.youkuaiyun.com/t12x3456 (来自时之沙的csdn博客) 随着应用不断迭代,业务线的扩展,应用越来越大(比如集成了各种第三方sdk或者公共支持的jar包,项目耦合性高,重复作用的类越来越多),相信很多人都遇到过如下的错误:[java] view plaincopyUNEX
2015-11-19 10:00:23
2398
转载 android service常驻内存的一点思考
我们总是不想自己的Android service被系统清理,以前时候大家最常用的办法就是在JNI里面fork出子进程,然后监视 service进程状态,被系统杀死了就重启它.我分别在android4.3和android5.0上面测试了LBE的清理内存功能,看看是不是会达到不被清理的目的,发现在这两个版本上还是有一些区别的先说一下我们的代码,我们的service在单独的进程中,在serv
2015-11-18 10:55:27
1373
转载 Android Service 双进程常驻后台(2)
最近项目用到Service常驻后台,研究了一下发现手Q和微信都是使用了双进程来保证一键清理后自动复活,copy网上双进程Service的例子,再结合onTrimMemory(),基本实现一键清理后自动复活。使用双进程Service,关键是在AndroidManifest.xml里面定义Service时加入android:process=":service1":[ht
2015-11-18 10:54:52
3983
1
转载 Android 从底层实现让应用杀不死(1)
情景还原:我的应用调用了Notification,但是如果被流氓清理软件杀死,在有些机型出现Notification没有被抹除的情况,因为丧失了对Notification的引用,用户也无法抹除这个Notification,这将大大降低用户体验。于是,我想出了如果我的应用可以不死,主动清除Notification。既然开始做了,干脆做了个小调查。调查内容调查对象
2015-11-18 10:53:33
4018
转载 Android中一些常用的第三方特效架包集合
特效:http://www.androidviews.net/ http://www.theultimateandroidlibrary.com/ 常用效果:1. https://github.com/novoda/ImageLoader 异步加载图片,缓存,生成缩略图,基本上每个应用都会需要这个lib。 android-query框架2. https://gith
2015-11-17 10:42:16
2933
原创 必须了解的Java 基础题
Java 基础1: int a = 1; int m1 = ++a +3;结果 :m1 = 5;a=2;++a表示先赋值 2:int a = 1; int m = a+++3;结果 m = 4; a= 2;a++表示后赋值 3: m m int result =5 int result1 =6 int result2 =7
2015-10-31 19:18:35
4259
原创 符合1-2年工作经验,开发中的难点及相关优化:
------------------> sqlite数据库版本升级1.sqlite升级步骤: 1.自己写一个类继承自SqliteOpenHelper 2.会实现SqliteOpenHelper的两个方法 onCreate与onUpgrade,google文档对两个回调方法的解释是创建数据库的时候调用与更新数据库的版本的时候调用 3.Sqlite数据库主要是用来缓存
2015-10-31 19:10:31
998
原创 Android十大常用技术揭秘-挑战
Android四大组件http://www.cnblogs.com/pepcod/archive/2013/02/11/2937403.html 三级缓存可以用我们上课讲的说也可以参照http://blog.saymagic.cn/2015/01/30/android-pic-three-cache.html 图片的处理和优化http://www.cnblogs
2015-10-31 19:08:15
4207
原创 挑战高薪的程序员建议看的文章
------------》(一):Android卸载程序之后如何跳转到指定的反馈页面比如:360被卸载之后会跳转到指定的反馈页面如何实现?本题解析:本题目的回答需要从C层出发,不过java层也需要接受一些android BroadcastReceiver机制, 以及BroadcastReceiver无法实现原因, 回答: 参考文章http:/
2015-10-31 19:06:52
933
转载 HTML5plus 移动 App开发入门
HTML5 Plus 应用概述 HTML5 Plus 规范 通过 HTML5 开发移动 App 时,会发现 HTML5 很多能力不具备。为弥补 HTML5 能力 的不足,在 W3C 中国的指导下成立了 www.HTML5Plus.org组织,推出 HTML5+规范。HTML5+扩展了 JavaScript 对象 plus,使得 js 可以调用各种浏览器无法实现或
2015-10-30 11:02:21
4343
原创 Struts 、 Spring 、 Hibernate 在各层的作用
在SSH框假中spring充当了管理容器的角色。我们都知道Hibernate用来做持久层,因为它将JDBC做了一个良好的封装,程序员在与数据库进行交互时可以不用书写大量的SQL语句。Struts是用来做应用层的,他它负责调用业务逻辑serivce层。所以SSH框架的流程大致是:Jsp页面----Struts------Service(业务逻辑处理类)---Hibernate(左到右) stru
2015-10-27 10:36:12
2339
原创 java android面试题分析总结《三
3.2基于UDP协议的数据传输 服务器端首先创建一个DatagramSocket对象,并且指点监听的端 口。接下来创建一个空的DatagramSocket对象用于接收数据 (bytedata[]=newbyte[1024;]DatagramSocketpacket=newDatagramSocket(data,data.length)), 使用DatagramSocket的receive方
2015-10-26 13:20:29
636
原创 java android面试题分析总结《二》
2、性能优化--lazy loaded上面的代码虽然简单,但是有一个问题----无论这个类是否被使用,都会创建一个instance对象。如果这个创建很耗时,比如说链接10000次数据库(夸张一点啦....),并且这个类还不一定会被使用,那么这个创建过程就是无用的,怎么办呢?为了解决这个问题,我们想到的新的解决方案:public class SingletonClass { pri
2015-10-26 13:19:48
834
原创 java android面试题分析总结《一》
ArrayList,Vector,LinkedList的区别 ArrayListVectorLinkedList实现原理数组数组双向链表线程安全否是否优点1.数组实现优于遍历2.非线程安全,
2015-10-26 13:18:59
756
转载 怎样使一个Android应用不被杀死?
http://blog.sina.com.cn/s/blog_3e3fcadd0100yjo2.html方法:对于一个service,可以首先把它设为在前台运行:public void MyService.onCreate() { super.onCreate(); Notification notification = new Notifica
2015-10-16 10:58:30
3243
原创 71道经典Android面试题和答案,重要知识点都包含了
,面试题1. 下列哪些语句关于内存回收的说明是正确的? (b ) A、 程序员必须创建一个线程来释放内存 B、内存回收程序负责释放无用内存 C、内存回收程序允许程序员直接释放内存 D、内存回收程序可以在指定的时间释放内存对象 2. 下面异常是属于Runtime Exception 的是(abcd)(多选) A、Arithmetic
2015-10-13 16:35:47
1599
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人