- 博客(126)
- 资源 (11)
- 收藏
- 关注
转载 DES加密
出处:http://blog.youkuaiyun.com/zhaokaiqiang1992在我们的应用程序涉及到比较敏感的数据的时候,我们通常会对数据进行简单的加密。在与服务器之间的数据交互中,除了可以使用post请求来增强数据的安全性之外,我们可以使用常见的加密算法,对数据进行加密。今天主要介绍的是DES加密算法。首先,DES属于一种对称的加密算法,所谓对称,就是说加密和解密使用的都是同一个密钥,
2016-03-17 13:39:35
703
1
转载 Android RSA加密解密
转载请注明出处: http://blog.youkuaiyun.com/bbld_/article/details/38777491概述RSA是目前最有影响力的公钥加密算法,该算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困 难,因此可以将乘积公开作为加密密钥,即公钥,而两个大素数组合成私钥。公钥是可发布的供任何人使用,私钥则为自
2016-03-17 10:39:01
565
转载 深入浅出RxJava(二:操作符)
原文地址在第一篇blog中,我介绍了RxJava的一些基础知识,同时也介绍了map()操作符。当然如果你并没有意愿去使用RxJava我一点都不诧异,毕竟才接触了这么点。看完这篇blog,我相信你肯定想立即在你的项目中使用RxJava了,这篇blog将介绍许多RxJava中的操作符,RxJava的强大性就来自于它所定义的操作符。首先先看一个例子:准备工作假设我有这样一个方法:
2016-03-09 17:22:47
517
转载 深入浅出RxJava(一:基础篇)
原文地址原文链接RxJava正在Android开发者中变的越来越流行。唯一的问题就是上手不容易,尤其是大部分人之前都是使用命令式编程语言。但是一旦你弄明白了,你就会发现RxJava真是太棒了。这里仅仅是帮助你了解RxJava,整个系列共有四篇文章,希望你看完这四篇文章之后能够了解RxJava背后的思想,并且喜欢上RxJava。基础RxJava最核心的两个东西是Obser
2016-03-09 17:20:57
370
转载 RxJava 的使用入门
原文地址:点击打开一、什么是 RxJava?RxJava 是一个响应式编程框架,采用观察者设计模式。所以自然少不了 Observable 和 Subscriber 这两个东东了。RxJava 是一个开源项目,地址:https://github.com/ReactiveX/RxJava还有一个RxAndroid,用于 Android 开发,添加了 Android 用的接口
2016-03-09 17:17:05
554
转载 RxJava相关
我从去年开始使用 RxJava ,到现在一年多了。今年加入了 Flipboard 后,看到 Flipboard 的 Android 项目也在使用 RxJava ,并且使用的场景越来越多 。而最近这几个月,我也发现国内越来越多的人开始提及 RxJava 。有人说『RxJava 真是太好用了』,有人说『RxJava 真是太难用了』,另外更多的人表示:我真的百度了也谷歌了,但我还是想问: RxJav
2016-03-09 16:53:46
345
转载 应用内切换主题有哪些方案可以实现
这里讨论的只是白天、夜晚主题切换这种场景,不涉及外部资源加载。现在要给App添加夜晚主题,所以就需要选择一种应用内部更换主题的实现方案,目前来说,比较常见的几种方式如下:Theme设置Theme来切换不同主题。优点:利用系统自带的机制实现,根据标志位setTheme()即可。缺点:在主题切换界面不重启的情况下,不能自动完成界面主题的刷新。遍历View对主题的更换,使用遍
2016-03-04 16:44:56
348
转载 有什么便捷的方式实现activity变暗的效果
不要新开启Activity的方式也不要使用Dialog让背景跟Dialog出现一样,变暗,带动画。private void dimBackground(final float from, final float to) { final Window window = getWindow(); ValueAnimator valueAnimator = Value
2016-03-04 16:43:54
354
转载 android中常见的设计模式有哪些?
建造者模式建造者模式最明显的标志就是Build类,而在Android中最常用的就是Dialog的构建,Notification的构建也是标准的建造者模式。建造者模式很好理解,如果一个类的构造需要很多参数,而且这些参数并不都是必须的,那么这种情况下就比较适合Builder。比如构建一个AlertDialog,标题、内容、取消按钮、确定按钮、中立按钮,你可能只需要单独设置几个属性即可;另外
2016-03-04 16:42:27
361
转载 ART、JIT、AOT、Dalvik之间有什么关系?
JIT与DalvikJIT是"Just In Time Compiler"的缩写,就是"即时编译技术",与Dalvik虚拟机相关。怎么理解这句话呢?这要从Android的一些特性说起。JIT是在2.2版本提出的,目的是为了提高Android的运行速度,一直存活到4.4版本,因为在4.4之后的ROM中,就不存在Dalvik虚拟机了。我们使用Java开发android,在编译打包APK
2016-03-04 16:41:15
580
转载 Canvas
Android Canvas绘图详解(图文)泡在网上的日子 发表于 2012-12-12 20:29 第 80544 次阅读 Canvas,android28编辑推荐:稀土掘金,这是一个高质量的技术干货分享社区,web前端、Android、iOS、设计资源和产品,满足你的学习欲望。Android中使用图形处理引擎,2D部分是android SDK内部自己提供,3
2016-02-02 15:49:02
364
转载 个人开发者使用支付
如果是公司的产品,那么也就不存在问题了,Ping++对所有支付做了一个集成。如果开发者个人想接入支付系统,这个申请过程几乎是不大可能的。而Bmob为广大开发人员提供的统一、正规的收费手段,让没有企业认证的个人开发者,也能通过支付宝和微信向用户收费。但是有一个缺点,支持的渠道少,只支持支付宝和微信。此外,微信支付还要安装一个插件,用户体验及其不好。官方的文档在这里Android支付SDK接入
2015-11-04 17:39:08
944
转载 支付宝通用类封装
在做Android支付的时候肯定会用到支付宝支付, 根据官方给出的demo做起来非常费劲,所以我们需要一次简单的封装。封装的代码也很简单,就是将官网给的demo提取出一个类来方便使用。1"font-size: medium;">/**2 * 支付宝支付3 *
2015-11-04 17:35:28
781
转载 模拟微信短视频拍摄
本文主要讲述了在Android项目中模仿微信的拍摄和上传短视频功能,点击开始拍摄,设置最长拍摄时间,现在把实现思路和代码整理出来分享给Android程序员兄弟们,希望给他们的开发工作带来帮助。1.视频录制自定义控件:1"font-size: medium;">/**2 * 视频播放控件
2015-11-03 14:26:02
1382
转载 AndroidTestCase单元测试框架用法
在实际开发中,开发android软件的过程需要不断的进行测试。而是用Junit测试框架,则是正规android开发的必用技术,在Junit中可以得到组件,可以模拟发送事件和检测程序处理的正确性。比如,若想验证一个自定义类中的某个方法时,则可以在单元测试中创建这个类对象,并给定适合参数调用该类方法。 Android单元测试具体方法如下:(1).创建一个类继承AndroidTestCa
2015-11-03 13:46:45
629
转载 基本算法题汇
原文地址:点击打开链接1.一道简单16进制加密算法Java代码 /** * 简单加密解密算法 * 任意十六进制字符ascii转换,转换规则: * 当前index位置的数加上index,如果结果超出F则从0重新开始循环 * 比如: "3A4E"应该被转换为"3B61" * 3在0位置,所以保持不变, * A在1位置,转化为B, * 4在2位
2015-10-29 14:08:17
429
转载 动画(六)属性动画的工作原理
原文地址:http://blog.youkuaiyun.com/lmj623565791/article/details/420568591、概述Android中想做很炫酷的动画效果,相信在很多时候你都可以选择使用属性动画,关于属性动画如何使用,我们已经很详细的写过两篇博客讲解。如果你还不了解,请参考:Android 属性动画(Property Animation) 完全解析 (上)
2015-10-29 13:59:22
372
转载 动画(五)属性动画的实现原理
原文地址:点击打开链接1.ValueAnimatorValueAnimator可以说是整个属性动画框架的核心类,动画的驱动就是在此类中实现的。下面举一个ValueAnimator的实例: Java代码 ValueAnimator anim= ValueAnimator.ofInt(0, 40); animation.setDuration(40)
2015-10-29 13:56:57
1121
转载 动画(一)
Android SDK介绍了2种Animation:Tween Animation(渐变动画):通过对特定的对象做图像变换如平移、缩放、旋转、淡出/淡入等产生动画效果Frame Animation(帧动画):创建一个Drawable序列,这些Drawable可以按照指定的时间间隔一个一个的显示,也就是顺序播放事先做好的图像。1、Tween Animation动画:(1)Tween
2015-10-28 13:23:44
286
转载 动画(四)属性动画的工作原理
前言本文为Android动画系列的最后一篇文章,通过对源码的分析,能够让大家更深刻地理解属性动画的工作原理,这有助于我们更好地使用属性动画。但是,由于动画的底层实现已经深入到jni层,并且涉及到显示子系统,因此,深入地分析动画的底层实现不仅比较困难而且意义不大,因此,本文的分析到jni层为止。 Android动画系列:android动画简介Android动画进阶—使用开源动画库
2015-10-28 13:18:57
338
转载 动画(三)
前言感谢你阅读本文,我坚信读完本文肯定不会让你失望的。想要做动画牛人?想要精通动画?那么本文所讲的内容都是你必须要掌握的。关于动画,我已经写了两篇博文,但是还是没有将动画描述全面,于是我写了本文,另外,我后面还会再写一篇属性动画的源码分析,通过这四篇博文,你将真正地成为动画牛人。Android动画系列:android动画简介Android动画进阶—使用开源动画库nineoldand
2015-10-28 13:16:31
256
转载 动画(二)
前言Android系统支持原生动画,这为应用开发者开发绚丽的界面提供了极大的方便,有时候动画是很必要的,当你想做一个滑动的特效的时候,如果苦思冥想都搞不定,那么你可以考虑下动画,说不定动画轻易就搞定了。下面再简单回顾下Android中的动画,本文后面会介绍一个稍微复杂点的动画,先上效果图动画分类View动画:也叫渐变动画,针对View的动画,主要支持平移、旋转、缩放、透明度Dr
2015-10-28 13:14:46
256
转载 Binder机制(一)
原文地址:点击打开链接Android深入浅出之Binder机制Android深入浅出之Binder机制一说明 Android系统最常见也是初学者最难搞明白的就是Binder了,很多很多的Service就是通过Binder机制来和客户端通讯交互的。所以搞明白Binder的话,在很大程度上就能理解程序运行的流程。我们这里将以MediaService的例子来分析Bin
2015-10-28 09:56:19
302
转载 事件分发之ViewGroup(二)
在上一篇文章中说到的是关于View的事件分发机制,这篇文章就谈一谈关于ViewGroup的事件分发机制:关于ViewGroup的事件分发机制,一般情况下,和View的情况是大致一样的,只不过由于ViewGroup是一组View的集合,所以,其中涉及到了子View,事件分发相对于View就多了一层,会稍微复杂一些。那么下面就看看大神是如何分析的吧:原文详见:Android事件分发机制
2015-09-11 16:19:42
294
转载 事件分发之View
转载前说明:写这篇博客的缘由不是因为在网上看到了关于Android事件分发的文章,而是一方面因为面试中被问到了,一直在使用却没有真正了解过其原理,另一方面是因为想更多更深入的学习一下。因此在网上找了一些文章,觉得写得都挺好的,自己也简单的运行了一下小Demo,总觉得看完了还是有点不清晰,就想自己梳理一下,结合大神分享的,把自己微不足道的理解也加进去,希望能更深入的理解,加深印象。就
2015-09-11 16:18:05
275
转载 Java集合总汇
一、java集合体系图java视频观看java集合就是一个容器。1. 集合概述l 为了保存不确定的数据,或者对象,以及保存具有映射关系的数据。l 所有的集合类都位于java.util包下。1.1. 什么是集合,有什么特点?面向对象语言对事物的体现都是以对象的形式存在,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象
2015-08-05 13:36:24
408
转载 Map接口之Hashtable、HashMap、LinkedHashMap、TreeMap、WeakHashMap等
Map接口之HashSet、Hashtable、LinkedHashMap、TreeMap、WeakHashMap、IdentityHashMap、EnumMap Map用于保存具有映射关系的数据,Map里保存着两组数据:key和value,它们都可以使任何引用类型的数据,但key不能重复。所以通过指定的key就可以取出对
2015-08-05 13:24:35
518
转载 客户端集成支付宝接口
项目需要,需要在客户端集成支付宝接口。就研究了一下:因为使用支付宝接口,就需要到支付宝官网:注册帐号,并申请。下面讲的是申请好之后的操作。登录成功之后, 店家我的商家服务—在页面的下方找到——>签约管理—>找打 移动支付—–>点击下载集成文档—>跳到新的页面,在页面下方—>找到下载开发包,下载移动支付即可。然后解压出来之后一般会得到三个文件夹。这个时候要打开文件名为: 支付宝钱包支付接口开发包
2015-08-05 11:07:46
481
转载 ThreadPoolExecutor工作原理
Java并发编程:线程池的使用 Java并发编程:线程池的使用 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那
2015-08-03 16:36:49
665
转载 深入了解ThreadPoolExecutor类的工作原理
原文连接:http://www.cnblogs.com/dolphin0520/p/3932921.htmlJava并发编程:线程池的使用 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低
2015-08-03 16:13:25
1040
原创 BoundService的基本使用
导读: bound服务允许组件(比如activity)对其进行绑定、发送请求、接收响应、甚至进行进程间通信(IPC)。bound服务一般只在为其它应用程序组件服务期间才是存活的,而不会一直在后台保持运行。bound服务是Service类的一种实现,它允许其它应用程序与其绑定并交互。为了让服务支持绑定,你必须实现onBind()回调方法。这个方法返回一个IBinder对象
2015-08-03 13:48:26
458
原创 扩展IntentService类的使用
导读: 1. 当我们的服务需要多线程运行时,需要使用扩展Service类,对于每一个启动请求它都用一个工作线程处理任务,并且每次只处理一个请求。 2.当我们的服务需要通过一个工作队列来处理启动请求时,可以使用扩展IntentService类,这样可以同时处理多个请求。 那么扩展IntentService的执行步骤: 创建一个缺省的
2015-07-31 19:27:48
371
转载 [Android实例] Handler+ExecutorService(线程池)+MessageQueue模式+缓存模式
android线程池的理解,晚上在家无事 预习了一下android异步加载的例子,也学习到了一个很重要的东东 那就是线程池+缓存 下面看他们的理解。[size=1.8em]Handler+Runnable模式我们先看一个并不是异步线程加载的例子,使用 Handler+Runnable模式。这里为何不是新开线程的原因请参看这篇文章:Android Runnable 运行在那个线程
2015-07-30 16:55:30
342
原创 synchronized关键字使用方法
导读: 在具体的开发过程中,我们或多或少的遇见或使用过synchronized关键字来修饰方法、代码块。。。至今我都不是太会使用这个关键字,所以从网上搜集的各种资料,整理了一下,供学习研究使用。首先我们要清楚synchronized使用的地方:1.从宏观上来说,他用来修饰方法和代码块-------也就是我们所说的----同步方法和同步代码快。2.从微观上(细分)来说
2015-07-30 14:27:27
514
转载 如何学习源码----转自知乎
这是前言在Android系统源码上摸索4年,说说我的看法:显然Eclipse不是阅读Android源码的好工具,不流畅,搜索低效,继承性关系/调用关系都无法有效查看。推荐Source Insight,在这个工具帮助下,你才可以驾驭巨大数量的Android 源码,你可以从容在Java,C++,C代码间遨游,你可以很快找到你需要的继承和调用关系。顺便,现在东家是Linux+Samba+Wi
2015-07-23 08:36:49
2210
原创 AsyncTask 与 Handler+Thread 与Thread(Runnable)认识
导读: 在做项目的时候,我们会经常使用到AsyncTask、Handler+Thread(Runnable)、Thread(Runnable),但是不知道大家是否了解他们的使用情景。 下面是我个人学习后的一些理解: AsyncTask:用来管理多个线程的封装类; 他主要分为两个部分: 一:与
2015-07-22 16:46:23
558
转载 32位64位Eclipse和jdk对应关系
参考这篇文章:http://wenku.baidu.com/view/57994c270066f5335a81214c.html 个人在这里做些补充和个人的一些看法。 首先关于32位/64位系统,jdk32位,64位和eclipse 32位和64位的一些对应关系做些说明。1.32位操作系统不可以装64位jdk,64位操作系统一般都可以安装32位jdk,64位
2015-07-17 08:59:50
10443
原创 ScrollView嵌套ViewPager引起的滑动冲突的解决方案
导读:ScrollView嵌套ViewPager引起的滑动冲突,原因是S从rollView和ViewPager都有滑动的效果,当我们发生滑动这个动作时,系统不知道 要交给那个控件来处理滑动操作,故出现了冲突。知道了原理,我们要做的就是1.给最先捕获事件的View一些参数,让其根据参数做比较,然后判断出Motion到底要交给谁来处理。或者2.我们直接手动操作代码告诉让哪个控件来处理M
2015-07-15 10:19:45
543
原创 Android中dp、dip、px、sp之间的区别
导读:虽然在Android的开发过程中,我们直接使用dp和px,基本上不会去思考为什么用这些单位,不过在一些面试中,会经常性的被问到这个问题,所以今天我们应该来了解一下这个问题。1、概述 过去,程序员通常以像素为单位设计计算机用户界面。例如:图片大小为80×32像素。这样处理的问题在于,如果在一个每英寸点数(dpi)更高的新显示器上运行该程序,则用户界面会显得很小。在有些情
2015-07-13 16:14:17
385
原创 SQL---增删改查
一、增:有4种方法 1.使用insert插入单行数据: 语法:insert [into] [列名] values 例:insert into Strdents (姓名,性别,出生日期) values ('开心朋朋','男','1980/6/15') 注意:into可以省略;列名列值用逗号分开;列值用单引号因上;如果省略表名,
2015-05-27 14:12:16
317
ListView嵌套ListView
2015-09-11
IntentService模拟上传图片
2015-08-03
关键词飞入飞出的动画效果
2015-05-08
悬浮窗形式的Activity
2015-04-24
侧滑删除(qq)
2015-04-09
类似竖直方向的viewpager
2015-01-09
Scroller及自定义View实现触摸滑屏
2015-01-09
listView嵌套gridView的demo
2014-12-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人