android学习笔记(1)-- 开发环境搭建及helloworld
2010-06-07 16:04
459 查看
首先大概介绍下android,android翻译成中文是“机器人”的意思。它是Google公司于2007年11月宣布的基于linux平台的开源手机操作系统,该平台由操作系统,中间件,用户界面和应用软件组成。android是基于java的虚拟机环境并运行于linux内核上的操作系统,sdk从发布到现在已经由最初的1.0到目前的最新版2.2,更新速度之快令人乍舌,加上各大终端厂商的支持,如htc的多款android手机以及最近的国产神机乐phone使得android开始走红,进入高速发展期。进而带动整个产业链。上层的软件开发需求量也呈一个爆发趋势。
万事开头难,对于一个初学者来说第一步就是把环境搭建好,然后才能进一步的学习和实践。废话不多说,下面是详细步骤。本文开发环境的搭建是基于windows环境下的。
一、需要的软件
由于软件均是基于Dalvik Java Virtual Machine运行的所以Google官方推荐使用主流的Java开发IDE Eclipse。我们需要下载必要的开发组件。
1、Java运行时库(JRE),由于Eclipse使用Java开发,所以需要它才可以正常运行IDE。
运行eclipse需要jre,开发andriod需要jdk(包含了jre),所以我们下载javaSE(jdk)6
http://java.sun.com/javase/downloads/index.jsp JDK 6 Update 20。下载并安装
2、下载安装 Android SDK
地址:http://developer.android.com/sdk 可能被强大的GFW给封了,所以要通过翻墙或者代理下载,自己网上搜很多,
这个安装有点麻烦,具体参见http://www.eoeandroid.com/thread-13965-1-1.html
3)Eclipse集成开发环境,官方提供的Android开发插件ADT Plugin是基于Eclipse编写的,
下载地址:http://www.eclipse.org/downloads/ 下载Eclipse IDE for Java Developers
3、Eclipse ADT Plugin插件是Android Develop Tool Kit的插件,用户需要安装它才能在Eclipse中建立和调试Android程序。
这里选择通过Eclipse在线安装,不同版本Eclipse稍有不同,步骤如下
a) 启动eclipse,选择:Help > Software Updates(install software) > Find and Install....
b) 在下一个对话框选择第二个选项:Search for new features to install,进入下一步
c) 选择New Local Site,输入https://dl-ssl.google.com/android/eclipse
d) OK,安装完成 android ddms , android development tools
4、配置已安装的插件,制定android sdk 位置
a) 选择:Window -> Preferences...
b) 左边菜单中选中android
c) 在右边浏览兵选择android sdk的解压目录作为 sdk location
5、创建Android虚拟设备 AVD
首次运行提示创建AVD。菜单 "Window" -> "Android AVD Manager" 中配置模拟器。
6、创建/使用模拟 SD 卡
创建 SD 卡,运行类似如下命令:mksdcard -l sdcard 512M d:/android/sdcard.img
模拟器中使用 SD 卡,在项目配置的 Target 选项卡的 "Additional Emulator Command Line Options" 框中输入类似如下参数:-sdcard d:/android/sdcard.img
7、浏览模拟 SD 卡中的内容
调试程序,在 DDMS 中选择 "File Explorer" ,在其中的 sdcard 目录下就是模拟 SD 卡中的内容
8、查看日志 LogCat
Window -> Show View -> Other -> Android -> LogCat
9、在模拟器中安装/卸载 apk
安装 apk 运行类似如下命令:adb install name.apk;卸载 apk 运行类似如下命令:adb uninstall packagename(注:这里的参数是需要卸载的包名)
10、反编译 Android 程序
解压 apk 文件,取出其中的 classes.dex 文件,运行类似如下命令:dexdump.exe -d classes.dex > dump.txt(其意思是将 classes.dex dump 出来,并将反编译后的代码保存到指定的文本文件中)
11、人品不好是出现的某些错误的解决办法
如果出现类似如下的错误等
no classfiles specified
Conversion to Dalvik format failed with error 1
解决办法:Project -> Clean
出现 Android SDK Content Loader 60% (一直卡在 60%)
解决办法:Project -> 去掉 Build Automatically 前面的勾
12、查看 SDK 源代码
先想办法搞到源代码,如这个地址 http://www.digginmobile.com/android.asp ,然后将其解压到 SDK 根路径下,例如:C:/android-sdk-windows-1.6_r1/platforms/android-1.6 下新建sources(该文件夹开始可能没创建就自己创建一个)文件夹,把下载下来对应版本的源码放到对应的sdk的sources里解压即可。
13、在之前的版本中,只有一个drawable,而2.1版本后有drawable-mdpi、drawable-ldpi、drawable-hdpi三个,这三个主要是为了支持多分辨率。
drawable- hdpi、drawable- mdpi、drawable-ldpi的区别:
(1)drawable-hdpi里面存放高分辨率的图片,如WVGA (480x800),FWVGA (480x854)
(2)drawable-mdpi里面存放中等分辨率的图片,如HVGA (320x480)
(3)drawable-ldpi里面存放低分辨率的图片,如QVGA (240x320)
系统会根据机器的分辨率来分别到这几个文件夹里面去找对应的图片。
在开发程序时为了兼容不同平台不同屏幕,建议各自文件夹根据需求均存放不同版本图片。
二、android的项目目录结构
目录结构具体如下:
1、src - 用于放置源程序
2、gen - 自动生成 R.java 文件,用于引用资源文件(即 res 目录下的数据)
3、assets - 用于放置原始文件,Android 不会对此目录下的文件做任何处理,这是其与 res 目录不同的地方
4、res/drawable - 用于放置图片之类的资源;res/layout - 用于放置布局用的 xml 文件;res/values - 用于放置一些常量数据
5、AndroidManifest.xml - Android 程序的清单文件,相当于配置文件,配置应用程序名称、图标、Activity、Service、Receiver等
三、HelloWorld程序
在第一步里把运行环境配置好后,可以新建一个HelloWorld项目,file-new-other-android-android project,填写Project name工程名字例如:Starup_HelloWorld,选择Build Target 即sdk的版本,这里选择最新版androi2.2,Appication name 例如:HelloWorld,Package name 包名,例如:com.starup.helloworld,Create Activity 默认创建的activity例如:MainActivity,Min SDK Version可选,意思是你所选的sdk的最小版本,这里是8。
填完以上信息后点击finish即可生成一个项目。该项目比较简单,但是麻雀虽小五脏俱全。
1、MainActivity.java
onCreate是activity生命周期中当一个activity被创建时调用,相当于程序的入口。setContentView是设置这个activity要显示的视图,这里显示的是res/layout/main.xml中定义的视图
2、res/layout/main.xml
android里一般使用xml文件来定义一些不需要动态创建的视图界面,这样做把界面和逻辑处理分开。本视图里主要由两项,一个是LinearLayout,这个是现行布局,如果android:orientation="vertical",则放置于其中的元素则按照从上到下垂直的顺序填充。当然也可以改成android:orientation="horizontal",从左到右填充。另外一个是TextView就相当于一个label显示一些文本信息。其中
android:text="@st
94ba
ring/hello是引用res/values/string.xml里定义的字符串。
3、res/values/string.xml
这里面主要是定一些常量字符串。
4、AndroidManifest.xml
这个是项目配置文件。可以配置activity,service,receiver还有要用到的一些权限等。
OK!到此为止开发环境和第一个HelloWorld都已搞定!漫漫长路算是上路了。
万事开头难,对于一个初学者来说第一步就是把环境搭建好,然后才能进一步的学习和实践。废话不多说,下面是详细步骤。本文开发环境的搭建是基于windows环境下的。
一、需要的软件
由于软件均是基于Dalvik Java Virtual Machine运行的所以Google官方推荐使用主流的Java开发IDE Eclipse。我们需要下载必要的开发组件。
1、Java运行时库(JRE),由于Eclipse使用Java开发,所以需要它才可以正常运行IDE。
运行eclipse需要jre,开发andriod需要jdk(包含了jre),所以我们下载javaSE(jdk)6
http://java.sun.com/javase/downloads/index.jsp JDK 6 Update 20。下载并安装
2、下载安装 Android SDK
地址:http://developer.android.com/sdk 可能被强大的GFW给封了,所以要通过翻墙或者代理下载,自己网上搜很多,
这个安装有点麻烦,具体参见http://www.eoeandroid.com/thread-13965-1-1.html
3)Eclipse集成开发环境,官方提供的Android开发插件ADT Plugin是基于Eclipse编写的,
下载地址:http://www.eclipse.org/downloads/ 下载Eclipse IDE for Java Developers
3、Eclipse ADT Plugin插件是Android Develop Tool Kit的插件,用户需要安装它才能在Eclipse中建立和调试Android程序。
这里选择通过Eclipse在线安装,不同版本Eclipse稍有不同,步骤如下
a) 启动eclipse,选择:Help > Software Updates(install software) > Find and Install....
b) 在下一个对话框选择第二个选项:Search for new features to install,进入下一步
c) 选择New Local Site,输入https://dl-ssl.google.com/android/eclipse
d) OK,安装完成 android ddms , android development tools
4、配置已安装的插件,制定android sdk 位置
a) 选择:Window -> Preferences...
b) 左边菜单中选中android
c) 在右边浏览兵选择android sdk的解压目录作为 sdk location
5、创建Android虚拟设备 AVD
首次运行提示创建AVD。菜单 "Window" -> "Android AVD Manager" 中配置模拟器。
6、创建/使用模拟 SD 卡
创建 SD 卡,运行类似如下命令:mksdcard -l sdcard 512M d:/android/sdcard.img
模拟器中使用 SD 卡,在项目配置的 Target 选项卡的 "Additional Emulator Command Line Options" 框中输入类似如下参数:-sdcard d:/android/sdcard.img
7、浏览模拟 SD 卡中的内容
调试程序,在 DDMS 中选择 "File Explorer" ,在其中的 sdcard 目录下就是模拟 SD 卡中的内容
8、查看日志 LogCat
Window -> Show View -> Other -> Android -> LogCat
9、在模拟器中安装/卸载 apk
安装 apk 运行类似如下命令:adb install name.apk;卸载 apk 运行类似如下命令:adb uninstall packagename(注:这里的参数是需要卸载的包名)
10、反编译 Android 程序
解压 apk 文件,取出其中的 classes.dex 文件,运行类似如下命令:dexdump.exe -d classes.dex > dump.txt(其意思是将 classes.dex dump 出来,并将反编译后的代码保存到指定的文本文件中)
11、人品不好是出现的某些错误的解决办法
如果出现类似如下的错误等
no classfiles specified
Conversion to Dalvik format failed with error 1
解决办法:Project -> Clean
出现 Android SDK Content Loader 60% (一直卡在 60%)
解决办法:Project -> 去掉 Build Automatically 前面的勾
12、查看 SDK 源代码
先想办法搞到源代码,如这个地址 http://www.digginmobile.com/android.asp ,然后将其解压到 SDK 根路径下,例如:C:/android-sdk-windows-1.6_r1/platforms/android-1.6 下新建sources(该文件夹开始可能没创建就自己创建一个)文件夹,把下载下来对应版本的源码放到对应的sdk的sources里解压即可。
13、在之前的版本中,只有一个drawable,而2.1版本后有drawable-mdpi、drawable-ldpi、drawable-hdpi三个,这三个主要是为了支持多分辨率。
drawable- hdpi、drawable- mdpi、drawable-ldpi的区别:
(1)drawable-hdpi里面存放高分辨率的图片,如WVGA (480x800),FWVGA (480x854)
(2)drawable-mdpi里面存放中等分辨率的图片,如HVGA (320x480)
(3)drawable-ldpi里面存放低分辨率的图片,如QVGA (240x320)
系统会根据机器的分辨率来分别到这几个文件夹里面去找对应的图片。
在开发程序时为了兼容不同平台不同屏幕,建议各自文件夹根据需求均存放不同版本图片。
二、android的项目目录结构
目录结构具体如下:
1、src - 用于放置源程序
2、gen - 自动生成 R.java 文件,用于引用资源文件(即 res 目录下的数据)
3、assets - 用于放置原始文件,Android 不会对此目录下的文件做任何处理,这是其与 res 目录不同的地方
4、res/drawable - 用于放置图片之类的资源;res/layout - 用于放置布局用的 xml 文件;res/values - 用于放置一些常量数据
5、AndroidManifest.xml - Android 程序的清单文件,相当于配置文件,配置应用程序名称、图标、Activity、Service、Receiver等
三、HelloWorld程序
在第一步里把运行环境配置好后,可以新建一个HelloWorld项目,file-new-other-android-android project,填写Project name工程名字例如:Starup_HelloWorld,选择Build Target 即sdk的版本,这里选择最新版androi2.2,Appication name 例如:HelloWorld,Package name 包名,例如:com.starup.helloworld,Create Activity 默认创建的activity例如:MainActivity,Min SDK Version可选,意思是你所选的sdk的最小版本,这里是8。
填完以上信息后点击finish即可生成一个项目。该项目比较简单,但是麻雀虽小五脏俱全。
1、MainActivity.java
package com.starup.helloworld; import android.app.Activity; import android.os.Bundle; public class MainActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }
onCreate是activity生命周期中当一个activity被创建时调用,相当于程序的入口。setContentView是设置这个activity要显示的视图,这里显示的是res/layout/main.xml中定义的视图
2、res/layout/main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> </LinearLayout>
android里一般使用xml文件来定义一些不需要动态创建的视图界面,这样做把界面和逻辑处理分开。本视图里主要由两项,一个是LinearLayout,这个是现行布局,如果android:orientation="vertical",则放置于其中的元素则按照从上到下垂直的顺序填充。当然也可以改成android:orientation="horizontal",从左到右填充。另外一个是TextView就相当于一个label显示一些文本信息。其中
android:text="@st
94ba
ring/hello是引用res/values/string.xml里定义的字符串。
3、res/values/string.xml
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="hello">Hello World, HelloWorldMainActivity!</string> <string name="app_name">HelloWorld</string> </resources>
这里面主要是定一些常量字符串。
4、AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.starup.helloworld" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".MainActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-sdk android:minSdkVersion="8" /> </manifest>
这个是项目配置文件。可以配置activity,service,receiver还有要用到的一些权限等。
OK!到此为止开发环境和第一个HelloWorld都已搞定!漫漫长路算是上路了。
相关文章推荐
- Android学习(1)---最新Android Studio 1.4.1开发环境搭建与HelloWorld
- ETH 开发环境搭建及智能合约 helloworld
- Android学习笔记之(一)开发环境搭建
- Android开发之旅:环境搭建及HelloWorld
- cocos2dx 3.x win7+VS2012开发环境搭建及HelloWorld
- Android开发:环境搭建及HelloWorld
- 【转】Android开发之旅:环境搭建及HelloWorld
- Android学习笔记(一)——安卓开发环境搭建
- [maven学习笔记]第一节,认识maven,搭建maven开发环境,写第一个HelloWorld
- Android开发环境的搭建及HelloWorld
- Android开发之旅:环境搭建及HelloWorld
- Android开发之旅:环境搭建及HelloWorld
- Linux下Java开发环境搭建和第一个HelloWorld
- Windows phone应用开发初体验(环境搭建+helloworld)
- Android 开发之旅:环境搭建及HelloWorld
- Android开发之旅:环境搭建及HelloWorld
- [IOS]从零开始搭建基于Xcode7的IOS开发环境和免开发者帐号真机调试运行第一个IOS程序HelloWorld
- Eclipse 下搭建pyDev python开发环境及helloworld
- Android开发之旅:环境搭建及HelloWorld(转)
- Spring MVC 3学习笔记+教程(一)开发环境搭建和HelloWorld程序