安卓第一夜 第一个应用

作者:Vamei
出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!

承接“Java快速教程”,我将开始写安卓相关的文章。

安卓(Android)开发主要使用Java语言。Java语言基础,是安卓开发的第一道门槛。再者,一个好的安卓应用往往配合有远程服务器。这两方面,可以参考Java快速教程中对Java语言和Play框架的讲解。安卓开发还需要其它技术的合作,包括操作系统、互联网、图形化界面、数据库等。可以说,移动开发是一个现实的战场,平常操练的各项本领都会派上用场。

从本质上讲,移动平台和传统的PC平台并无本质区别。两者都是在硬件平台上搭建一个操作系统,再在操作系统上运行应用程序。移动平台许多概念也源于PC平台,比如内核(kernel)、进程(process)、事件响应(event)。但移动平台有自己的特点,一个是性能弱于PC,二是电量有限。移动平台必须要在这两个方面有针对性的优化。我们将在后面看到,安卓系统的许多新的设计和概念,都是在解决这两个问题。然而,即使是这些移动平台的专有新概念,也可以在传统技术中找到它们的影子。

移动开发相当有趣。我看到自己的代码能在一个小巧的设备上运行时,心里会有很大的成就感。而安卓这样的开放系统,还接管着诸如Google
Glass有趣的硬件平台。当然,移动端发展时间比较短,所以相关技术经常会更新换代,所以要努力学习才能跟得上潮流。然而,考虑到移动端已经取得的巨大成功,以及移动端尚待开发的巨大潜力,移动端开发的技能都相当值得“上手”。安卓的相关历史,可见Android的历史与花边

安卓开发的最好资料是Google的文档。我在这个系列文章将以更循序渐进的方式推进,并不断引入开发所需的基础知识。这些基础知识大多来自我之前的文章。

开发环境


在我们开始开发之前,先在命令行中尝试使用命令:

javac

如果终端提示找不到命令,那么需要安装JDK(Java Development
Kit)。JDK可以编译Java代码,所以是安卓开发所必须的。如果JDK缺失,你可以到Oracle的官网下载并安装。在Linux系统下,也可以安装应用商店中的openJDK。

下一步是安装ADT,ADT中包含了Eclipse编辑器和Android
SDK。Eclipse能很好的支持Java开发。我们会在Eclipse下编写代码、编译、运行和debug。下载Android
Developer Tools
(ADT),并安装。ADT有Mac,
Linux和Windows版本。

  • 在Linux下,解压缩,在eclipse文件夹下,运行可执行文件eclipse,即可启动。你可以将eclipse所在文件夹放入PATH搜索路径中,方便以后使用。

  • 在Mac下,用Finder找到eclipse文件夹中的Eclipse,点击即可运行。你可以将该Eclipse拖到Application中,方便以后使用。

  • 在Windows下,下载.exe安装程序并安装。

***
如果你已经有了Eclipse,并且熟悉Eclipse插件的配置,可以只下载Android SDK,并在Eclipse中导入。

生成第一个应用


启动ADT,设置Work
Space路径,即Eclipse的工作路径。

进入Eclipse后,点击New Android
Application,来创建新的App。你也可以沿:

File ->
New -> Android Application Project

来创建新的应用。

填写App名字,即HelloWorld。按照Java包的命名规则,将Package
Name改为me.vamei.helloworld (vamei.me是我的域名,不过一直没打理)。然后一路Next,直到Finish。

创建新应用后,我们就到了Eclipse的主界面:

左侧的Package
Explorer中可以浏览HelloWorld应用下的所有文件。点击后,文件内容将在右侧的编辑器主界面中打开。

运行第一个应用


我们可以在ADT中,控制应用的安装和运行

Run
-> Run As -> Android Application

由于我们还没有注册其它的安卓设备,此时安卓将自动运行模拟器(emulator)。模拟器从你的电脑中分出计算和存储资源,生成一个虚拟的安卓设备。HelloWorld应用将安装到模拟器中。可以在右下角的Console监视整个过程。

友情提醒:安卓自带的虚拟器确实很方便,但真的是太慢了。时间都够现磨一杯咖啡了。

其它设备


由于安卓自带虚拟器太慢,因此可以用USB连接安卓设备。大部分的安卓设备可以自动识别。当你点击Run时,将弹出选择设备的窗口。

我最近听朋友说Genymotion虚拟器速度不错。它是基于VirtualBox的。安装VirtualBox和Genymotion,然后在Genymotion中添加设备。该虚拟器也将出现在选择设备的窗口。速度大大超过了安卓自带的虚拟器。

我个人试用了一下,速度确实不错。

总结


创建新应用

运行应用

欢迎继续阅读“Java快速教程”系列文章

安卓第一夜 第一个应用,布布扣,bubuko.com

时间: 2024-08-04 02:32:42

安卓第一夜 第一个应用的相关文章

