自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 资源 (8)
  • 收藏
  • 关注

转载 Android layer type与WebView白屏以及WebView不随动画而动的问题

先说说这三个layer。LAYER_TYPE_SOFTWARE无论硬件加速是否打开,都会有一张Bitmap(software layer),并在上面对WebView进行软渲染。好处:在进行动画,使用software可以只画一次View树,很省。什么时候不要用:View树经常更新时不要用。尤其是在硬件加速打开时,每次更新消耗的时间更多。因为渲染完这张Bitmap后还需

2015-07-17 16:49:09 627

转载 Android中资源管理机制详细分析

在Android中,所有的资源都在res目录下存放,包括drawable,layout,strings,anim等等,当我们向工程中加入任何一个资源时,会在R类中相应会为该 资源分配一个id,我们在应用中就是通过这个id来访问资源的,相信做过Andorid开发的朋友对于这些肯定不会陌生,所以这个也不是我今天想要说的,我今天想和大家一起学习的是Android是如何管理资源的,在Android系统中,

2015-03-03 18:23:48 950

转载 轻松实现Android 更换皮肤(主题)

目前很多app都具有换肤功能,可以根据用户自己的喜好定制自己的界面,比如新浪微博,网易新闻等等。今天这里我就是要介绍一种机制实现app换肤。我找了几款app换肤的应用,换肤基本都是更换了界面的Icon,背景图片,背景色等等,基本没有遇到更换布局的,其实布局也是可以更换的,但是觉得没有必要。所以这篇文章讲解的换肤也是指换icon,背景图片等资源。通过网络搜索我发现网上上提供了大概这么

2015-03-03 18:22:34 2875 2

转载 修正Android摄像头API

这几天本人参加了一个公司举办的编程马拉松,我打算使用Android摄像头来做。我一直都认为Android的API很糟糕,但是没有详细说出哪些地方糟糕,也没有说怎么改进会更好。趁这个机会,现在我就来解释解释。我认为,Android关于摄像头的API非常糟糕,如果你没有用过,那么自己花点时间看看去吧。使用这个Camera API的时候,经常会使开发者使用错误,会导致开发者忽略很多重要的东西,然

2014-08-28 15:14:48 809

转载 Android: NDK编程入门笔记

为何要用到NDK?概括来说主要分为以下几种情况:1. 代码的保护,由于apk的java层代码很容易被反编译,而C/C++库反汇难度较大。2. 在NDK中调用第三方C/C++库,因为大部分的开源库都是用C/C++代码编写的。3. 便于移植,用C/C++写得库可以方便在其他的嵌入式平台上再次使用。下面就介绍下Android NDK的入门学习过程:入门的最

2014-06-13 16:12:31 618

原创 android animation中的参数interpolator详解

android:interpolator    interpolator 被用来修饰动画效果,定义动画的变化率,可以使存在的动画效果可以 accelerated(加速),decelerated(减速),repeated(重复),bounced(弹跳)等。  android 自带的interpolator     AccelerateDecelerateInterpo

2014-03-12 14:24:10 4618

原创 Android有效解决加载大图片时内存溢出的问题

尽量不要使用setImageBitmap或setImageResource或BitmapFactory.decodeResource来设置一张大图,因为这些函数在完成decode后,最终都是通过java层的createBitmap来完成的,需要消耗更多内存。因此,改用先通过BitmapFactory.decodeStream方法,创建出一个bitmap,再将其设为ImageView的

2014-03-10 18:24:44 97

转载 android handler 机制

在android中提供了一种异步回调机制Handler,使用它,我们可以在完成一个很长时间的任务后做出相应的通知    handler基本使用:        在主线程中,使用handler很简单,new一个Handler对象实现其handleMessage方法,在handleMessage中提供收到消息后相应的处理方法即可,这里不对handler使用进行详细说明,在看本博文前

2014-01-12 22:22:07 700

转载 从源码的角度解析View的事件分发

有好多朋友问过我各种问题,比如:onTouch和onTouchEvent有什么区别,又该如何使用?为什么给ListView引入了一个滑动菜单的功能,ListView就不能滚动了?为什么图片轮播器里的图片使用Button而不用ImageView?等等……对于这些问题,我并没有给出非常详细的回答,因为我知道如果想要彻底搞明白这些问题,掌握Android事件分发机制是必不可少的,而Android事件分发

