摘要:Android内存管理-SoftReference的使用发布时间:2010-09-15作者:Android开发网原创 很多时候我们需要考虑Android平台上的内存管理问题,Dalvik VM给每个进程都分配了一定量的可用堆内存,当我们处理一些耗费资源的操作时可能会产生OOM错误(OutOfMemoryError)这样的异常,Android123观察了下国内的类似Market客户端设计,基本上都没有采用很好的内存管理机制和缓存处理。 如果细心的网友可能发现Android Market客户端载入时,每个列表项的图标是异步刷新显示的,但当我们快速的往下滚动到一定数量比如50个,再往回滚动时可能我们
阅读全文
摘要:Android入门:深入学习理解 Handler HandlerThread AsyncQueryHandler 三者的关系 收藏 首先创建工程 ThreadDemo 创建Activity 一、Handler Handler在android里负责发送和处理消息。它的主要用途有: 1)按计划发送消息或执行某个Runnanble(使用POST方法); 2)从其他线程中发送来的消息放入消息队列中,避免线程冲突(常见于更新UI线程) 默认情况下,Handler接受的是当前线程下的消息循环实例(使用Handler(Looper looper)、Handler(Looper looper, Handler
阅读全文
摘要:ListView 是一种可以显示一系列项目并能进行滚动显示的 View,每一行的Item可能包含复杂的结构,可能会从网络上获取icon等的一些图标信息,就现在的网络速度要想保持ListView运行的很好滚动流畅是做不到的 所以这里就需要把这些信息利用多线程实现异步加载 实现这样功能的类 view plaincopy to clipboardprint?01.public class AsyncImageLoader { 02. private HashMap<String, SoftReference<Drawable>> imageCache; 03. 04. pub
阅读全文
摘要:http://www.soaspx.com/dotnet/service/service_20091030_1366.html
阅读全文
摘要:Android_Demo文章分类:移动开发 1:ListView异步加载网络图片 2:android控件美化 3:任务管理器 4:AIDL 5:ExpandList 6:ImageViewMove 7:SurfaceView 8:泡泡特效 9:输入法 10:心跳震动 11:重力感应 12:数据库操作 13:sqlite存储图片 14:带输入框的dialog 15: ListView异步加载网络图片Better版本 16:用Java concurrent编写异步加载图片功能 17:自定义按钮实现 18:android语音朗读 19:ListView带标题头 20:仿UCWEB界面源码 21:Li
阅读全文
摘要:Android异步下载网络图片(其一) 项目中有时候需要获取网络上的图片,并下载下来到手机客户端显示。怎么做呢?实现思路是:1:在UI线程中启动一个线程,让这个线程去下载图片。2:图片完成下载后发送一个消息去通知UI线程2:UI线程获取到消息后,更新UI。这里的UI线程就是主线程。这两个步骤涉及到一些知识点,即是:ProgressDialog,Handler,Thread/Runnable,URL,HttpURLConnection等等一系列东东的使用。现在让我们开始来实现这个功能吧!第一步:新建项目。第二步:设计好UI,如下所示View Code <?xml version=&q
阅读全文
摘要:android的原理,为什么我们不需要手动关闭程序 用户, 标榜, android, java安卓用户其实不用在意剩余内存的大小,其实很多人都是把使用其他系统的习惯带过来来了。android大多应用没有退出的设计其实是有道理的,这和系统对进程的调度机制有关系。如果你知道java,就能更清楚这机制了。其实和java的垃圾回收机制类似,系统有一个规则来回收内存。进行内存调度有个阀值,只有低于这个值系统才会按一个列表来关闭用户不需要的东西。当然这个值默认设置得很小,所以你会看到内存老在很少的数值徘徊。但事实上他并不影响速度。相反加快了下次启动应用的速度。这本来就是android标榜的优势之一,如果人
阅读全文
摘要:1.关于如何侦听返回键事件 不知道您有没有这样的体验,做了个程序,不想让用户一直点击返回键,不知不觉中退了出来。希望给用户一个更为有好的提示,留下那些其实并没有真的要退出的用户。好吧,今天我就来说说如何实现这一功能。 首先明确一点,用户的一直点击的返回键,之后就会退出到桌面。那么,如何提示呢?很简单,在用户一顿返回键回到程序入口处(即程序的第一个Activity)给用户一个提示,您再按可就退出程序啦?那么如何在程序入口处增加这个提示呢?明显,我们要侦听用户的点击返回键这一事件。怎样才能做到侦听这一事件呢?代码如下:view plaincopy to clipboardprint?01.@Ove
阅读全文
摘要:请求网络数据后更新视图 zhaohu 发布于 2010年12月09日 20时 (0评) 3人收藏此代码, 我要收藏(?) Android不能直接在子线程中更新视图,需要借助Handler 类来实现视图更新标签: Android , Handler , handleMessage 代码片段(1)[代码] [Java]代码view source print?01public void onCreate(Bundle savedInstanceState) { 02super.onCreate(savedInstanceState); 03setContentView(R.layout.soft_r
阅读全文
摘要:[代码] BootReceiver.javaview source print?01public class BootReceiver extends BroadcastReceiver { 02private PendingIntent mAlarmSender; 03@Override04public void onReceive(Context context, Intent intent) { 05// 在这里干你想干的事(启动一个Service,Activity等),本例是启动一个定时调度程序,每30分钟启动一个Service去更新数据 06mAlarmSender = Pendin
阅读全文
摘要:Android SurfaceView 的基本应用 鉴客 发布于 2010年11月08日 21时 (0评) 3人收藏此代码, 我要收藏(?) SurfaceView 由于可以直接从内存或者DMA等硬件接口取得图像数据,因此是个非常重要的绘图容器,网上介绍 SurfaceView的用法有很多,写法也层出不同,例如继承SurfaceView类,或者继承SurfaceHolder.Callback类等,这个可以根据功能实际需要自己选择,我这里就直接在普通的用户界面调用SurfaceHolder的lockCanvas和 unlockCanvasAndPost。对比下面的第二、三两图,三图用.lockC
阅读全文
摘要:Android 编程设置 APN 红薯 发布于 2010年10月13日 7时 (0评) 3人收藏此代码, 我要收藏(?) 标签: Android SDK , cmwap , cmnet , 中国移动 代码片段(1)[代码] java代码view source print?01ContentValues values = new ContentValues(); 02values.put(NAME, "CMCC cmwap"); 03values.put(APN, "cmwap"); 04values.put(PROXY, "10.0.0.172
阅读全文
摘要:Android 的 SurfaceView 双缓冲应用 鉴客 发布于 2010年11月08日 21时 (1评) 5人收藏此代码, 我要收藏(?) 双缓冲是为了防止动画闪烁而实现的一种多线程应用,基于SurfaceView的双缓冲实现很简单,开一条线程并在其中绘图即可。本文介绍基于SurfaceView的双缓冲实现,以及介绍类似的更高效的实现方法。 本文程序运行截图如下,左边是开单个线程读取并绘图,右边是开两个线程,一个专门读取图片,一个专门绘图:对比一下,右边动画的帧速明显比左边的快,左右两者都没使用Thread.sleep()。为什么要开两个线程一个读一个画,而不去开两个线程像左边那样都 “
阅读全文
摘要:数据库设计的时候,为了其他人能方便阅读,更加直观的了解数据库的接口,交接的时候有存档的文件,常常需要把数据库结构以文档的方式显示出来,这里介绍一下如何用简单的方法生成数据库的WORD说明文档。使用的工具有两个,一个是PowerDesigner,还有一个是PDMReader本人使用的是PowerDesigner15,支持SQL2005,我个人对PowerDesigner不太熟悉,基本不用这个设计数据库,常常只把PowerDesigner当作辅助工具使用。先看一下生成WORD后的效果一,导入数据库结构到PowerDesigner打开PowerDesigner-----file-------reve
阅读全文
摘要:Android开发网上的一些重要知识点 1. android单实例运行方法我们都知道Android平台没有任务管理器,而内部App维护者一个Activity history stack来实现窗口显示和销毁,对于常规从快捷方式运行来看都是startActivity可能会使用FLAG_ACTIVITY_NEW_TASK标记来打开一个新窗口,比如Launcher,所以考虑单任务的实现方法比较简单,首先Android123纠正下大家一种错误的方法就是直接在androidmanifest.xml的application节点中加入android:launchMode="singleInstanc
阅读全文
摘要:一些工作中用到的知识点总结 进入公司后开始写程序,做了一个笑话软件,嵌套在浏览器中作为一个插件使用。这个应用做了不少时间,其实应用不是太难,但是自己的基础太不好,什么东西都不会写,都要查资料,耽误了大量时间,这也给了我一个教训,工作中复制代码后患无穷啊。 该应用主要包括向服务器请求数据,解析xml,后台更新ui,处理一些屏幕响应事件等操作,都是一些很基础。代码实现过程中遇到了很多问题,有的到现在还没解决,还得急需考虑研究。 问题1: 时间的格式化问题 从服务器获取的数据是“2010-03-05 14:12:36”格式的,要将其转换为比较直观的“今天 14:12” 格式,遇到问题的原因主要是对j
阅读全文
摘要:以及保存篇(7) 在阅读微博的功能篇中,如果微博包含了图片就会在微博正文下面显示该张图片,但是这个图片只是张缩略图,这样就需要提供一个能放大缩小查看这张图片的功能,当点击正文中的缩略图的时候显示一个简单的图片浏览器功能,提供图片的放大、缩小、拖拽操作方便用户查看图片,同时也提供保存图片到手机的功能。本功能的UI比较简单就不单独分篇讲了,具体的实现效果如上图。 新建ImageActivity.java作为图片浏览Activity,在res/layout下新建image.xml的Layout作为图片浏览的布局文件,image.xml布局代码很简单了就不详细解释了直接贴代码:<?xmlvers
阅读全文
摘要:一个完整的新浪微博客户端android版OAuth认证示例 在我的博客里最多的网友提问都是跟OAuth有关的,这个确实存在比较多的问题,很多都是卡在这一步。鉴于这个原因花了点时间写了个完整的新浪微博客户端android版OAuth认证示例,本代码只是功能实现示例,没有考虑程序的健壮性等方面,请自己动手完善了。但是能保证运行起来并且OAuth认证成功获取到uerId、userKey、userSecret。具体的原理实现看:android开发我的新浪微博客户端-OAuth篇(2.1)这里就不废话了,直接提供工程源文件下载:OAuth4Sina.rar下载工程文件后请修改源代码中这2行:String
阅读全文
摘要:android开发我的新浪微博客户端-阅读微博功能篇(6.2) 注:最近由于OAuth上传图片碰到了难题,一直在做这方面的研究导致博客很久没有更新。 在上面一篇中已经实现了预读微博的UI界面,效果如上图,接下来完成功能部分的代码,当用户在上一个列表界面的列表中点击某一条微博的时候显示这个阅读微博的界面,在这个界面中根据传来的微博ID,然后根据这个ID通过api获取微博的具体内容进行显示。 在ViewActivity.class的onCreate方法中添加如下代码:privateUserInfouser;privateStringkey="";@Overridepublicv
阅读全文
摘要:关于微博服务端API的OAuth认证实现 新浪微博跟update相关的api已经挂了很多天了一直没有恢复正常,返回错误:40070 Error limited application access api!,新浪开放平台的论坛里n多的人都在等这个恢复,新浪官方也相当的恶心出问题了连个公告都没有,既不说什么原因又不说什么时候能恢复,。还是有版主说是api正在升级礼拜1恢复正常今天都礼拜2了还是不行。基于这个原因我的android版的新浪微博客户端已经停工好几天了,刚好是跟update相关的一些功能。 客户端开发不成了,就自己做做服务端程序,提供类似新浪微博rest api服务, api其实说简单
阅读全文
摘要:博客园首页新闻新随笔联系管理订阅 随笔- 74 文章- 0 评论- 1181 android开发我的新浪微博客户端-阅读微博UI篇(6.1) 上一篇完成了微博列表的功能,本篇接着做预读微博的功能,本篇主要讲讲UI部分的实现,最终实现的效果如上图所示。整个显示页面从上往下分为四部分,第一部分顶部工具条、第二部分作者头像和名称、第三部分微博正文、第四部分功能按钮区。新建名为ViewActivity.java作为阅读微博的页面,再res/layout目录下新建名为view.xml的Layout,代码如下:代码 Code highlighting produced by Actipro CodeHig
阅读全文
摘要:博客园首页新闻新随笔联系管理订阅 随笔- 74 文章- 0 评论- 1181 android开发我的新浪微博客户端-用户首页面功能篇(5.2) 上一篇完成用户首页的UI实现,本篇接下来讲功能部分的实现,本页面主要的功能就用户关注的最新微博列表,从上一篇中知道本列表是用ID为Msglist的ListView控件来实现,本篇的主要就讲解如果获取微博列表数据给这个ListView提供显示数据。ListView每一条子数据分别由用户头像、用户昵称、发布时间、是否包含照片、微博内容这五部分组成,根据这五部分定义一个名为WeiBoInfo.java实体类,代码如下:代码 Code highlighting
阅读全文
摘要:android开发我的新浪微博客户端-用户首页面UI篇(5.1) 在前篇完成了用户登录功能后开始用户首页的开发,用户的首页主要的内容是当前登录用户关注的微博列表,本篇先来讲讲UI的实现,效果如上图,整个页面分为上、中、下三部分,上面部分是工具条,显示当前登录用户的昵称以及写微博、刷新两个功能按钮;中间部分是当前用户关注的最新微博列表,下面部分是功能切换栏,用来进行各个功能之间的切换。 首先新建名为HomeActivity.java的Activity作为用户首页,然后在res/layout目录下新建名为home.xml的Layout,具体代码如下:代码 Code highlighting pro
阅读全文
摘要:android开发我的新浪微博客户端-登录页面功能篇(4.2) 上一篇中完成了如上图的UI部分的实现,现在继续来讲功能的实现,用户登录操作主要就是账号列表显示和选择账号登录两个功能其他的都是些简单的辅助功能,首先是点击id为iconSelectBtn的ImageButton时显示用户选择窗口,这个时候去数据库中获取账号记录然后在选择窗口中以列表方式显示出来,通过上一篇已经知道Id为list的ListView控件来显示账号列表,首先是从数据库中获取所有的账户记录然后设置默认选中的用户账号代码如下:代码 Code highlighting produced by Actipro CodeHighl
阅读全文
摘要:android开发我的新浪微博客户端-登录页面UI篇(4.1) 首先回顾一下功能流程当用户开启软件显示载入页面时程序首先去sqlite库查询是否已经保存有用户的新浪微博的UserID号、Access Token、Access Secret的记录如果没有一条记录那么跳转到用户授权功能页面,这个已经由上面两篇文章实现了,如果有记录那么页面跳转到用户登录页面,也就是本篇以及下篇要实现的功能,本篇讲UI的实现,本项目支持多微博账号了,也就是用户可以设置多个微博账号,登录的时候选择其中的一个登录,具体效果如上图,新建名LoginActivity.java的Activity并且在AndroidManife
阅读全文
摘要:android开发我的新浪微博客户端-用户授权页面UI篇(3.1) 上一篇讲了讲OAuth授权认证的事情,大概的介绍了OAuth的原理,并且完成了一个OAuth.java的类库,提供了几个OAuth认证必要的方法,本篇开始具体讲本项目的用户授权功能,用户授权页面是当用户第一次使用本软件的时候自动从载入页面跳转过来的显示的页面,涉及OAuth认证相关都是在上一篇的OAuth.java的类基础上开发。用户授权页面分为UI篇和功能篇两篇,本篇先来讲讲UI的实现,这次就不贴PS的效果图了直接贴实现后的功能截图如下: 看上面的图,其实这个页面的UI实现不复杂,首先是背景部分的实现这个参考android开
阅读全文
摘要:android开发我的新浪微博客户端-用户授权页面功能篇(3.2) ==》 在上一篇实现了用户授权页面的UI,如上图,接下来要做的就是在这个基础上完成功能部分真正实现用户的授权认证,这一篇是android开发我的新浪微博客户端-OAuth篇(2.1)的具体应用篇原理就不多解释了不懂的看OAuth篇即可。认证过程从点击开始按钮然后跳转到新浪的授权页面,接着用户在新浪的页面里输入自己的账户和密码确定后返回用户授权页面。首先给开始按钮添加点击事件代码,代码中主要是调用我们前面android开发我的新浪微博客户端-OAuth篇(2.1)完成的OAuth类的RequestAccessToken方法用来获
阅读全文
摘要:android开发我的新浪微博客户端-OAuth篇(2.1) 本篇说说关于OAuth授权认证的事情,新浪开放api都必须在这个基础上才能调用,所以有必要专门来讲讲,前面的文章中已经提到过关于新浪微博提供了OAuth和Base OAuth两种认证方式,并且本项目采用OAuth认证方式,至于为什么采用这个OAuth认证而不采用Base OAuth认证原因很简单,自从Twitter只支持OAuth认证方式以来,各大应用都纷纷转向OAuth认证方式,而新浪微博的开放平台也将在近日停止Base OAuth的认证方式。 OAuth的基本概念,OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标
阅读全文
摘要:android开发我的新浪微博客户端-载入页面sqlite篇(1.2) 通过上一篇文章(android开发我的新浪微博客户端-载入页面UI篇(1.1))已经完成了载入页面的UI部分的实现,效果如上图,接下来在上面的基础上完成载入页面的功能代码。 首先说明一下新浪微博提供了OAuth和Base OAuth两种认证方式(如果不知道什么是OAuth和Base OAuth请自己google一下恶补,同时接下来的2篇随笔也会对这方面进行详细的说明以及具体实现),本项目是采用OAuth认证方式,采用这种方式就需要有用户的新浪UserID、Access Token、Access Secret这3样东西才能自
阅读全文
摘要:本软件设定用户第一个接触到的功能就是页面载入等待功能,这个功能对使用者来说就是一个持续1、2秒钟的等待页面,在用户等待的同时程序做一些必要的检查以及数据准备工作,载入页面分为UI篇和功能篇,从表及里首先是UI的实现,一个软件除功能之外还得有一个光鲜的外表也是非常重要的,尽管本人设计水平一般但是还是亲自操刀用ps先做了一下设计效果图如下: 一、接下来的任务就是在android中实现这样的效果显示,从这个效果的设计分别把图片分成背景、版本号部分、软件名称和图标、作者名称和blog四个部分,按照这样的思路把分别生成4张png的图片,背景部分考虑实现横屏和竖屏切换额外添加一张横屏背景图,然后新建and
阅读全文
摘要:Android SDCard操作(文件读写,容量计算) android.os.Environment提供访问环境变量java.lang.Objectandroid.os.EnvironmentEnvironment静态方法:方法 :getDataDirectory()返回 :File解释 : 返回Data的目录方法 :getDownloadCacheDirectory()返回 :File解释 : 返回下载缓冲区目录方法 :getExternalStorageDirectory()返回 :File解释 : 返回扩展存储区目录(SDCard)方法 :getExternalStoragePublic
阅读全文
摘要:android源码结构分析 frameworks 目录 (核心框架——java及C++语言).|-- base (基本内容)| |-- api (?都是xml文件,定义了java的api?)| |-- awt (AWT库)| |-- build (空的)| |-- camera (摄像头服务程序库)| |-- cmds (重要命令:am、app_proce等)| |-- core (核心库)| |-- data (字体和声音等数据文件)| |-- docs (文档)| |-- graphics (图形相关)| |-- include (头文件)| |-- keystore (和数据签名证书相关
阅读全文
摘要:android sdk基本包介绍 这些都是基本包,它们是通过Android SDK来编写应用程序的基石,这里是从最底层到最高层列出并加以说明。* android.util包含一些底层辅助类,例如:特定的容器类,XML辅助工具类等。* android.os提供基本的操作服务,消息传递和进程间通信IPC。* android.graphics作为图形渲染包,提供图形渲染功能。* android.textandroid.text.methodandroid.text.styleandroid.text.util提供一套丰富的文本处理工作,支持富文本,输入模式等。* android.database包含
阅读全文
摘要:Android开发者应该深入学习的10个开源应用项目 Android开发者应该深入学习的10个开源应用项目 Android开发带来新一轮热潮让很多移动开发者都投入到这个浪潮中去了,创造了许许多多相当优秀的应用。其中也有许许多多的开发者提供了应用开 源项 目,贡献出他们的智慧和创造力。学习开源代码是掌握技术的一个最佳方式。下面推荐几个应用开源项目,这些项目不仅提供了优秀的创意,也可以直接掌握 Android内核的接口使用.1.Android团队提供的示例项目如果不是从学习Android SDK中提供的那些样例代码开始,可能没有更好的方法来掌握在Android这个框架上开发。由Android的核心
阅读全文
摘要:一、[Android实例]实现TextView里的文字有不同颜色转eoe:http://www.eoeandroid.com/thread-4496-1-1.htmlimport android.text.Html;TextView t3 = (TextView) findViewById(R.id.text3); t3.setText( Html.fromHtml( "<b>text3:</b>Text with a " + "<a href=\"http://www.google.com\">link&l
阅读全文
摘要:一个APK反编译利器Apktool(android汉化)2010-07-19 18:52转载自:http://blog.sina.com.cn/s/blog_5752764e0100kv34.html APK 本地化 [http://www.andmoto.com/viewthread.php?tid=3873]说起APK的汉化,目前大部分教程都是让用Hex Workshop或者Android ResEdit来做。但是实际操作后,就会发现:1、Hex Workshop操作繁琐,经常出现搜不到想要修改的字符的情况;2、Android ResEdit简单用用可以,修改稍微复杂一点就会出现整条整条丢
阅读全文
摘要:一.反编译Apk得到Java源代码转载自:http://hi.baidu.com/%CB%BF%D4%B5%CC%EC%CF%C2/blog/item/2284e2debafc541e495403ec.html工具下载:需用到dex2jar和JD-GUI这2个工具dex2jar下载地址:http://laichao.googlecode.com/files/dex2jar-0.0.7-SNAPSHOT.zipJD-GUI下载地址:windows版JD-GUI:http://laichao.googlecode.com/files/jdgui.zipLinux版JD-GUI:http://lai
阅读全文
摘要:android adb常用指令 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器的状态。可以通过下列几种方法加入adb:在设备上运行shell命令通过端口转发来管理模拟器或设备从模拟器或设备上拷贝来或拷贝走文件 下面对adb进行了介绍并描述了常见的使用.Contents概要 发出adb命令 查询模拟器/设备实例 给特定的模拟器/设备实例发送命令 安装软件 转发端口 从模拟器/设备中拷入或拷出文件 Adb命令列表 启动shell命令 通过远程shell端运行sqllite3连接数据库 UI/软件 试验程序 Monkey 其它的shell命令 启用logcat日
阅读全文
摘要:林计钦-JAVAjava技术群:127834248 博客园 首页 社区 新随笔 联系 订阅 管理 随笔-105 评论-24 文章-0 trackbacks-0 Android之TelephonyManager类的方法详解 TelephonyManager类主要提供了一系列用于访问与手机通讯相关的状态和信息的get方法。其中包括手机SIM的状态和信息、电信网络的状态及手机用户的信息。在应用程序中可以使用这些get方法获取相关数据。 TelephonyManager类的对象可以通过Context.getSystemService(Context.TELEPHONY_SERVICE)方法来获得,需.
阅读全文
摘要:【Android】调用系统应用常用uri & intent设置 2011-04-12 16:18转载自 乔木和小乔最终编辑 乔木和小乔相当一部分来自文档,希望能有朋友继续完善此贴,以作搜藏。安装指定apk public void setupAPK(String apkname){ String fileName = Environment.getExternalStorageDirectory() + "/" + apkname; Intent intent = new Intent(Intent.ACTION_VIEW); intent.setDataAndTyp
阅读全文
摘要:转:解决通过Intent调用系统拍照程序,返回图片太小的问题[android] 2011-03-25 14:18转载自 hi_android最终编辑 hi_android以下的代码可以调用系统的拍照程序,12Intent it = newIntent("android.media.action.IMAGE_CAPTURE");startActivityForResult(it, Activity.DEFAULT_KEYS_DIALER);按下拍照键后,会返回到你的activity,所以你的activity要在onActivityResult方法里加一个处理,12345678
阅读全文