安卓第九夜 狂风

作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 显示网页,是常见的安卓应用需求.我将在这一讲中实现网页的显示. <狂风>,来自小Willem,荷兰画派黄金时代的作品.作为当时海上马车夫的荷兰,对航海题材的画情有独钟. 这种倾斜的船身,是当时的画家常用的手法,用于表现很强的风. 描述 上一讲实现了一个类别条目页面.现在,我希望点击某个类别后,能再次以条目的方式显示所有的联系人.在这个新的条目页面中,点击某个联系人后,能显示该联

【Linux探索之旅】开宗明义+第一部分第一课:什么是Linux?

内容简介 1.课程大纲 2.第一部分第一课:什么是Linux? 3.第一部分第二课预告:下载Linux,免费的噢!   开宗明义 我们总听到别人说:Linux挺复杂的,是给那些追求逼格的程序员用的.咱们老百姓呀,用用Windows就高兴. 但事实并非如此,Linux不是那么“难于上青天”的. 不少学编程的朋友看过<鸟哥的Linux私房菜>,是台湾的鸟哥写的,非常棒. 小编也开始写一个系列教程,希望对自己对别人都有帮助.但我会非常认真的,不会乱来. 在这个教程中,小编会向您证明:Linux并不复

【C++探索之旅】开宗明义+第一部分第一课:什么是C++?

内容简介 1.课程大纲 2.第一部分第一课:什么是C++? 3.第一部分第二课预告:C++编程的必要软件 开宗明义 亲爱的读者,您是否对C++感兴趣,但是C++看起来很难,或者别人对你说C++挺难的,你不知道如何入门? 别担心,这个系列教程就是为C++初学者准备的. 不可否认,C++是一门非常著名的语言.几乎学计算机的同学都难免要碰一下C++,中国的大学课堂一般也是先学C语言入门,然后就是Java或者C++. C++ 这门语言的使用很广泛,特别是在游戏开发领域,C++的性能和无限可能性使得其几乎

“金山杯2007逆向分析挑战赛”第一阶段第一题分析

题目来自于如下网址: http://www.pediy.com/kssd/ 第13篇 论坛活动 \ 金山杯2007逆向分析挑战赛 \ 第一阶段 \ 第一题 \ 题目 \ [第一阶段 第一题]: 现将此题目概述粘贴如下: CrackMe.exe 是一个简单的注册程序,见附件,请写一个注册机: 要求: 1. 注册机是KeyGen,不是内存注册机或文件Patch 2. 注册机可以使用ASM,VC,BC,VB,Delphi等语言书写,其他谢绝使用. 3. 注册机必须可以运行在Windows系统上. ..

【计算机网络】第一章第一节 计算机网络的基本概念

第一章第一节 计算机网络的基本概念 第一章概述了计算机网络和因特网,这一章从整体上粗线条地勾画出计算机网络的概貌和全课程的框架 Outline 计算机网络的具体构成描述 协议 Notes ## 计算机网路的具体构成描述  [计算机网络的定义] 计算机网络是 通信技术 与 计算机技术 紧密结合的产物 计算机网络就是 互连的.自治的 计算机集合 自治:无主从关系 互连:互联互通 计算机网络就是一种特殊的通信网络(信源和信宿都是计算机.传输数字化信息) [具体构成] 主机:处在因特网的边缘部分的设备都

WPF Datagrid 控制 第一行和第一列之间的空白

原文:WPF Datagrid 控制 第一行和第一列之间的空白 这个位置就是 这里 我们更改 DataGridControltemplate 模板 看树形结构 里面是一个BUtton 功能是全选 能找到了 那就直接改掉就可以 <ControlTemplate x:Key="DataGridControlTemplate1" TargetType="{x:Type DataGrid}"> <Border BorderBrush="{Temp

【读书笔记】安卓学习笔记第一篇——个人杂谈

最近打算转向安卓平台的安全了,因为之前一直没有接触过安卓平台的安全,所以要从最底层的安全机制开始学起.一直以来都是在做Windows平台的安全的,对于Linux的了解不多,而安卓恰好又是基于linux平台的东西.所以搞安卓平台就很有必要去学习一下系统机制方面的东西了.最近看了一些资料, 对于安卓平台有了一个初步的理解,首先安卓给我的感受就是系统的层次很复制.我比较熟悉Windows的东西,Windows是基于子系统进行架构的,但是事实上子系统根本就只有一个win32,对于应用层来说很简明,就是系

第一夜

Two years ago, Rupert Murdoch's daughter, Elisabeth, spoke of the "unsettling dearth of integrity across so many of four institutions". Integrity had collapsed, she argued, because of a collective acceptance that the only "sorting mechanism

安卓手机卫士第一天(要点)

一.splash界面设计. AndroidManifest.xml设置主题样式.左图中锁定样式文件右图中添加全屏样式.