2013-12-02 11:48:11 803

转载 从源码的角度分析ViewGruop的事件分发

从源码的角度分析ViewGruop的事件分发。首先我们来探讨一下,什么是ViewGroup?它和普通的View有什么区别?顾名思义,ViewGroup就是一组View的集合,它包含很多的子View和子VewGroup,是Android中所有布局的父类或间接父类,像LinearLayout、RelativeLayout等都是继承自ViewGroup的。但ViewGroup实际上也

2013-12-02 11:46:40 768

转载 Android Fragment应用实战,使用碎片向ActivityGroup说再见

现在Fragment的应用真的是越来越广泛了,之前Android在3.0版本加入Fragment的时候,主要是为了解决Android Pad屏幕比较大,空间不能充分利用的问题,但现在即使只是在手机上,也有很多的场景可以运用到Fragment了,今天我们就来学习其中一个特别棒的应用技巧。很多手机应用都会有一个非常类似的功能,即屏幕的下方显示一行Tab标签选项,点击不同的标签就可以切换到不同的

2013-12-02 10:21:19 929

转载 利用HTML5开发Android

●Android设备多分辨率的问题Android浏览器默认预览模式浏览 会缩小页面 WebView中则会以原始大小显示Android浏览器和WebView默认为mdpi。hdpi相当于mdpi的1.5倍 ldpi相当于0.75倍三种解决方式:1 viewport属性 2 CSS控制 3 JS控制1 viewport属性放在HTML的中 Html代

2013-09-27 14:24:33 1036

转载 通过SlidingMenu Fragment实现当前最流行的侧滑

内容简介:通过SlidingMenu库与Fragment来实现当前最为流行的侧滑模式。其实涉及到的知识点有:1.SlidingMenu2.Fragment通过layout构建一个Fragment通过preference 来构建Fragment准备工作:1. SlidingMenu 下载地址: https://github.com/jfeinstein10/Slidi

2013-07-10 11:52:06 6718 8

原创 使用 Simple 简化 XML 序列化

Simple 是什么?Simple 是一个 Java 框架,用于简化序列化和反序列化 XML 的过程。使用 Simple,开发人员可以简化(名字由此而来)将简单老 Java 对象(POJO)转换成 XML 文档的过程 — 即所谓的序列化(serialization)过程。Simple 也可促进相反的过程:开发人员可以将 XML 文档转换成 POJO — 即所谓的反序列化(deserializa

2013-04-11 17:07:14 749

转载 android消息推送

1.引言  所谓的消息推送就是从服务器端向移动终端发送连接,传输一定的信息。比如一些新闻客户端,每隔一段时间收到一条或者多条通知,这就是从服务器端传来的推送消息;还比如常用的一些IM软件如微信、GTalk等,都具有服务器推送功能。  推送方法如下:  1)通过SMS进行服务器端和客户端的交流通信。  在Android平台上,你可以通过拦截SMS消息并且解析消息内容来了解服务器的意图

2013-04-09 16:28:29 830

转载 Android屏幕密度(Density)和分辨率的解释

HVGA屏density=160;QVGA屏density=120;WVGA屏density=240;WQVGA屏density=120density值表示每英寸有多少个显示点,与分辨率是两个概念。不同density下屏幕 分辨率信息,以480dip*800dip的WVGA(density=240)为例density=120时 屏幕实际分辨率为240px*400px (两个点对

2013-03-24 20:51:07 736

转载 Android开发优化之——使用软引用和弱引用

Java从JDK1.2版本开始,就把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期。这四种级别由高到低依次为:强引用、软引用、弱引用和虚引用。这里重点介绍一下软引用和弱引用。如果一个对象只具有软引用,那么如果内存空间足够,垃圾回收器就不会回收它;如果内存空间不足了,就会回收这些对象的内存。只要垃圾回收器没有回收它,该对象就可以被程序使用。软引用可用来实现内存敏感的高速缓存

2013-03-18 16:03:14 653

转载 Android开发优化之——从代码角度进行优化

通常我们写程序,都是在项目计划的压力下完成的,此时完成的代码可以完成具体业务逻辑,但是性能不一定是最优化的。一般来说,优秀的程序员在写完代码之后都会不断的对代码进行重构。重构的好处有很多,其中一点,就是对代码进行优化,提高软件的性能。下面我们就从几个方面来了解Android开发过程中的代码优化。1)静态变量引起内存泄露在代码优化的过程中,我们需要对代码中的静态变量特别留意。静态变量是类

