摘要: 有些时候,应用需要在开机时就自动运行,例如某个自动从网上更新内容的后台service。怎样实现开机自动运行的应用?在撰写本文时,联想到高焕堂先生以“Don''t call me, I''ll call you back!”总结Android框架,真是说到点子上了。理解这句话的含义,许多有关Android平台上实现某种功能的问题,都能迎刃而解。使用场景:手机开机后,自动运行程序,在屏幕上显示"Hello. I started!"字样。背景知识:当Android启动时,会发出一个系统广 播,内容为ACTION_BOOT_COMPLETED,它的字 阅读全文
posted @ 2012-01-08 21:27 程序学习笔记 阅读(338) 评论(0) 推荐(0) 编辑
摘要: <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或 阅读全文
posted @ 2012-01-08 21:24 程序学习笔记 阅读(783) 评论(0) 推荐(0) 编辑
摘要: 目前很多商业应用都会涉及到从网络上读取图片数据的问题,为了节约用户流量,应用一般会将图片缓存起来。图片缓存一般分为内存缓存和外存缓存。内存 缓存运用java的缓存机制,在程序完全退出后,缓存所在的内存空间可能被其它应用程序占用从而丢失。外存缓存一般放在程序特有的访问空间或者sd卡中, 在sd卡中存放的资源为公有资源,其它程序也可以访问,且对用户来讲没有一个强制清除缓存的规范机制。综合以上,本文采用将缓存图片放置在程序的特有空间 中, 其它应用程序无法访问,且用户可以在应用程序管理中的"清除数据"选项中清除缓存。 本文提供三种缓存策略:(1)LRU算法,固定缓存图片数量(ma 阅读全文
posted @ 2012-01-08 21:21 程序学习笔记 阅读(8321) 评论(14) 推荐(2) 编辑
摘要: 需要作为资源读取的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... 阅读全文
posted @ 2012-01-08 19:23 程序学习笔记 阅读(2608) 评论(0) 推荐(0) 编辑
摘要: 在开发Android应用时必须遵守单线程模型的原则: Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行。在单线程模型中始终要记住两条法则: 1. 不要阻塞UI线程 2. 确保只在UI线程中访问Android UI工具包 当一个程序第一次启动时,Android会同时启动一个对应的主线程(Main Thread),主线程主要负责处理与UI相关的事件,如:用户的按键事件,用户接触屏幕的事件以及屏幕绘图事件,并把相关的事件分发到对应的组件进行处 理。所以主线程通常又被叫做UI线程。 比如说从网上获取一个网页,在一个TextView中将其源代码显示出来,这种涉及到网络操作的程.. 阅读全文
posted @ 2012-01-08 19:19 程序学习笔记 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 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 阅读全文
posted @ 2012-01-08 19:17 程序学习笔记 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 抛砖引玉,是高手,看代码就行,一看就懂,为了节约时间,注释和解说就不写了,累赘package com.van.SAXparse;public class Person{ private int id; private String name; private Short age; private int height; private String profession; public int getId() { return id; } public void setId(int id) { this.i... 阅读全文
posted @ 2012-01-03 16:33 程序学习笔记 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 1.首先,在values文件夹下定义一个atts.xml的文件,描述自定义的控件的属性,在values/attrs.xml中的代码如下:<?xml version="1.0" encoding="utf-8"?><resources> <declare-styleable name="TestView"> <attr name="textColor" format="color" /> <attr name="textSize&qu 阅读全文
posted @ 2012-01-03 16:25 程序学习笔记 阅读(433) 评论(2) 推荐(0) 编辑
摘要: package com.vanceinfo.KeyEvent;import android.app.Activity;import android.os.Bundle;import android.view.KeyEvent;import android.view.MotionEvent;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Toast;public class KeyEventActivity ex 阅读全文
posted @ 2012-01-03 16:17 程序学习笔记 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 1 建立Http连接的步骤:1.1 获得一个http的连接地址(如:String httpurl = "http://192.168.0.68:8090/Test/index.jsp?par=this-is-get-Method-request!";)1.2 构造一个URL对象(如:url = new URL(httpurl);)1.3 使用HttpURLConnection打开一个连接(如:HttpURLConnection httpConnection = (HttpURLConnection) url.openConnection();)1.4 得到读取的内容(流)( 阅读全文
posted @ 2012-01-03 16:14 程序学习笔记 阅读(543) 评论(0) 推荐(0) 编辑