摘要:
有些时候,应用需要在开机时就自动运行,例如某个自动从网上更新内容的后台service。怎样实现开机自动运行的应用?在撰写本文时,联想到高焕堂先生以“Don''t call me, I''ll call you back!”总结Android框架,真是说到点子上了。理解这句话的含义,许多有关Android平台上实现某种功能的问题,都能迎刃而解。使用场景:手机开机后,自动运行程序,在屏幕上显示"Hello. I started!"字样。背景知识:当Android启动时,会发出一个系统广 播,内容为ACTION_BOOT_COMPLETED,它的字 阅读全文
摘要:
<uses-permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES" ></uses-permission> 允许读写访问"properties"表在checkin数据库中,改值可以修改上传<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" ></uses-permission> 允许一个程序访问CellID或 阅读全文
摘要:
目前很多商业应用都会涉及到从网络上读取图片数据的问题,为了节约用户流量,应用一般会将图片缓存起来。图片缓存一般分为内存缓存和外存缓存。内存 缓存运用java的缓存机制,在程序完全退出后,缓存所在的内存空间可能被其它应用程序占用从而丢失。外存缓存一般放在程序特有的访问空间或者sd卡中, 在sd卡中存放的资源为公有资源,其它程序也可以访问,且对用户来讲没有一个强制清除缓存的规范机制。综合以上,本文采用将缓存图片放置在程序的特有空间 中, 其它应用程序无法访问,且用户可以在应用程序管理中的"清除数据"选项中清除缓存。 本文提供三种缓存策略:(1)LRU算法,固定缓存图片数量(ma 阅读全文
摘要:
需要作为资源读取的XML文件,通常放置于res/xml目录,打包的时候将会被编译成二进制文件。要访问这些xml需要用到XmlPullParser对象。Resources res = activity.getResources();XmlResourceParser xpp = res.getXml(R.xml.test);这里的XmlResourceParser就是XmlPullParser的实例下面就是XmlPullParser访问XML节点的代码private String getEventsFromAnXMLFile(Activity activity) throws XmlPul... 阅读全文
摘要:
在开发Android应用时必须遵守单线程模型的原则: Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行。在单线程模型中始终要记住两条法则: 1. 不要阻塞UI线程 2. 确保只在UI线程中访问Android UI工具包 当一个程序第一次启动时,Android会同时启动一个对应的主线程(Main Thread),主线程主要负责处理与UI相关的事件,如:用户的按键事件,用户接触屏幕的事件以及屏幕绘图事件,并把相关的事件分发到对应的组件进行处 理。所以主线程通常又被叫做UI线程。 比如说从网上获取一个网页,在一个TextView中将其源代码显示出来,这种涉及到网络操作的程.. 阅读全文
摘要:
import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import android.graphics.ColorMatrix;import andr 阅读全文