2013-03-18 14:59:49 582

原创 Android之MVC模式

MVC (Model-View-Controller):M是指逻辑模型,V是指视图模型,C则是控制器。一个逻辑模型可以对于多种视图模型,比如一批统计数据你可以分别用柱状图、饼图来表示。一种视图模型也可以对于多种逻辑模型。使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式,而C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新,这与《设计模式》中的观察者模式是完

2013-03-14 17:38:09 957

原创 android 代码混淆 例子

-optimizationpasses 5#混淆时不会产生形形色色的类名 -dontusemixedcaseclassnames#指定不去忽略非公共的库类-dontskipnonpubliclibraryclasses#不预校验-dontpreverify-dontshrink#忽略警告-ignorewarnings#优化-optimizations !

2013-03-05 09:46:20 1290

转载 android 分辨率自适应

如何将一个应用程序适配在不同的手机上,虽然这不算是一个技术问题,但是对于刚刚做屏幕的开发人员来说,还真不是一件多么简单的事情。首先:你需要在AndroidManifest.xml文件的元素如下添加子元素“true”android:normalScreens=“true” android:anyDensity=“true”android:smallScreen

2013-01-25 17:45:34 557

转载 Android UI事件处理、focus处理

在Android平台上,捕获用户在界面上的触发事件有很多种方法,View类就提供这些方法。你在使用各种View视图来布局界面时,会发现几个公用的回调方法来捕捉有用的UI触发事件,当事件在某个View对象上被触发时,这些方法会被系统框架通过这个对象所调用,例如:当一个View(如一个Button)被点击,onTouchEvent()方法会在该对象上被调用,所以,为了捕获和处理事件,必须去继承某个类,

2013-01-07 14:31:14 710

转载 Android开发指南 ──应用程序基础

Android应用程序使用Java做为开发语言。aapt工具把编译后的Java代码连同其它应用程序需要的数据和资源文件一起打包到一个Android包文件中,这个文件使用.apk做为扩展名,它是分发应用程序并安装到移动设备的媒介,用户只需下载并安装此文件到他们的设备。单一.apk文件中的所有代码被认为是一个应用程序。从很多方面来看,每个Android应用程序都存在于它自己的世界之中:默认

2012-06-23 17:25:46 1356

转载 Android各种访问权限Permission详解

在Android的设计中,资源的访问或者网络连接,要得到这些服务都需要声明其访问权限,否则将无法正常工作。在Android中这样的权限有很多种,这里ATAAW.COM将各类访问权限一一罗列出来,供大家使用时参考之用。android.permission.EXPAND_STATUS_BAR允许一个程序扩展收缩在状态栏,android开发网提示应该是一个类似Windows Mobile中的托盘

2012-06-20 15:37:28 932

转载 Android动画效果 translate、scale、alpha、rotate 切换Activity动画 控件位置调整

如果需要控件停在动画后的位置,需要设置android:fillAfter属性为true,在set节点中。默认在动画结束后回到动画前位置。设置android:fillAfter后,我们看到了控件留在了动画后的位置,其实也只是看到在那个位置,真实位置还是在原来动画前那里,你会发现Button不能被点击,就是这个原因。所以我们可以在动画结束后,手动把控件移动到动画结束后的位置。这就需要根结点为Absol

2012-06-04 16:23:29 899

原创 http基础

1.1      执行请求HttpClient的最重要的功能是执行HTTP方法。一个HTTP方法的执行涉及到一个或多个HTTP请求或HTTP响应的交流,HttpClient通常是在内部处理的。用户将提供一个执行请求对象,HttpClient发送请求到目标服务器返回一个相应的响应对象,如果执行失败则抛出一个异常。所以,HttpClient API的主要切入点是HttpClient的接口,

2012-04-24 11:09:56 746

原创 guice学习地址

