如果你按照前面课程创建了 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 的设备,如何安装和运行你的应用在这里:

  1. 将你的设备通过 USB 线插到开发用的机器上。 如果你在 Windows 上开发, 你可能需要为你的设备安装对应的 USB 驱动。关于驱动的安装,参见关于 OEM USB 驱动文档。
  2. 在你的设备上启用USB 调试功能。
    • 在大多数运行着 Android 3.2 或更低的系统上,你可以在设置 > 应用程序 > 开发 中找到该选项。
    • 在 Android 4.0 或更新的系统中,它在设置 > 开发选项中。

      注意: 在 Android 4.2 或更新的系统中,开发选项 默认是不可见的。 要使其可用,需要在设置 > 关于手机画面点击 Build number七次。然后回到之前的画面,就可以找到开发选项 了。

从 Eclipse 中运行应用:

  1. 打开一个项目文件,按下工具栏中的 Run 按钮。
  2. 在出现的 Run as窗口中选择Android Application并按下 OK按钮。

Eclipse 会向连接的设备中安装应用并启动它。

或者从命令行运行你的应用:

  1. 将目录切换到你的 Android 项目的根目录并执行:

    ant debug
  2. 确信 Android SDK 的platform-tools/目录包含在你的PATH环境变量中,执行:
    adb install bin/MyFirstApp-debug.apk
  3. 在你的设备上找到MyFirstActivity并打开。

如何在设备上构建并运行 Android 应用就讲完了!要开始开发就继续学习下一课

在模拟器上运行程序


无论你使用 Eclipse 还是命令行,在模拟器上运行应用之前你需要创建一个Android 虚拟设备(AVD)。 AVD 是 Android 模拟器的 设备配置,它允许你模拟不同的设备。

图1 - AVD 管理器显示了一些虚拟设备。

创建 AVD:

  1. 运行 Android 虚拟设备管理器:

    1. 在 Eclipse 中,点击工具栏中的 Android 虚拟设备管理器图标。
    2. 使用命令行则切换目录到<sdk>/tools/并执行:
      android avd
  2. 在 Android 虚拟设备管理器面板上点击New按钮。
  3. 填写 AVD 的详细内容。 填上名字、目标平台、SD 卡大小和皮肤(默认为 HVGA)。
  4. 点击Create AVD按钮。
  5. Android 虚拟设备管理器中选择新建的 AVD 并点击Start按钮。
  6. 模拟器启动后,为虚拟器屏幕解锁。

从 Eclipse 中运行应用:

  1. 打开一个项目文件,按下工具栏中的 Run 按钮。
  2. 在出现的 Run as窗口中选择Android Application并按下 OK按钮。

Eclipse 会向 AVD 中安装应用并启动它。

或者从命令行运行你的应用:

  1. 将目录切换到你的 Android 项目的根目录并执行:

    ant debug
  2. 确信 Android SDK 的platform-tools/目录包含在你的PATH环境变量中,执行:
    adb install bin/MyFirstApp-debug.apk
  3. 在你的模拟器上找到MyFirstActivity并打开。

如何在模拟器上构建并运行 Android 应用就讲完了!要开始开发就继续学习下一课

