
Android进阶
文章平均质量分 88
hnbyboy
热爱技术
展开
-
Android 异步下载图片并缓存到本地以节约网络流量
在Android开发中我们经常有这样的需求,从服务器上下载xml或者JSON类型的数据,其中包括一些图片资源,本demo模拟了这个需求,从网络上加载XML资源,其中包括图片,我们要做的是解析XML里面的数据,并且把图片缓存到本地一个cache目录里面,并且用一个自定义的Adapter去填充到LIstView,demo运行效果就不上贴了,需要的朋友自己敲一下代码:通过本demo,可以学会原创 2013-05-15 13:26:25 · 5416 阅读 · 0 评论 -
异步加载图片,使用LruCache和SD卡或手机缓存,效果非常的流畅
异步加载图片的例子,网上也比较多,大部分用了HashMap> imageCache ,但是现在已经不再推荐使用这种方式了,因为从 Android 2.3 (API Level 9)开始,垃圾回收器会更倾向于回收持有软引用或弱引用的对象,这让软引用和弱引用变得不再可靠。另外,Android 3.0 (API Level 11)中,图片的数据会存储在本地的内存当中,因而无法用一种可预见的方式将其释转载 2014-01-07 14:23:28 · 1697 阅读 · 0 评论 -
将Activity打成jar包供第三方调用(解决资源文件不能打包的问题)
最近有一个需要,我们公司做了一个apk客户端,然后其他的公司可以根据自己的需要来替换里面的资源图片,文字等一些资源文件问题,我本来想这个简单,用两个工程直接替换里面的资源文件就行,老大说,这样子不好,如果要改需要改两个客户端,而且还麻烦,叫我将所有的Activity打成Jar包的形式,这样子我们改了里面的内容就直接发布Jar包出去,其他公司直接下载Jar来使用,这样子他们自己公司也能更好的维护。转载 2014-01-07 13:38:40 · 1140 阅读 · 0 评论 -
Android中的JSON解析方式:json; Gson ; Fastjson
本文主要介绍Json数据的解析----a,json数据的介绍----b,json数据的解析----c,gson数据的解析,谷歌公司的一种格式----d,fastjson数据的解析,阿里巴巴的一种格式通过本文的学习能掌握json数据格式的解析,为以后json格式数据的解析做到熟练于心。Json的全称:JavaScript Object Notation原创 2013-05-28 16:37:01 · 4027 阅读 · 0 评论 -
Android中apk检测更新类库,下载等
项目地址:https://github.com/wxz/upgrade在此类库中,可以进行版本的升级主要代码如下:package com.example.nw;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStr原创 2013-10-12 15:52:37 · 1403 阅读 · 0 评论 -
Android Activity的属性及启动模式相关详解
1、Activity和Tasktask就好像是能包含很多activity的栈。 默认情况下,一个activity启动另外一个activity时,两个activity是放在同一个task栈中的,第二个activity压入第一个activity所在的task栈。当用户按下返回键时,第二个activity从栈中弹出,第一个activity又在当前屏幕显示。这样,从用户角度来看,这两个ac转载 2013-05-20 14:59:51 · 6600 阅读 · 0 评论 -
Android开发规范
一,Android编码规范1.java代码中不出现中文,最多注释可以出现中文2.局部变量命名,静态成员变量命名:只能包含字母,单词首字母第一个外,其他单词首字母都为大写,其他字母都为小写3.常来命名:只能包括字母和_ , 字母全部大写,单词之间用_隔开4.layout中的id命名命名模式为:view缩写_模块名称_view的逻辑名称view的缩写如下:LayoutVie转载 2013-05-20 15:56:47 · 956 阅读 · 0 评论 -
Android中各个Activity中数据的传递
在Android开发中,有时候需要从一个Activity中传递数据到另外一个Activity中,通过Intent传递值,支持基本数据类型和String对象及它们的数组对象byte、byte[]、char、 char[]、boolean、boolean[]、short、short[]、int、int[]、long、long[]、float、 float[]、double、double[]、Strin原创 2013-06-09 17:31:10 · 1456 阅读 · 0 评论 -
Android--SQLite的详解及案例
在Android平台上,集成了一个嵌入式关系型数据库—SQLite,1、SQLite3支持 NULL、INTEGER、REAL(浮点数字)、TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然它支持的类型虽然只有五种,但实际上sqlite3也接受varchar(n)、char(n)、decimal(p,s) 等数据类型,只不过在运算或保存时会转成对应的五种数据类型。2、原创 2013-05-20 17:13:36 · 2598 阅读 · 0 评论 -
AutoCompleteTextView实现拼音汉字匹配且支持首字母
Pinyin4j的基本用法1. 简单介绍有时候,需要将汉字编程对应的拼音,以方便数据的处理。比如在Android手机应用的开发上,要查询联系人的姓名,通常都是用拼音进行查询的。比如要查询“曹孟德”,就可以输入“cmd”,即“曹孟德”三个汉字的拼音“caomengde”各字的首字母。但是怎样才能将“曹孟德”翻译成“caomengde”呢?很简单的办法就是建立一个大的对照表(比转载 2014-01-01 11:32:33 · 2675 阅读 · 0 评论 -
===Android开发中常用工具
(1)Zipalign工具:根据数据结构对齐标准DSA对apk程序包进行对齐优化,从而提高apk应用程序与Android系统的交互效率(2)TraceView工具:性能分析工具,根据Android应用程序产生的跟踪日志生成性能分析图(3)Sqlite3工具:SQLite数据库操作工具,包括对数据库中表的增,删,改,查等操作。(4)Monkey工具原创 2013-09-02 13:48:33 · 1253 阅读 · 0 评论 -
Android最新的开发环境运行原来环境开发的程序报java.lang.ClassNotFoundException错误解决
今天下载了一个最新的android开发环境,进行使用,但是在使用过程中遇到了一个问题,很纠结,下面就这个问题给大家分享,以前原来的程序包含viewpager时,在运行时会报出java.lang.ClassNotFoundException异常,纠结了很久才解决。最后总结分析,总结了这样的错误,应该是.classPath文件发生了变化。之前的.classpath文件是:原创 2013-06-08 18:16:48 · 1815 阅读 · 0 评论 -
Android Notifications通知应用详解
http://developer.android.com/guide/topics/ui/notifiers/notifications.html#NotificationUIAndroid通知共提供了三种通知的方式:Toast Notifications、Status Bar Notification、Dialog Notification。现在我们分别来看看他们使适用的场景和使用方法及原创 2013-06-07 11:01:14 · 2972 阅读 · 0 评论 -
Android权限
//开机接收广播android.permission.ACCESS_CHECKIN_PROPERTIES Allows read/write access to the "properties" table in the checkin database, to change values that get uploaded 允许读写访问 "properties"表在checkin原创 2013-05-20 16:23:51 · 972 阅读 · 0 评论 -
Android中一些计时类讲解案例
在Android开发中,我们往往会用到一些计时的类,像Timer,CountDownTimer等等下面本人想讲解关于CountDownTimer类:从字面可以看出,该类是记录下载时间。将后台线程的创建和Handler队列封装成一个方便的类调用。看了一下文档,其实这个类很简单,只有四个方法,其中都涉及到了onTick,OnFinshcancel,start,前两个是抽象方法,需要重写原创 2013-06-07 13:43:18 · 1409 阅读 · 0 评论 -
Android截屏
本篇文章主要介绍了关于Android方面的截屏操作,下面是主要的代码,最近也思考一个问题,怎么实现一个截屏后,把图片发送至一个服务器端呢,正在思考中希望有哪位有识之士给解答,有源码的更好,谢谢了!!Android截屏代码如下:<manifest xmlns:android="http://schemas.android.com/apk/res/android" package原创 2013-07-19 16:10:53 · 1093 阅读 · 0 评论 -
Android开发最近错误总结:
(1)错误一android.content.res.Resources$NotFoundException: String resource ID #0x10今天运行程序的时候,出现了一下错误android.content.res.Resources$NotFoundException: String resource ID #0x10LogCat显示出错行,查看了一下,在原创 2013-07-02 17:03:57 · 1114 阅读 · 0 评论 -
Android中程序的退出解决方案
如何退出activity呢,如果安全退出以调用的众多的Activity的applocation呢?下面就有几种方法以供参考:1、抛异常强制退出:该方法通过抛异常,使程序Force Close。验证可以,但是,需要解决的问题是,如何使程序结束掉,而不弹出Force Close的窗口。2、记录打开的Activity:每打开一个Activity,就记录下来。在需要退出时,关闭原创 2013-06-13 13:51:05 · 1119 阅读 · 0 评论 -
Android数据Json解析之开源jar类Gson解析
在Java/Android开发中,我们经常需要从服务器请求信息,返回的数据格式一般都是XML(extensible markup language)或者JSON(JavaScript Object Notation)格式。在Android开发中,轻量级的数据交互首选JSON,但XML依然大量使用在数据量比较大或者特殊字符比较多等数据交换情形,而且XML在可读性方面还是优于JSON格式的。这里简要地转载 2013-10-28 09:30:31 · 4152 阅读 · 1 评论 -
Android中遇到java.lang.StackOverflowError错误
在最近做项目出现一个java.lang.StackOverflowError异常。最后查资料,终于解决了。StackOverflowError是由于当前线程的栈满了 ,也就是函数调用层级过多导致。比如死递归。下面的函数有时候就可以造成死递归:private int changeByFrequency(int targetFrequency) { serviceProv原创 2013-09-24 17:57:38 · 5155 阅读 · 0 评论 -
Android软件发布--数字签名与优化
(1)apk的发布 在Android系统中,所有安装到系统的应用程序都必有一个数字证书,此数字证书用于标识应用程序的作者和在应用程序之间建立信任关系,如果一个permission的protectionLevel为signature,那么就只有那些跟该permission所在的程序拥有同一个数字证书的应用程序才能取得该权限。Android使用Java的数字证书相关的机制来给apk加盖原创 2013-05-16 14:28:42 · 1412 阅读 · 0 评论 -
Android应用自动更新及安装
http://blog.youkuaiyun.com/encienqi/article/details/8291810 由于Android项目开源所致,有很多安卓软件市场。为了让我们开发的软件有更多的用户使用,我们需要向很多市场发布,软件升级后,我们也必须到安卓市场上进行更新,给我们增加了工作量。因此我们有必要给我们的Android应用增加自动更新的功能。那么实现自动更新,我们首先必须让我们的应用知道原创 2013-05-16 10:15:51 · 1805 阅读 · 0 评论 -
Android提交数据到服务的四种方法!!!
Android应用开发中,会经常要提交数据到服务器和从服务器得到数据,本文主要是给出了利用http协议采用HttpClient方式向服务器提交数据的方法。Java代码/** * @author Dylan * 本类封装了Android中向web服务器提交数据的两种方式四种方法 */ public class SubmitDataByHttpCli转载 2013-05-14 16:59:41 · 972 阅读 · 0 评论 -
Android三种解析xml文件的方法:SAX, PULL, DOM
在Android开发中,经常用到解析xml文件,常见的解析xml文件的方式有以下三种方式:本节示例在最后可以下载运行SAX, PULL , DOM 三种方式,下面把这三种xml的解析方式进行总结如下:解析的xml文件示例如下:百度腾讯新浪淘宝此时制作一个bean进行解析:public class channel { private Stri原创 2013-05-28 14:39:03 · 1536 阅读 · 0 评论 -
Android官网新例详解-------Adding Animations讲解
详见:http://developer.android.com/training/animation/index.html本次讲解总共分为五个效果:分别如下:1.交叉渐变动画;(Crossfade animations)2.屏幕幻灯片;(Screen slides )3.显示卡片翻转动画;(Displaying Card Flip Animations)4.缩放图片;(翻译 2013-06-03 17:26:58 · 1643 阅读 · 0 评论 -
Android开发之json解析案例详解==++
在Android开发中经常会访问网络,然后访问网络的时候,往往需要返回数据,但是在返回数据的过程中,往往返回的是Json数据或者xml数据,但本节讲述关于访问网络返回json格式的数据并进行解析,进行详细的讲解:在代码中已经进行了详细的说明,下面主要粘贴代码:并进行简单的说明: 1.此主Activity包含了主要的代码,里面包含了解析json数据的方法,由于本例较小,所有没有分开,原则原创 2013-06-04 11:35:22 · 2374 阅读 · 0 评论 -
Android开发之抽屉效果及ireader书架效果--SlidingDrawer
SlidingDrawer抽屉效果想必大家都见过了,本文就是阐述了关于SlidingDrawer的抽屉效果讲解:1.简介:SlidingDrawer隐藏屏外的内容,并允许用户通过handle以显示隐藏内容。它可以垂直或水平滑动,它有俩个View组成,其一是可以拖动的handle,其二是隐藏内容的View.它里面的控件必须设置布局,在布局文件中必须指定handle和content.案例:原创 2013-06-07 13:24:31 · 2203 阅读 · 1 评论 -
Android中Activity切换效果
1. 淡入淡出效果overridePendingTransition(R.anim.fade, R.anim.hold);2. 放大淡出效果overridePendingTransition(R.anim.my_scale_action,R.anim.my_alpha_action);3. 转动淡出效果overridePendingTransition(R.anim.s原创 2013-08-14 19:41:51 · 1329 阅读 · 0 评论 -
Android中ListView分页处理
分页处理的代码比较简单,下面粘贴代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="wrap_content" andro原创 2013-08-15 11:03:46 · 1105 阅读 · 0 评论 -
Android中自定义布局中加载图片BitmapFactory.options详解
下面先讲解关于BitmapFactory.options选项的所有字段:以上是摘自Android官方的文档:下面我们说一个问题:怎么获取图片的大小呢?首先我们要把这个图片转化成Bitmap,然后在利用Bitmap的getwidth()和getHeight()方法就可以取得图片的宽和高了,但是此时问题来了,在通过BitmapFactory.decodeFile(Sting原创 2013-09-06 13:57:47 · 14617 阅读 · 2 评论 -
Android转换位图BUG,知其然不知其所以然
在开发某App的时候,发现了一个很奇怪的bug,前面我也发了关于bitmap的总结,但是这个问题恰恰出在BitmapFactory.decodeFile(pathName)这个函数上,使用这个函数在我的应用中如果设置在activity的onCreate方法内部,会导致activity无法加载,返回上级activity。 网上描述的大多数原因是OutOfMemoryError,但我catc转载 2013-09-06 14:20:09 · 1287 阅读 · 0 评论 -
Android Fragment完全解析及:: Android手机平板使用Fragment实现兼容手机和平板的程序
转载:http://blog.youkuaiyun.com/guolin_blog/article/details/8881711我们都知道,Android上的界面展示都是通过Activity实现的,Activity实在是太常用了,我相信大家都已经非常熟悉了,这里就不再赘述。但是Activity也有它的局限性,同样的界面在手机上显示可能很好看,在平板上就未必了,因为平板的屏幕非常大,手机的转载 2013-09-02 17:04:22 · 1838 阅读 · 0 评论 -
Android中关于FileObserver类的监听文件和目录动态
android.os下的FileObserver类是一个用于监听文件访问、创建、修改、删除、移动等操作的监听器,基于linux的inotify。 FileObserver 是个抽象类,必须继承它才能使用。每个FileObserver对象监听一个单独的文件或者文件夹,如果监视的是一个文件夹,那么文件夹下所有的文件和级联子目录的改变都会触发监听的事件。 所能监听的事件类型如下: A原创 2013-09-02 14:24:01 · 13579 阅读 · 1 评论 -
Android Handler、Message完全解析,带你从源码的角度彻底理解
转载:http://blog.youkuaiyun.com/guolin_blog/article/details/9991569之前也是由于周末通宵看TI3比赛,一直没找到时间写博客,导致已经有好久没更新了。惭愧!后面还会恢复进度,尽量保证每周都写吧。这里也是先恭喜一下来自瑞典的Alliance战队夺得了TI3的冠军,希望明年中国战队能够虎起!开始进入正题,我们都知道,Android U转载 2013-09-02 15:25:56 · 965 阅读 · 0 评论 -
Android中AsyncTask的使用详解
在Android中实现异步任务机制有两种方式,Handler和AsyncTask。Handler模式需要为每一个任务创建一个新的线程,任务完成后通过Handler实例向UI线程发送消息,完成界面的更新,这种方式对于整个过程的控制比较精细,但也是有缺点的,例如代码相对臃肿,在多个任务同时执行时,不易对线程进行精确的控制。关于Handler的相关知识,前面也有所介绍,不清楚的朋友们可以参照一下。原创 2013-09-03 14:29:52 · 1193 阅读 · 0 评论 -
Android中Assert和raw文件的区别?
Android中assert文件夹和raw文件夹的区别:res/raw和asserts的相同点:1.两者目录下的文件在打包后会原封不动的保存在apk包中,不会被编译成二进制文件res/raw和assets的不同点:1.res/raw中的文件会被映射到R.java文件中,访问的时候直接使用资源ID,即R.id.filename,.assets文件夹下的文件不会原创 2013-09-22 09:59:01 · 5447 阅读 · 0 评论 -
7款Android开发者常用的Android UI组件
Android开发是目前最热门的移动开发技术之一,随着开发者的不断努力和Android社区的进步,Android开发技术已经日趋成熟,当然,在Android开源社区中也涌现了很多不错的开源UI项目,它们可以帮助Android开发者更方便快捷地完成想要的功能。本文是Android系列的第一篇,主要是向大家推荐一些常用的Android UI组件,它们都是开源的。1、图表引擎 - AChartE转载 2014-10-20 13:26:46 · 1723 阅读 · 0 评论