http://code.google.com/p/google-guice/wiki/Motivation?tm=6 http://google-guice.googlecode.com/git/javadoc/com/google/inject/package-summary.html http://google-guice.googlecode.com/svn/tags/2.0

2011-12-22 17:32:05 524

原创 guice的使用例子

参考了一些网友的文章,写了这篇guice的文章,作为备忘。关于guice就不多说了,它是google的一个IOC容器,因为是基于“注释”的,所以JDK版本必须大约等于1.5。不然是不支持“注释”的。另外,因为其注入方式不需要解析xml,所以速度还是较快的,网上传说比spring快10-100倍,但其功能没有spring强大,但是只做IOC使用,也不失为一种不错的方法。其jar包和文档都

2011-12-22 17:16:09 715

原创 spring与guice的区别

Guice是Google开发的一个轻量级,基于Java5(主要运用泛型与注释特性)的依赖注入框架(IOC)。Guice非常小而且快。Guice是类型安全的,它能够对构造函数,属性,方法(包含任意个参数的任意方法,而不仅仅是setter方法)进行注入。借斧子的例子说一说spring与guice的区别。   看下边的例子:对于不同社会形态下一个人(java对象,调用者)需要一把斧子(jav

2011-12-22 17:11:43 845

原创 Guice(三)

在不同作用域间注入你可以安全地将来自大作用域的对象注入到来自小作用域或相同作用域的对象中。例如,你可以将一个作用域为 HTTP 会话的对象注入到作用域为 HTTP 请求的对象中。但是,向较大作用域的对象中注入就是另一件事了。例如,如果你把一个作用域为 HTTP 请求的对象注入到一个单件对象中,最好情况下,你会得到无法在 HTTP 请求中运行的错误信息,最坏情况下,你的单件对象会总是引用来自第一

2011-12-22 17:10:01 809

原创 Guice(二)

自举(Bootstrapping)你的应用自举(bootstrapping)对于依赖注入非常重要。总是显式地向Injector 索要依赖,这就将 Guice 用作了服务定位器,而不是一个依赖注入框架。你的代码应该尽量少地和 Injector 直接打交道。相反,你应该通过注入一个根对象来自举你的应用。容器可以更进一步地将依赖注入根对象所依赖的对象,并如此迭代下去。最终,在理想情况

2011-12-22 17:09:02 141

原创 Guice(一)

Guice是一个轻量级,基于Java5(主要运用泛型与注释特性)的依赖注入框架(IOC)。Guice非常小而且快。Guice是类型安全的,它能够 对构造函数,属性,方法(包含任意个参数的任意方法,而不仅仅是setter方法)进行注入。Guice还具有一些可选的特性比如:自定义scopes, 传递依赖,静态属性注入,与Spring集成和AOP联盟方法注入等。Java企业应用开发社区在连接对象

2011-12-22 17:07:43 827

原创 firefox中隐藏flash导致 flash重新加载的问题

在firefox中使用display:none隐藏包含flash的元素时,浏览器会unload flash,再次设置display:block时,会重新加载flash。 所以,如果不希望出现这种状况,不能使用display:none来隐藏元素。可考虑visibility:

2011-09-13 23:26:44 1040

原创 JAVA写的escape函数,可以处理JAVASCRIPT的ESCAPE处理的字符,避免字符集问题

public String escape(String src) {  int i;  char j;  StringBuffer tmp = new StringBuffer();  tmp.ensureCapacity(src.length() * 6);  for (i =

2011-07-13 23:33:42 702

原创 Javascript中escape(), encodeURI()和encodeURIComponent()之精析与比较

escape(), encodeURI()和encodeURIComponent()是在Javascript中用于编码字符串的三个常用的方法,而他们之间的异同却困扰了很多的Javascript初学者,今天我就在这里对这三个方法详细地分析与比较一下。escape() 方法MSDN

2011-07-13 23:32:12 584

原创 用emial登陆openfire

XMPP是一种基于XML的协议,它继承了在XML环境中灵活的发展性。因此,基于XMPP的应用具有超强的可扩展性。经过扩展以后的XMPP可以通过发送扩展的信息来处理用户的需求,以及在XMPP的顶端建立如内容发布系统和基于地址的服务等应用程 序。而且,XMPP包含

2011-07-05 23:32:22 2564

原创 推荐:iJab ajax jabber 客户端

昨天在XMPP群里,iJab的成员自荐了一下他们的ajax jabber 客户端开源项目 http://code.google.com/p/ijab/ 看了一下DEMO:http://samespace.anzsoft.com/webim/iJab/iJab.

2011-07-05 23:18:11 11264 3

原创 xmpp with openfire之五 插件-利用Broadcast实现群

openfire提供了很好的插件支持,安装也非常方便。 下面介绍一个使用Broadcast插件实现的简单群 Broadcast插件是一个向用户发送广播消息的插件。 安装插件 登录openfire管理控制台-插件-插件管理-有效的插件 可以看到开放源代码插件列表

2011-07-05 23:15:38 6605 3

原创 xmpp with openfire之四 扩展的AuthProvider

上一篇中提到jdbcAuthProvider.passwordType提供了三种方式 如果你的密码加密规则不是这三种方式,可以自己进行扩充 首先,下载openfire的源码 http://www.igniterealtime.org/downloads/sou

2011-07-05 23:14:14 1457

原创 xmpp with openfire之三 openfire扩展小试 整合现有系统用户

openfire服务器配置,先跳过介绍,我想在文章里用到的时候再插入一些介绍。 openfire扩展小试 整合现有系统用户 如果我想使用现有系统的用户/组(部门),而不想使用openfire再去管理一套用户/组,用openfire可以非常方便的整合现有系统用户

2011-07-05 23:10:14 1759

proguard4.7

用于混淆源码~不易被被人修改! ProGuard是一个压缩、优化和混淆Java字节码文件的免费的工具,它可以删除无用的类、字段、方法和属性。可以删除没用的注释,最大限度地优化字节码文件。它还可以使用简短的无意义的名称来重命名已经存在的类、字段、方法和属性。ProGuard支持那些种类的优化:   除了在压缩操作删除的无用类,字段和方法外,ProGuard也能在字节码级提供性能优化,内部方法有:   常量表达式求值   删除不必要的字段存取   删除不必要的方法调用   删除不必要的分支   删除不必要的比较和instanceof验证   删除未使用的代码   删除只写字段   删除未使用的方法参数   像push/pop简化一样的各种各样的peephole优化   在可能的情况下为类添加static和final修饰符   在可能的情况下为方法添加private, static和final修饰符   在可能的情况下使get/set方法成为内联的   当接口只有一个实现类的时候,就取代它   选择性的删除日志代码   实际的优化效果是依赖于你的代码和执行代码的虚拟机的。简单的虚拟机比有复杂JIT编译器的高级虚拟机更有效。无论如何,你的字节码会变得更小。

2013-04-16

ant-contrib-1.0b3.jar

用于扩展ant,特别是在用ant build android 项目是需要哦。

2013-04-15

MyEclipse9 注册和激活机

MyEclipse9 注册和激活机,哥已经注册成功了,很给力哦

2012-08-10

smack api 中文

找了好久,终于找到了smack中文版的api了

2011-09-07

smack类库详细介绍,【中文】

smack类库详细介绍,【中文】,自己的总结,很全的。

2011-04-29

FlashChart

绝对高级应用,能够适应各种环境各种Web语言的图表编程,绝对经典,本人在网上搜索N长时间,呕血总结,呵呵。开源的FlashChart2的应用,并且结合最新支持的Json配置,可以灵活显示数据为曲线图,柱状图,折线图,饼图等。绝对适合项目应用。该代码要在应用发布后使用,例子是java语言的。

2011-04-10

open-flash-chart

完整的flashchart包!很值得去研究。

2011-04-10

FlashChart 技术研究

OpenFlashChart是一个开源的报表制作组件,该组件能够自动生成一个好看的、动态的flash报表;该组件使用flash展示报表能够很好的做到与浏览器进行集成,目前浏览器基本都能很好的支持flash;该组件还支持一些简单的JavaScript,提供在图形上对外部URL的链接;该组件非常小,java类一共不超过10个,可操作的API也很少,这样学习起来也非常容易上手。但可阅读的文档非常少,在与其它框架集成方面还有些问题。

2011-04-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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