摘要:一。java层优化:1. 采用android特有的数据结构:用 android.util.SparseArray android.util.SparseBooleanArray android.util.SparseIntArray替代 java.util.ArrayList用 android.util.LruCache替代HashMap android.util.Pair储存两个对象2. Sqlite最快执行方式:SQLiteStatement stmt = db.compileStatement("INSERT INTO tables VALUES (?,?)");st
阅读全文
随笔分类 - 4. Android技术
Android技术
摘要:在external/icu4c/studata/readme.txt,里面有修改icu4c中资源的编译方法# 具体步骤(可复制下面命令,直接运行):# 1)新增或者修改external/icu4c/data目录下的资源# 2)创建一个临时目录:# crootrm external/icu4c/stubdata/icudt48l-all.datrm external/icu4c/stubdata/icudt48l-default.datrm -rf external/icu4c/icuBuildmkdir external/icu4c/icuBuildcd external/icu4c/icu.
阅读全文
摘要:在linux下安装Python:# 下载最新版本cd /usr/local/src/sudo wget http://www.python.org/ftp/python/3.3.2/Python-3.3.2.tar.bz2sudo chmod 777 Python-3.3.2.tar.bz2 sudo tar -jx -f Python-3.3.2.tar.bz2# 安装cd Python-3.3.2/./configure --prefix=/usr/local/Python-3.3.2/sudo makesudo make install# 浏览旧版本cd /usr/bin/ls -l p
阅读全文
摘要:注意:本专题所列所有文章均是国际上知名学者教授或者是IBM 谷歌等知名公司的高级工程师所撰写。如有引用,注明来源,谢谢。 Android 是一种基于 Linux® V2.6 内核的综合操作环境。最初,Android 的部署目标是移动电话领域,包括智能电话和更廉价的翻盖手机。但是, Android 全面的计算服务和丰富的功能支持完全有能力扩展到移动电话市场以外。Android 也可以用于其他的平台和应用程序。本专题提供的教程、技术文章首先带大家了解 Android 开发,进而深入到 Android 开发的各个方面。Android 开发入门Android 开发简介: Android 是
阅读全文
摘要:今天利用广播机制做了一个短信拦截器。在我做的这个拦截器中,可以有两种方式来设置拦截,一种是在AndroidManifest.xml直接设置拦截,另外一种是通过手动注册来设计拦截。在这里我们需要通过查文档找到短信收发的一些权限。下面我附上自己做的这个拦截器的代码供大家参考。main.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
阅读全文
摘要:今天学习了进程间Service的通信-->AIDL,基于前几天学习的广播机制,我做了一个简单的电话窃听和录音应用。现将具体实现方法附在下面,供大家参考,希望大家提供一些宝贵的意见。业务需求分析: 1.当手机处于开机状态,监听服务就要启动,对来电进行监听录音。 2.设置电话黑名单,当来电是黑名单电话,则直接挂断。实现步骤:首先我们要定义一个电话监听的服务,对来电进行监听录音和拦截。具体代码如下:PhoneListenerService: 1 package cn.yj3g.L21_PhoneListener; 2 3 import java.lang.reflect.Method; ...
阅读全文
摘要:http://topic.csdn.net/u/20110627/22/c8cd2793-1688-485d-a10d-509a2427389f.htmlpackage com.shadow.util;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.Inp
阅读全文
摘要:昨天在做联系人应用时,出了一点问题,然后发现自己对联系人的数据还不是很清楚,于是,用源码debug了一上午,感觉F6,F8跑了不下十几个来回,对数据库有了一个比较清晰的概念。 于是在contactprovider里增加了一个新的uri,然后外面调用,折腾几次后,程序运行正常。联系人新建时,如果存在同名同姓的联系人,会将两者合并,于是采用以下方式进行禁止自动链接: ContentProviderOperation.newInsert(RawContacts.CONTENT_URI).AddValue (RawContacts.AGGREGATION_MODE, RawContacts.AGG..
阅读全文
摘要:获取联系人头像 public byte[] getPhoto(String people_id) {String photo_id = null;String selection1 = ContactsContract.Contacts._ID + " = " + people_id;Cursor cur1 = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, selection1, null,null);if (cur1.getCount() > 0) {cur1.move
阅读全文
摘要:获取联系人头像public byte[] getPhoto(String people_id) {String photo_id = null;String selection1 = ContactsContract.Contacts._ID + " = " + people_id;Cursor cur1 = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, selection1, null,null);if (cur1.getCount() > 0) {cur1.moveT
阅读全文
摘要:屏幕的像素是根据DisplayMetrics类来获取的具体的计算方法是 width =widthPixels *density; height =heightPixels *density (ps: widthPixels 和heightPixels ,density 都是从DisplayMetrics中获取的)。DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); int widthPixels= dm.widthPixe...
阅读全文
摘要:转自:http://www.ideasandroid.com/archives/tag/surfaceview 如果您对开发多点触摸程序感兴趣的话,那么本文将是一个很好的开始,android应用程序开发中,多点触摸不是那么遥不可及,实现起来也很简单,本例只需要两个类就能实现多点触摸。首先来看看我们的视图类MTView.java:packagecom.ideasandroid.demo;importandroid.content.Context;importandroid.graphics.Canvas;importandroid.graphics.Color;importandroid.gra
阅读全文
摘要:QVGA即"Quarter VGA"。顾名思义即VGA的四分之一尺寸,亦即在液晶屏幕(LCD)上输出的分辨率是240×320像素。QVGA支持屏幕旋转,可以开发出相应的程序,以显示旋转90°、180°、270°屏幕位置。由HandEra公司发布。多用于手持/移动设备。 需要说明的是有些媒体把QVGA屏幕当成与TFT和TFD等LCD材质相同的东西是错误的,QVGA屏幕的说法多见与日本的一些手机中,目前采用微软Pocket PC操作系统的智能手机屏幕也大多是320×240像素的QVGA屏幕。 所谓QVGA液晶技术,就是在液晶屏幕
阅读全文
摘要:最近android UI开发怪事连连,首先是自定义的View无法用setVisibility来控制显示隐藏,这个问题尚未解决,今天又出现一个新问题: TextView里将android:lines设置为4行,可是现实的数据却只有2行,但是EditText占的高度却是4行的高度。郁闷。。。。。。。。。。。。。。 PS:刚刚测试了一下,加上android:ellipsize="end",就只显示两行数据。真的郁闷了。原来是android自带的Issue。http://code.google.com/p/android/issues/detail?id=2254
阅读全文
摘要:由 于最近在做移植,要用到一些库,但出现Conversion to Dalvik format failed: Unable to execute dex: null这个问题,build工程目录时常出现内存不足,然后eclipse就挂掉,在eclipse.ini提高内存,eclipse又运行不了,搜索 到这个终于问题解决了。As Android developer, I have met a strange problem when I want use a third party jar, it remained me that:Dex Loader] Unable to execute d
阅读全文
摘要:今天做Android开发时,碰到一个非常奇怪的问题,我在一个ViewGroup中,动态创建两个自定义的View,然后对它们进行setVisibility操作,结果悲剧了,自定义的View一点反应都没有。大概的伪代码是这样子的:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->MyViewextendsView{/**************/ inflate(context,res,rootView);}//调用Viewv1=newMyView
阅读全文
摘要:1. 模拟器代理上网:# sqlite3 /data/data/com.android.providers.settings/databases/settings.db "delete from system where _id=99"# sqlite3 /data/data/com.android.providers.settings/databases/settings.db "INSERT INTO system VALUES(99,'http_proxy','172.18.101.204:8080')"# sqli
阅读全文
摘要:在Android 2.3中新增了3个感应器,对于Android平台的开发我们通过感应器可以发挥想象设计出一些很实用的软件。下面就一起看下目前API Level为9时一共11个感应器分辨是什么吧. 1. ACCELEROMETER 加速,描述加速度的。2.GRAVITY 重力,这个在大家都知道。 3.GYROSCOPE 陀螺仪,对于物体跌落检测更强大些,开发游戏少了它会有点遗憾的,API Level 9新增的类型。 4. LIGHT 光线感应器,很多Android手机的屏幕亮度是根据这个感应器的数组自动调节的。 5. LINEAR_ACCELERATION 线性加速器,API Level 9..
阅读全文
摘要:1:查看是否有存储卡插入Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->String status=Environment.getExternalStorageState(); if(status.equals(Enviroment.MEDIA_MOUNTED)) { 说明有SD卡插入 } 2:让某个Activity透明1OnCreate中不设Layout 23this.setTheme(R.style.Theme_Transparent);
阅读全文