android
wangjun_pfc
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Activity的生命周期
注意到在Activity的API中有大量的onXXXX形式的函数定义,除了我们前面用到的onCreate以外,还有onStart,onStop以及onPause等等。从字面上看,它们是一些事件回调,那么次序又是如何的呢?其实这种事情,自己做个实验最明白不过了。在做这个实验之前,我们先得找到在Android中的Log是如何输出的。显然,我们要用的是android.util.log类,这个类相当的转载 2010-04-02 12:35:00 · 717 阅读 · 0 评论 -
android1.6新增SD卡写权限WRITE_EXTERNAL_STORAGE
如果大家使用较新版本的SDK,比如Android 1.6版本SDK那么在写入SD卡时需要加入WRITE_EXTERNAL_STORAGE权限许可, 我们在androidmanifest.xml文件中加入下面这句 但是需要记住的是,你的项目使用的是超过1.6版本的SDK,比如你的API Level为3则不需要,如果为4或以上就需要加入这个权限了,老版本的项目自适应无转载 2010-03-31 15:22:00 · 6649 阅读 · 0 评论 -
Android中动态改变ImageView大小
在layout.xml文件中定义了ImageView的绝对大小后,无法动态修改以后的大小显示,其实Android平台在设计UI控件时考虑到这个问题,为了适应不同的Drawable可以通过在xml的相关ImageView中加入android:scaleType="fitXY" 这行即可,但因为使用了缩放可能会造成当前UI有所变形。使用的前提是限制ImageView所在的层,可以使用一个内嵌的方法限制转载 2010-03-31 15:25:00 · 7402 阅读 · 1 评论 -
AndroidManifest.xml文件剖析 (一)
很多网友对于Android全局配置文件AndroidManifest.xml不是很熟悉,今天我们就一起看下它完整的结构以及每个节点的作用。在我们日常的开发中都少不了下面的配置,每创建一个Activity、Service都离不开这个全局配置文件,深入的了解可以简化程序代码以及提高程序的维护性。 在最外层包含了包名如 package="cn.android123.demo" 、软件的版本号转载 2010-03-30 16:19:00 · 675 阅读 · 0 评论 -
AndroidManifest.xml文件剖析 (二)
有关AndroidManifest.xml文件的application分支我们有必要了解一些常见的属性,这里可以看到一些我们实用的选项,比如允许调试android:debuggable、任务关系android:taskAffinity,比如我们常见的方式创建一个新的任务实用标记FLAG_ACTIVITY_NEW_TASK,为程序制定一个主题,可以使用android:theme指向一个主题文件。转载 2010-03-30 16:21:00 · 684 阅读 · 0 评论 -
APK文件为什么要签名才能发布?
很多开发人员不明白APK文件为什么必须签名才能发布,其实签名并非从Android平台开始,在过去从Symbian OS就开始需要签名才能发布,这样可以保证每个应用程序开发商合法ID,由于Android平台没有UID3的限制,部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序。不过目前比较好的是Android中所有的permission使用都是免费的,但从目前GIT项目中出转载 2010-03-30 17:22:00 · 2086 阅读 · 0 评论 -
Android的Linux内核Bionic库介绍
Android使用开源Linux内核是众所周知的,除了使用的是ARM版本的内核外和传统的x86有所不同外,重要的是Google为Linux内核增强了不少东西,自己开发了Bionic库,同时又贡献会Linux社区了。首先GNU的内核在体积和运行效率上不适合移动设备,系统核心组件都是以动态库的形式驻留在每个进程中,运行效率和内存占用都是十分重要的问题。Google开发了一个自定义的库名为Bionic,转载 2010-03-31 09:26:00 · 2168 阅读 · 0 评论 -
减少android程序体积注意点
谷歌Android程序后缀名为apk它已经经过了压缩,但如果生成出的程序很大如何减小体积呢? 影响体积最大的因素在于资源文件的使用上,控制图片、3DS文件的大小很重要,这里在3D材质方面不建议使用实时运算,毕竟移动设备的耗电量和运算能力无法和PC相提并论。建议音乐文件少用WAV,如果简单可以使用高音质的MIDI文件,MP3播放在解码方面的占用不算很大,但需要降低MP3文件的转载 2010-03-31 10:40:00 · 1027 阅读 · 0 评论 -
LogCat显示中文为乱码
很多在开发调试Android软件的网友可能会发现Logcat打印中文输出的为乱码,即使是设置DDMS的字符集为UTF-8问题依旧 一、简单调试 我们自己封装一个Toast调试显示类即可,但Toast的显示速度和开销相对较高,每次显示从底层来看均为线程处理,资源有些浪费,不过常规的提示性可以使用Toast.makeText这种方法来显示结果,目前来看还从来没有遇到中文显示乱转载 2010-03-31 15:27:00 · 5541 阅读 · 1 评论 -
三种形式的hello world
1.最简单的HelloWorld安装了SDK后,直接生成一个Android Project,一句代码不用写,就能跑出一个最简单的HelloWorld例程。我们看一下它的代码:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->pub转载 2010-04-02 09:44:00 · 1004 阅读 · 1 评论 -
初识Activity
1.在一个Activity中使用多个View如果把Activity看作MVC中的Control?它负责管理UI和接受事件(包括用户的输入),虽然说一个Activity通常对应一个屏幕,但事实上,我们是可以只用一个Activity管理多个不同的View来实现简单的逻辑。首先,我们增加一个新的资源描述layout/second.xml。<LinearLayout xmlns:android="转载 2010-04-02 11:10:00 · 1048 阅读 · 0 评论 -
学习Intent的使用
刚看到Intent的时候,我的确有点困惑:从字面上来说,它表示一种意图和目的;从使用上看,它似乎总是用于Activity之间的切换;而从它所在包android.content来看,它似乎与内容有关。所以,我想或许可以这样理解它: Intent类绑定一次操作,它负责携带这次操作所需要的数据以及操作的类型等。如果是这样的话,是否可以将它与事件处理联想起来?即一个Intent类似于一个Event。从转载 2010-04-02 11:42:00 · 1140 阅读 · 1 评论 -
android平台使用的单位
常用的 px (pixels)像素 -- 一般我们HVGA代表320x480像素,这个用的比较多。 dip或dp (device independent pixels)设备独立像素 -- 这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA cwj推荐使用这个,不依赖像素。 sp (scaled pixels — best for text size)放大像素--转载 2010-03-31 15:17:00 · 905 阅读 · 0 评论 -
关于ListActivity的简单体验
android.app包里的几个类。首先是这个在平台自的例子中被广泛使用的ListActivity。这个类其实就是一个含有一个ListView组件的Activity类。也就是说,如果我们直接在一个普通的Activity中自己加一个ListView也是完全可以取代这个ListActivity的,只是它更方便而已,方便到什么程度呢?来做个例子瞧瞧。public class HelloTwoB ex转载 2010-04-02 14:55:00 · 1144 阅读 · 0 评论 -
关于Dialog的简单体验
注意到android.app包下除了Dialog(可用于制作复杂的对话框)以外,还包括了几个系统定义好的对话框类,如DatePickerDialog、TimePickerDialog及AlertDialog。其中AlertDialog我上回用过一次,基本上就那样子了,今天看看另外两个对话框的使用吧。首先是DatePickerDialog类,修改代码如下:public class Hel转载 2010-04-02 15:25:00 · 751 阅读 · 1 评论 -
Android数据存储
在Android中,可供选择的存储方式有SharedPreferences、文件存储、SQLite数据库方式、内容提供器(Content provider)和网络。一.SharedPreferences方式 Android提供用来存储一些简单的配置信息的一种机制,例如,一些默认欢迎语、登录的用户名和密码等。其以键值对的方式存储,使得我们可以很方便的读取和存入.转载 2010-04-06 09:30:00 · 7760 阅读 · 5 评论 -
android中单位的简单介绍
过去,程序员通常以像素为单位设计计算机用户界面。例如,定义一个宽度为300像素的表单字段,列之间的间距为5个像素,图标大小为16×16像素等。这样处理的问题在于,如果在一个每英寸点数(dpi)更高的新显示器上运行该程序,则用户界面会显得很小。在有些情况下,用户界面可能会小到难以看清内容。与分辨率无关的度量单位可以解决这一问题。 Android支持下列所有单位。 px(原创 2010-04-07 10:48:00 · 1425 阅读 · 1 评论 -
anroid API核心包介绍
android.util---------包含一些底层辅助类,如特定的容器类、XML辅助工具类等android.os-----------提供基本的操作服务,如消息传递和进程通信android.graphics-----作为核心渲染包,提供图形渲染功能android.textandroid.text.methodandroid.text.styleandroid.text.util----以上四个原创 2010-04-09 09:23:00 · 1070 阅读 · 0 评论 -
主流移动平台特点分析
目前市面上主流的移动平台,iPhone OS、Symbian、Windows Mobile和Android它们有什么特点呢? 为什么今天的格局发生了微妙的变化,一起来看下吧:一、 Windows Mobile走向衰退1. 固件无法自动升级 - 不支持OTA2. 电阻式触控屏 - 现在有几个那个手写笔操作的,除非是山寨3. 糟糕的浏览器 - 即使是WM6.1的浏览器基于IE4,比Win98转载 2010-04-23 23:06:00 · 1728 阅读 · 0 评论 -
Android布局Java代码构造法
一般情况下对于Android程序布局我们往往使用XML文件来编写,这样可以提高开发效率,但是考虑到代码的安全性以及执行效率,可以通过Java代码执行创建,虽然Android编译过的xml是二进制的,但是加载xml解析器的效率对于资源占用还是比较大的,一般一个简单的TextView,比如 android:id="@+id/textControl "转载 2010-04-23 23:12:00 · 4299 阅读 · 2 评论 -
Context的作用
Context字面意思上下文,位于android.content.Context中,其实该类为LONG型,类似Win32中的Handle句柄,很多方法需要通过Context才能识别调用者的实例,比如说Toast的第一个参数就是Context,一般在Activity中我们直接用this代替,代表调用者的实例为Activity,而到了一个button的onClick(View view)转载 2010-05-27 16:20:00 · 2160 阅读 · 1 评论 -
Android开发注意点
一、AssetManager - 已知单个文件处理不能大于1MB,所以如果资源很大,建议使用Zip格式压缩存放。二、ScrollView中嵌入ListView - 这个作法可能会出现你的ListView仅仅显示1行半。三、Android自带的Zip处理类对文件名编码无法识别,也没有提供显示的设置方法,在zlib中写死了。四、使用一些资源对象记住关闭,比如对于文件流对象最后转载 2010-05-27 22:50:00 · 1539 阅读 · 1 评论 -
ArrayList LinkedList Set HashMap介绍
<br /> 在Java中提供了Collection和Map接口。其中List和Set继承了Collection接口;同时用Vector、ArrayList、LinkedList三个类实现List接口,HashSet、TreeSet实现Set接口<br />。直接有HashTable、HashMap、TreeMap实现Map接口。 <br /> Vector基于Array的List,性能也就不可能超越Array,并且Vector是“sychronized”的,这个也是Vector和ArrayLi转载 2010-06-01 17:28:00 · 1967 阅读 · 0 评论 -
Android代码性能优化技巧
1. 目前来说Android 2.2的JIT性能有了本质的提高,不过对于老版本的程序提高Java执行效率还有很多语言特点来说,对于Java 1.5之后将会有明显的改进。下面的例子来自SDK: static class Foo { int mSplat; } Foo[] mArray = ... 上面的静态类Foo的执行效果和性能,我们分三个方法zero、one和two来做对比。 public void zero() { //大多数人可能简单直接这样写转载 2010-06-01 14:31:00 · 1920 阅读 · 0 评论 -
AndroidManifest.xml文件剖析 (三)
有关Androidmanifest.xml文件中的数据提供,我们来看下Provider节点中用到的定义,可以看到包含了权限控制、排序方式完整的如下:list" android:enabled=["true" | "false"] android:exported=["true" | "false"] android:grantUriPerm转载 2010-03-30 16:22:00 · 966 阅读 · 0 评论 -
Android中文SDK-----Android新手入门
Android新手入门 (Getting Started with Android ) 新手入门Android,请首先阅读下面的章节 (To get started with Android, please read the following sections first ) 安装SDK和插件 (Installing the SDK and Plugin ) 如何安装SDK和转载 2010-03-08 12:20:00 · 1848 阅读 · 0 评论 -
你好Android-----Android新手入门
你好Anroid (Hello, Android) 首先的感觉是作为一个开发者你需要知道一些初步的印象,当你了解开发框架之后才更容易的写出HelloWorld程序在Android平台上,这将会很简单,看看下面是如何做的 (First impressions matter, and as a developer you know that the first impression you ge转载 2010-03-22 11:52:00 · 718 阅读 · 0 评论 -
Android UI开发专题(二) 之绘图基础
今天我们继续介绍Android平台底层绘图类的相关内容,在Android UI开发专题(一) 之界面设计中我们介绍了有关Android平台资源使用以及Bitmap相关类的操作,接下来将会以实例的方式给大家演示各种类的用处以及注意点。今天我们继续了解android.graphics包中比较重要的绘图类。 一、 android.graphics.Matrix 有关图形的变换、缩放等相关操作转载 2010-03-30 13:19:00 · 868 阅读 · 0 评论 -
Android UI开发专题(三) 各种Drawable
本次我们主要讲解Android平台下的各种Drawable,这里在SDK的android.graphics.drawable包下面可以看到有各种Drawable类多达十几种,它们到底之间有什么关系和区别呢? 一、AnimationDrawable 顾名思义该类主要表示动画的图形类,可以实现逐帧播放的效果,下面代码示例如下 1. 定义一个cwj_animation.xml 放到r转载 2010-03-30 13:49:00 · 1050 阅读 · 0 评论 -
Android UI开发专题(四) View自绘控件
很多时候想要设计漂亮的Android UI,使用Android自带的控件无法满足我们的需要就要考虑自绘控件,在Android界面显示类View,可以通过继承扩展重写相关方法来实现我们的图形绘制。 首先我们需要了解下View类的底层实现,在SDK中我们可以看到View直接继承于Java的基类Object,实现了图形绘制和按键事件Drawable.Callback KeyEvent.Callba原创 2010-03-30 14:22:00 · 613 阅读 · 0 评论 -
Android UI开发专题(五) Bitmap和Canvas实例
在Android UI开发专题的前五节我们讲到的东西主要是基础和理论内容,从本次Android123将通过实例代码来演示,本次主要是Bitmap和Canvas类的使用,根据要求缩放Bitmap对象并返回新的Bitmap对象。centerToFit方法一共有4个参数,返回一个Bitmap类型,第一个参数为原始的位图对象,width和height分别为新的宽和高,而Context是用来加载资源的上下文转载 2010-03-30 14:22:00 · 677 阅读 · 0 评论 -
Android蓝牙API之BluetoothAdapter类(1)
使用BluetoothAdapter类,你能够在Android设备上查找周边的蓝牙设备然后配对(绑定),蓝牙通讯是基于唯一地址MAC来相互传输的,考虑到安全问题Bluetooth通讯时需要先配对。然后开始相互连接,连接后设备将会共享同一个RFCOMM通道以便相互传输数据,目前这些实现在Android 2.0或更高版本SDK上实现。 一、查找发现 findding/discovering de转载 2010-03-30 14:36:00 · 1271 阅读 · 0 评论 -
Android蓝牙API之BluetoothAdapter类(2)
从Android 2.0开始提供最全面的蓝牙开发接口,API Level为5的系统才能调用,目前Android Bluetooth API包含了主要以下几类:BluetoothAdapter BluetoothDevice、BluetoothSocket 、BluetoothServerSocket 和BluetoothClass 它们均在android.bluetooth这个包中出现。 我转载 2010-03-30 14:38:00 · 3516 阅读 · 0 评论 -
Android蓝牙API之BluetoothSocket类(1)
前面两篇文章中我们提到了有关Android平台蓝牙的配对、发现、启用等操作,本文开始通过BluetoothSocket类建立有关蓝牙通讯的套接字。从Android 2.0开始支持这一特性,蓝牙和LAN一样通过MAC地址来识别远程设备,建立完通讯连接RFCOMM通道后以输入、输出流方式通讯。 一、连接设备 蓝牙通讯分为server服务器端和client客户端,它们之间使用Bluetoot转载 2010-03-30 14:39:00 · 4658 阅读 · 5 评论 -
Android蓝牙API之BluetoothSocket类(2)
通过前几次的讲解,很多网友相信对Android蓝牙相关开发可以很好的掌握了,通过BluetoothServerSocket可以方便的创建一个蓝牙服务器,使用BluetoothSocket类可以很好的处理连接,今天我们继续上次的内容说下Android下如何管理蓝牙套接字的连接,今天仍然使用BluetoothSocket类,处理具体的数据流。 在Java上处理数据流很简单,提供了InputS转载 2010-03-30 14:39:00 · 2462 阅读 · 3 评论 -
android的AndroidManifest.xml文件介绍
AndroidManifest.xml是每一个应用都需要的文件, 位于应用根目录下,它 描述了程序包的全局变量, 包括暴露的应用组件(activities, services等等)和为每个组件的实现类, 什么样的数据可以操作, 以及在什么地方运行。 主要包括以下各个元素。 A.包名(package):指定本应用内java主程序包的包名。当没有指定apk的文件名时,编译后产生程序包将以此命名。本包名转载 2010-03-30 15:56:00 · 2053 阅读 · 0 评论 -
什么是Android------Android中文SDK
什么是Android ? (What is Android ) Android是一个手机设备软件栈,包含了一个操作系统、中间件和关键的应用程序,早期版本的Android SDK提供了必要的工具和API来帮助开发Android应用程序通过Java语言。( Android is a software stack for mobile devices that includes an operat转载 2010-03-08 10:55:00 · 1011 阅读 · 1 评论 -
Android中XML布局文件@+id和@id的区别
在Android平台中很多地方时新定义的,对于新手来说可能发现在layout.xml 这样的xml布局文件中发现了,类似@+id/和@id/到底有什么区别呢? 这里@我们可以理解为引用,而多出的+代表自己新声明的。大家可以多看看Android SDK中API Demos例子中涉及的众多资源。转载 2010-03-30 17:39:00 · 1758 阅读 · 0 评论 -
Drawable、Bitmap、Canvas和Paint的区别
很多网友刚刚开始学习Android平台,对于Drawable、Bitmap、Canvas和Paint它们之间的概念不是很清楚,其实它们除了Drawable外早在Sun的J2ME中就已经出现了,但是在Android平台中,Bitmap、Canvas相关的都有所变化。 首先让我们理解下Android平台中的显示类是View,但是还提供了底层图形类android.graphics,转载 2010-03-30 17:43:00 · 2071 阅读 · 3 评论 -
如何删除已安装的Android软件
G1的手机内部安装内存大约有70MB左右。为了保证可靠性,Android将所有软件或游戏仅能安装在本机内部存储的NAND闪存上,无法安装在SD卡中,部分软件下载了不使用除了浪费手机内存空间外,还影响功能表的美观度,如何删除已安装的Android软件呢? 其实G1自带了卸载程序,我们在功能表中选择Settings(设置)-Applications(应用程序)如图所示: 选择Manage a转载 2010-03-30 17:52:00 · 911 阅读 · 2 评论
分享