android第二课:运行你的应用的更多相关文章

  1. android从放弃到坚持放弃第二课(下)

    续第二课( 下) 续第二课 下 活动的生命周期 返回栈 活动状态 活动的生存期 体验活动的生命周期 活动被回收怎么办 活动的启动模式 standard singleTop singleTask sin ...

  2. Android OpenGL教程-第二课【转】

    第二课 你的第一个多边形: 在第一个教程的基础上,我们添加了一个三角形和一个四边形.也许你认为这很简单,但你已经迈出了一大步,要知道任何在OpenGL中绘制的模型都会被分解为这两种简单的图形. 读完了 ...

  3. Android之ViewPager 第二课

    在这里只粘贴部分代码 在第一课中,只有View滑动完毕,才触发动画效果,令滑块移动,在第二课中,将实现滑块与View同步运行. SecondActivity.java package com.andr ...

  4. 【第二课】深入理解Handler

    简要讲解Handler是做什么的 我们知道,在Android中,app启动会启动一个进程一个线程——UI线程,UI线程是主线程,并且不允许这个线程阻塞超过5秒,一旦超过5秒就会ANR. 所以较为耗时的 ...

  5. Kali Linux Web 渗透测试视频教程— 第二课 google hack 实战

    Kali Linux Web 渗透测试— 第二课 代理简介 文/玄魂 课程地址: http://edu.51cto.com/course/course_id-1887.html 目录 shellKal ...

  6. NeHe OpenGL教程 第二课:多边形

    前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线教程的编写,以及yarn的翻译整理表示感谢 ...

  7. 【Linux探索之旅】第二部分第二课:命令行,世界尽在掌握

    内容简介 1.第二部分第二课:命令行,世界尽在掌握 2.第二部分第三课预告:文件和目录,组织不会亏待你 命令行,世界尽在掌握 今天的标题是不是有点霸气侧漏呢? 读者:“小编,你为什么每次都要起这么非主 ...

  8. 【C++探索之旅】第一部分第二课:C++编程的必要软件

    内容简介 1.第一部分第二课:C++编程的必要软件 2.第一部分第三课预告:第一个C++程序 C++编程的必要软件 经过上一课之后,大家是不是摩拳擦掌,准备大干一场了呢. 这一课我们来做一些C++开发 ...

  9. 【Linux探索之旅】第一部分第二课:下载Linux,免费的噢

    内容简介 1.第一部分第二课:下载Linux,免费的噢 2.第一部分第三课预告:测试并安装Ubuntu 下载Linux,免费的噢 大家好,上一课我们认识了非常“霸气侧漏”的Linux操作系统. 也知道 ...

随机推荐

  1. vue-用Vue-cli从零开始搭建一个Vue项目

    Vue是近两年来比较火的一个前端框架(渐进式框架吧). Vue两大核心思想:组件化和数据驱动.组件化就是将一个整体合理拆分为一个一个小块(组件),组件可重复使用:数据驱动是前端的未来发展方向,释放了对 ...

  2. 一头雾水的"Follow The Pointer"

    原文:一头雾水的"Follow The Pointer" 一头雾水的"Follow The Pointer"                           ...

  3. [Oacle][Partition]Partition操作与 Index, Global Index 的关系

    [Oacle][Partition]Partition操作与 Index, Global Index 的关系: ■ Regarding the local index and the global i ...

  4. JVM规范系列第4章:Class文件格式

    这一章节讲的是字节码的整个组成格式,读懂了这一章,就读懂了字节码文件.对于这一章的学习,我更推荐作为工具书去查找.最好是找一个最简单的Hello World例子,一个字节一个字节去分析其含义.在分析过 ...

  5. SCP和Rsync远程拷贝的几个技巧

    scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...

  6. Nginx反向代理的简单实现

    1)nginx的反向代理:proxy_pass2)nginx的负载均衡:upstream 下面是nginx的反向代理和负载均衡的实例: 负载机:A机器:103.110.186.8/192.168.1. ...

  7. Command Analyze failed with a nonzero exit code

    在运行RN项目的时候,报 Command Analyze failed with a nonzero exit code ,试着将build System 修改下

  8. [2019BUAA软件工程]结对编程感想

    结对编程感想 写在前面   本博客为笔者在完成软件工程结对编程任务后对于编程过程.最终得分的一些感想与经验分享.此外笔者还对于本课程的结对编程部分提出了一些建议. Tips Link 作业要求博客 2 ...

  9. 【MOOC EXP】Linux内核分析实验六报告

    程涵  原创博客 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 进程的描述和进程的创建 知识点梳理: ...

  10. 毕业设计 之 五 PHP语法学习笔记

    毕业设计 之 四 PHP语法学习笔记 作者:20135216 平台:windows10 软件:XAMPP,DreamWeaver 说明:该笔记是对网站编程语言的详细学习 一.PHP基础 0. 关于环境 ...