android第二课:运行你的应用
如果你按照前面课程创建了 Android 项目,它包含了可以立即运行的 “Hello World”源代码文件。
由两该条件来决定如何运行你的应用:你是否拥有运行着 Android 的设备和你是否使用 Eclipse。 本节课向你展示了如何将你的应用安装到实机和 Android 模拟器上,并且包含了使用 Eclipse 和使用命令行工具两种情况。
在你运行应用之前,你应该先了解一下 Android 项目中的一些目录和文件:
AndroidManifest.xml- 清单文件描述了应用的基本特征, 并定义其每个组件。你要通过阅读更多的教程来学习文件中的各种声明方法。
在清单文件中应该包含的最重要的元素是
<uses-sdk>。
它通过使用android:minSdkVersion属性和android:targetSdkVersion属性来声明,应用在不同
Android 版本间的兼容性。 他看起来应该像这样:<manifest xmlns:android="http://schemas.android.com/apk/res/android" ... >
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17" />
...
</manifest>你应该将
android:targetSdkVersion设置为尽可能高的版本,并在该版本平台下测试你的应用。
更多信息可以阅读支持平台的不同版本。 src/- 存放应用程序主要源代码文件的目录。默认包含一个可以通过应用图标启动的
Activity类。 res/- 包含几个用于存放应用资源的子目录。 部分列举如下:
drawable-hdpi/- 存放设计用于高分辨率(HDPI)屏幕的可绘制对象(比如位图文件)的目录。其他以
drawable起始的目录包含设计用于其他屏幕分辨率的可绘制对象。 layout/- 该目录包含用于定义应用的用户界面的文件。
values/- 该目录存放其它包含资源集合的 XML 文件,比如字符串和颜色定义。
如果你构建并运行默认 Android 应用,默认 Activity 会启动并载入布局文件,
在屏幕上显示“Hello World.”字样。 没什么可以激动的,只是让你在开始开发之前让你了解如何运行应用。
在实机上运行程序
如果你拥有运行着 Android 的设备,如何安装和运行你的应用在这里:
- 将你的设备通过 USB 线插到开发用的机器上。 如果你在 Windows 上开发, 你可能需要为你的设备安装对应的 USB 驱动。关于驱动的安装,参见关于 OEM USB 驱动文档。
- 在你的设备上启用USB 调试功能。
- 在大多数运行着 Android 3.2 或更低的系统上,你可以在设置 > 应用程序 > 开发 中找到该选项。
- 在 Android 4.0 或更新的系统中,它在设置 > 开发选项中。
注意: 在 Android 4.2 或更新的系统中,开发选项 默认是不可见的。 要使其可用,需要在设置 > 关于手机画面点击 Build number七次。然后回到之前的画面,就可以找到开发选项 了。
从 Eclipse 中运行应用:
- 打开一个项目文件,按下工具栏中的 Run
按钮。 - 在出现的 Run as窗口中选择Android Application并按下 OK按钮。
Eclipse 会向连接的设备中安装应用并启动它。
或者从命令行运行你的应用:
- 将目录切换到你的 Android 项目的根目录并执行:
ant debug
- 确信 Android SDK 的
platform-tools/目录包含在你的PATH环境变量中,执行:adb install bin/MyFirstApp-debug.apk
- 在你的设备上找到MyFirstActivity并打开。
如何在设备上构建并运行 Android 应用就讲完了!要开始开发就继续学习下一课。
在模拟器上运行程序
无论你使用 Eclipse 还是命令行,在模拟器上运行应用之前你需要创建一个Android 虚拟设备(AVD)。 AVD 是 Android 模拟器的 设备配置,它允许你模拟不同的设备。
图1 - AVD 管理器显示了一些虚拟设备。
创建 AVD:
- 运行 Android 虚拟设备管理器:
- 在 Eclipse 中,点击工具栏中的 Android 虚拟设备管理器
图标。 - 使用命令行则切换目录到
<sdk>/tools/并执行:android avd
- 在 Eclipse 中,点击工具栏中的 Android 虚拟设备管理器
- 在 Android 虚拟设备管理器面板上点击New按钮。
- 填写 AVD 的详细内容。 填上名字、目标平台、SD 卡大小和皮肤(默认为 HVGA)。
- 点击Create AVD按钮。
- 从Android 虚拟设备管理器中选择新建的 AVD 并点击Start按钮。
- 模拟器启动后,为虚拟器屏幕解锁。
从 Eclipse 中运行应用:
- 打开一个项目文件,按下工具栏中的 Run
按钮。 - 在出现的 Run as窗口中选择Android Application并按下 OK按钮。
Eclipse 会向 AVD 中安装应用并启动它。
或者从命令行运行你的应用:
- 将目录切换到你的 Android 项目的根目录并执行:
ant debug
- 确信 Android SDK 的
platform-tools/目录包含在你的PATH环境变量中,执行:adb install bin/MyFirstApp-debug.apk
- 在你的模拟器上找到MyFirstActivity并打开。
如何在模拟器上构建并运行 Android 应用就讲完了!要开始开发就继续学习下一课。
android第二课:运行你的应用的更多相关文章
- android从放弃到坚持放弃第二课(下)
续第二课( 下) 续第二课 下 活动的生命周期 返回栈 活动状态 活动的生存期 体验活动的生命周期 活动被回收怎么办 活动的启动模式 standard singleTop singleTask sin ...
- Android OpenGL教程-第二课【转】
第二课 你的第一个多边形: 在第一个教程的基础上,我们添加了一个三角形和一个四边形.也许你认为这很简单,但你已经迈出了一大步,要知道任何在OpenGL中绘制的模型都会被分解为这两种简单的图形. 读完了 ...
- Android之ViewPager 第二课
在这里只粘贴部分代码 在第一课中,只有View滑动完毕,才触发动画效果,令滑块移动,在第二课中,将实现滑块与View同步运行. SecondActivity.java package com.andr ...
- 【第二课】深入理解Handler
简要讲解Handler是做什么的 我们知道,在Android中,app启动会启动一个进程一个线程——UI线程,UI线程是主线程,并且不允许这个线程阻塞超过5秒,一旦超过5秒就会ANR. 所以较为耗时的 ...
- Kali Linux Web 渗透测试视频教程— 第二课 google hack 实战
Kali Linux Web 渗透测试— 第二课 代理简介 文/玄魂 课程地址: http://edu.51cto.com/course/course_id-1887.html 目录 shellKal ...
- NeHe OpenGL教程 第二课:多边形
前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线教程的编写,以及yarn的翻译整理表示感谢 ...
- 【Linux探索之旅】第二部分第二课:命令行,世界尽在掌握
内容简介 1.第二部分第二课:命令行,世界尽在掌握 2.第二部分第三课预告:文件和目录,组织不会亏待你 命令行,世界尽在掌握 今天的标题是不是有点霸气侧漏呢? 读者:“小编,你为什么每次都要起这么非主 ...
- 【C++探索之旅】第一部分第二课:C++编程的必要软件
内容简介 1.第一部分第二课:C++编程的必要软件 2.第一部分第三课预告:第一个C++程序 C++编程的必要软件 经过上一课之后,大家是不是摩拳擦掌,准备大干一场了呢. 这一课我们来做一些C++开发 ...
- 【Linux探索之旅】第一部分第二课:下载Linux,免费的噢
内容简介 1.第一部分第二课:下载Linux,免费的噢 2.第一部分第三课预告:测试并安装Ubuntu 下载Linux,免费的噢 大家好,上一课我们认识了非常“霸气侧漏”的Linux操作系统. 也知道 ...
随机推荐
- 分布式理论——quorum原理
编者按:本篇文章是网上一些文章的合集,并不是原创,谢谢各位的分享. 一.基于Quorum投票的冗余控制算法 Quorom 机制,是一种分布式系统中常用的,用来保证数据冗余和最终一致性的投票算法,其主要 ...
- Linux安装middleBox之prads
PRADS prads github安装 prads github 项目 prads github命令
- BugkuCTF 矛盾
前言 写了这么久的web题,算是把它基础部分都刷完了一遍,以下的几天将持续更新BugkuCTF WEB部分的题解,为了不影响阅读,所以每道题的题解都以单独一篇文章的形式发表,感谢大家一直以来的支持和理 ...
- windows平台下编辑的内容传到linux平台出现中文乱码的解决办法
现象说明:在windows下编辑的内容,上传到linux平台下出现中文乱码.如下: 在windows平台编写haha.txt文件,内容如下: 上传到linux平台,出现中文乱码,如下: 基本上面出现的 ...
- open-falcon ---客户机agent操作
open-falcon的agent用于采集机器负载监控指标,比如cpu.idle.load.1min.disk.io.util等等,每隔60秒push给Transfer.agent与Transfer建 ...
- python基础学习笔记(六)
学到这里已经很不耐烦了,前面的数据结构什么的看起来都挺好,但还是没法用它们做什么实际的事. 基本语句的更多用法 使用逗号输出 >>> print 'age:',25 age: 25 ...
- B. Views Matter
链接 [http://codeforces.com/contest/1061/problem/B] 题意 问你最多去掉多少块使得从上和右看,投影图不变 分析 注意细节,尤其第一列 代码 #includ ...
- ResultSet集合查询字段名称(转载)
转自:https://blog.csdn.net/song_litao/article/details/84751351 public List<String> getColumnName ...
- Final 个人最终作业。
1.对软件工程M1/M2做一个总结 在M1阶段,我在C705组.M1阶段我与黄漠源同学结对,一起完成提取关键词算法的优化.最初我们一起测试提取关键词算法功能的实现效果,随后我主要负责从网络上搜寻并整理 ...
- Linux内核分析作业第八周
进程的切换和系统的一般执行过程 一.进程调度的时机 中断处理过程(包括时钟中断.I/O中断.系统调用和异常)中,直接调用schedule(),或者返回用户态时根据need_resched标记调用sch ...