Posts tagged Android
Android平台开发概述
Dec 12th
如何从一个Java EE开发人员,转向到Android平台开发呢?其实很容易,这一点从我身上得到了验证,但是要做好,还是有一定难度的。
首先是下载Android SDK,地址是:http://developer.android.com/sdk/ (可能需要通过特殊方式访问),再启动我们的利器Eclipse,然后安装插件,在线安装的地址是:https://dl-ssl.google.com/android/eclipse/,配置好Android SDK的路径。
我只是简单的带过了配置过程,如果还有不明白的,需要详细的配置过程可以参考这个网址:http://news.congci.com/news/windows7-android-eclipse-adt
接下来的就可以创建一个Hello的工程,启动模拟器,开始我们快乐而苦闷的Android开发之旅了。我们先来了解几个概念。
1、Dalvik Virtual Machine
Dalvik虚拟机可以说是对应于Java虚拟机,但是二者之间是不同的。“JVM是一种堆栈机器,而Dalvik虚拟机则是基于寄存器的,一般而言,基于栈的机器需要更多指令,而基于寄存器的机器指令更大。”
2、Intent
这个对刚接触这个概念的人来说,有点抽象。不过我们可以做个设想,就是所有的程序都可以通过URL(Uniform Resource Locator,统一资源定位符)或者URI(Uniform Resource Identifier,统一资源表识符)来访问,对,在Android平台就是这样来实现了,当然现在有些其它平台也是这样设计的。
thunder://QUFodHRwOi8vd3d3LjE1My54ZG93(迅雷的下载地址)
qqdl://aHR0cDovL3d3dy4xNTMueGRvd25zLmN(QQ下载)
flashget://W0ZMQVNIR0VUXWh0dHA6Ly93d3c(Flashget下载)
http://www.herbertyang.com(网址)
我想此刻你可以理解到这样的请求已经在我们周围发生了,我们在大胆的想下云操作系统是否也可以这样实现呢?如果没错的话,以后就是浏览器的时代,当然浏览器的理解只是这个时代的范畴。
3、Activity
这个概念还好理解,Android的Activity与用户界面屏幕之间多为一对一的关系,Android应用程序包括多个Activity,Activity之间可以相互携带数据切换。
4、View
View可以理解成控件,常用的控件有:TextView, EditView, ListView, ImageView, TabHost, ViewGroup 等等。
当然还包括控件的布局View
- RelativeLayout:相对布局
- LinearLayout:线性布局
- FrameLayout:框架布局
- AbsoluteLayout: 绝对布局
学过Java SE的界面设计的话,这些应该比较好理解,只不过现在是把布局的Code写到了XML里面。
如何协作开发?
虽然到此还不能熟练的进行开发,不过这只是一个时间问题了。下面我们来讲解下如何进行协作开发,这个也是探索的最宝贵的经验。
我们还得讨论到三层架构,这个是我们分工协作的关键,也是我们能够井然有序的基本前提:
- 表现层:1、用户界面,2、交互
- 业务层:逻辑
- 数据层:1、访问SQLite/XML 2、Contacts 3、Web API 4、LBS
是的,和传统的Web开发模式是一样的。
参考文献
Android 屏幕尺寸
Nov 19th
你也许刚好在找这个:
* QVGA — 240 x 320, low density (120 dpi)
* HVGA — 320 x 480, medium density (160 dpi)
* WVGA800 — 480 x 800, high density (240 dpi)
* WVGA854 — 480 x 854, high density (240 dpi)
在eclipse中查看Android SDK源代码
Sep 23rd
首先是下载你使用的Android SDK相对应的源代码
下面这个网站有各种版本的源代码:
http://rgruet.free.fr/public/
android-1.5-cupcake-src.zip 04-Oct-2009 03:07 21.6M
android-1.6_r1-donut-src.zip 04-Oct-2009 03:02 22.9M
android-2.0-eclair-src.zip 21-Nov-2009 01:21 24.4M
android-2.1-eclair-src.zip 06-Jul-2010 13:08 30.2M
android-2.2-froyo-src.zip 06-Jul-2010 12:59 33.4M
然后在对应的SDK版本下目录下建立sources目录,在把代码解压到sources目录下,这样Eclipse就可以直接识别源代码了。
为什么是这个目录呢?
查看 Windows –> Preferences –> Java Build Path –> Libraries –> Android 2.X – > android.jar –> Source attachment
我的步骤:
下载:
http://rgruet.free.fr/public/android-2.1-eclair-src.zip
我的SDK_HOME 是:/home/app/android-sdk/
建立source目录:/home/app/android-sdk/platforms/android-2.1_r01-linux/sources
下面是我的目录结构:
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/android
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/com
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/dalvik
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/dasm
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/data
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/dex
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/dot
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/dxc
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/dxconvext
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/jar
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/java
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/java_cup
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/javax
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/jdiff
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/jp
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/junit
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/mock_android
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/org
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/other
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/otherpackage
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/otherpkg
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/proguard
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/signature
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/spechelper
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/SQLite
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/src
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/sun
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/targets
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/testprogress2
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/tests
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/util
/home/app/android-sdk/platforms/android-2.1_r01-linux/sources/LICENSE
Android开发包下载
Apr 2nd
Android 2.1 SDK文档 (官方英文版)
Android SDK 2.1r1 (Java SDK)
Android SDK 2.0.1r1 (Java SDK)
Android SDK 2.0r1 (Java SDK)
Android SDK 1.6r2(Java SDK)
Android SDK 1.6r1 (Java SDK)
Android SDK 1.5r3 (Java SDK)
Android NDK 1.6r1 (C++ SDK)
Android for Windows USB Driver 设备驱动
SDK Setup 工具—老版本SDK自动升级工具 (22MB)