Android开发小栈
文章平均质量分 90
爱生活,爱Code,Android开发小栈,感谢有你的陪伴!
singwhatiwanna
有创新精神的Android技术分享者,Android资深工程师
展开
-
android跨进程通信(IPC):使用AIDL
AIDL的作用 AIDL (Android Interface Definition Language) 是一种IDL 语言,用于生成可以在Android设备上两个进程之间进行进程间通信(interprocess communication, IPC)的代码。如果在一个进程中(例如Activity)要调用另一个进程中(例如Service)对象的操作,就可以使用AIDL生成可序列化的参数。原创 2013-11-30 23:20:52 · 70227 阅读 · 39 评论 -
可下拉的PinnedHeaderExpandableListView的实现
Android中,大家都用过ListView,ExpandableListView等,也许你还用过PinnedHeaderListView,但是如果我说PinnedHeaderExpandableListView,你听过吗?还有可下拉的PinnedHeaderExpandableListView呢?没听过也不要紧,本文就是介绍这个东西的,为了让大家有更直观的了解,先上效果图。通过效果图可以看出,首先它是一个ExpandableListView,但是它的头部可以固定,其次,在它的上面还有一个头部可以来回伸缩,原创 2014-05-12 00:18:11 · 38748 阅读 · 86 评论 -
Android动画进阶—使用开源动画库nineoldandroids
转载请注明出处:http://blog.csdn.net/singwhatiwanna/article/details/17639987前言Android系统支持原生动画,这为应用开发者开发绚丽的界面提供了极大的方便,有时候动画是很必要的,当你想做一个滑动的特效的时候,如果苦思冥想都搞不定,那么你可以考虑下动画,说不定动画轻易就搞定了。下面再简单回顾下Android中的动画,本文后面会介绍原创 2013-12-28 23:47:12 · 53570 阅读 · 30 评论 -
android中图片的三级cache策略(内存、文件、网络)之二:内存缓存策略
前言记得很久之前我写了一篇banner的文章,好多朋友找我要代码,并要我开放banner中使用的图片管理工厂-ImageManager。如果想很好地理解下面的故事,请参看我半年前写的两篇博文:android中图片的三级cache策略(内存、文件、网络) 一 和 android中左右滑屏的实现(广告位banner组件)。当时没有发上来是由于如下几点原因:首先代码较多,其次当时写的时候也参考了原创 2013-12-25 23:46:02 · 16046 阅读 · 28 评论 -
Android程序Crash时的异常上报
转载请注明来源:http://blog.csdn.net/singwhatiwanna/article/details/17289479前言大家都知道,android应用不可避免的会发生crash,无论你的程序写的多完美,总是无法完全避免crash的发生,可能是由于android系统底层的bug,也可能是由于不充分的机型适配或者是糟糕的网络状况。当crash发生时,系统会kill掉你的程序原创 2013-12-12 22:38:11 · 34434 阅读 · 29 评论 -
高仿微信对话列表滑动删除效果
转载请注明出处:http://blog.csdn.net/singwhatiwanna/article/details/17515543前言用过微信的都知道,微信对话列表滑动删除效果是很不错的,这个效果我们也可以有。思路其实很简单,弄个ListView,然后里面的每个item做成一个可以滑动的自定义控件即可。由于ListView是上下滑动而item是左右滑动,因此会有滑动冲突,也许你需要了原创 2013-12-24 00:43:23 · 39248 阅读 · 134 评论 -
WebView Attack In Android : 解析第三方账号登录平台所存在的安全隐患
转载请注明出处:http://blog.csdn.net/singwhatiwanna/article/details/17663345前言这是一个很有趣的话题,WebView在Android中包括IOS中都是一个很重要的控件,有了它,我们可以直接在应用里打开网页而不用跳到浏览器,且网页效果和浏览器几乎一样,这样会增强用户体验,当然也有缺点:占用内存太大,因为WebView加载网页所耗费的原创 2013-12-30 01:21:43 · 11289 阅读 · 17 评论 -
Android属性动画深入分析:让你成为动画牛人
转载请注明出处:http://blog.csdn.net/singwhatiwanna/article/details/17841165前言感谢你阅读本文,我坚信读完本文肯定不会让你失望的。想要做动画牛人?想要精通动画?那么本文所讲的内容都是你必须要掌握的。关于动画,我已经写了两篇博文,但是还是没有将动画描述全面,于是我写了本文,另外,我后面还会再写一篇属性动画的源码分析,通过这四篇博文,原创 2014-01-04 18:29:20 · 48960 阅读 · 69 评论 -
Android逆向工程-破解 哈皮妹-萝莉
转载请注明出处:http://blog.csdn.net/singwhatiwanna/article/details/18797493前言新的一年新的开始,除了继续我的原有课题之外,我还打算研究下Android逆向工程的一些东西,主要包括反编译、Smali、APK打包、签名、反逆向和移动安全等。这篇就是新课题的第一篇文章,不过要牺牲下哈皮妹-萝莉这款应用了。通过对哈皮妹-萝莉的破解,让我更加深刻原创 2014-01-26 18:01:24 · 31305 阅读 · 29 评论 -
Android apk动态加载机制的研究(二):资源加载和activity生命周期管理
为了更好地阅读本文,你需要先阅读Android apk动态加载机制的研究这篇文章,在此文中,博主分析了Android中apk的动态加载机制,并在文章的最后指出需要解决的两个复杂问题:资源的访问和activity生命周期的管理,而本文将会分析这两个复杂问题的解决方法。需要说明的一点是,我们不可能调起任何一个未安装的apk,这在技术上是无法实现的,我们调起的apk必须受某种规范的约束,只有在这种约束下开发的apk,我们才能将其调起。另外,本文给出的解决方案也不是完美的,但是逻辑已经可以正常地跑通了,剩下的极个别原创 2014-04-11 00:26:48 · 62535 阅读 · 117 评论 -
Android apk动态加载机制的研究
问题是这样的:我们知道,apk必须安装才能运行,如果不安装要是也能运行该多好啊,事实上,这不是完全不可能的,尽管它比较难实现。在理论层面上,我们可以通过一个宿主程序来运行一些未安装的apk,当然,实践层面上也能实现,不过这对未安装的apk有要求。我们的想法是这样的,首先要明白apk未安装是不能被直接调起来的,但是我们可以采用一个程序(称之为宿主程序)去动态加载apk文件并将其放在自己的进程中执行,本文要介绍的就是这么一种方法原创 2014-03-30 21:53:00 · 91066 阅读 · 80 评论 -
微信中MMAlert(半透明底部弹出菜单)的使用介绍
如果大家时常用过微信或者用过iphone,就会发现有种从底部弹出的半透明菜单,这种菜单风格优美并且用户体验良好,先看一下效果。MMAlert来自微信开放平台的sdk示例,其示例的代码有点乱,我做了删减和整理,只保留了MMAlert这个类的一部分功能,即只保留了实现上述效果的那个函数,因为其他函数比较简单,就是普通的AlertDialog,我觉得大家都懂,所以直接删掉了。代码介绍1原创 2013-05-06 23:33:36 · 17484 阅读 · 6 评论 -
android中左右滑屏的实现(广告位banner组件)
原理参见下图。整个组件是一个FrameLayout,里面有两个view,第一个是LinearLayout,承载了4个(或多个)可以滑动的view,见图中绿色背景的部分;第二个是一个RelativeLayout,在其底部放置了一个LinearLayout,在LinearLayout的内部放置了若干个小圆点,用来指示当前屏幕的索引。手势检测用了GestureDetector,并实现了OnGestu原创 2013-05-02 13:21:00 · 32461 阅读 · 158 评论 -
android中图片的三级cache策略(内存、文件、网络) 一
1. 简介现在android应用中不可避免的要使用图片,有些图片是可以变化的,需要每次启动时从网络拉取,这种场景在有广告位的应用以及纯图片应用(比如百度美拍)中比较多。现在有一个问题:假如每次启动的时候都从网络拉取图片的话,势必会消耗很多流量。在当前的状况下,对于非wifi用户来说,流量还是很贵的,一个很耗流量的应用,其用户数量级肯定要受到影响。当然,我想,向百度美拍这样的应用,必然也有其原创 2013-06-08 11:24:14 · 33292 阅读 · 21 评论 -
如何写一个android服务
1.android服务简介android服务的分类还是蛮多的,网上有现成的博客讲解的很好,我就不重复了,连接如下:http://www.cnblogs.com/newcj/archive/2011/05/30/2061370.html本文主要介绍一种常见的服务:通知栏有图标和文字的服务,既可以做自己的事情,也可以供其他activity调用,专业术语描述为 前台服务(可startSe原创 2013-06-08 23:14:40 · 21688 阅读 · 3 评论 -
带有下拉刷新功能的Listview控件
效果图如下1.原理其实就是继承了Listview控件,为其默认加一个header,这个header就是带箭头的那些东西。然后override onTouchEvent函数,根据滑动过程中y坐标的变化来动态修改header的状态(包括箭头的方向和文字提示),其他用法和普通的Listview一样。public class PullToRefreshListView extend原创 2013-07-02 12:25:04 · 12326 阅读 · 15 评论 -
android自定义开关控件-SlideSwitch
1.效果iphone上有开关控件,很漂亮,其实android4.0以后也有switch控件,但是只能用在4.0以后的系统中,这就失去了其使用价值,而且我觉得它的界面也不是很好看。最近看到了百度魔拍上面的一个控件,觉得很漂亮啊,然后反编译了下,尽管没有混淆过,但是还是不好读,然后就按照自己的想法写了个,功能和百度魔拍类似。下面是百度魔拍的效果和SlideSwitch的效果2.原理原创 2013-07-05 21:38:58 · 35364 阅读 · 16 评论