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
- 在 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操作系统. 也知道 ...
随机推荐
- 免费的 Vue.js 入门与进阶视频教程
这是我免费发布的高质量超清「Vue.js 入门与进阶视频教程」. 全网最好的.免费的 Vue.js 视频教程,课程基于 Vue.js 2.0,由浅入深,最后结合实际的项目进行了最棒的技术点讲解,此课程 ...
- C语言----数据类型(基础篇一)
C语言的入门程序模板 #include <stdio.h> /*使用或者包含系统里面的程序*/ main() /*程序入口点*/ { /*起点*/ +; /*叫计算机执行的指令*/ } / ...
- Name方法
重命名磁盘文件.目录或文件夹. 语法 Name 旧路径名称 As 新路径名称 “Name”**** 语句语法包含以下部分: 部分 说明 旧路径名称 必需. 字符串表达式,指定现有的文件名和位置;可能包 ...
- margin不生效问题
问题机型 魅族M353 Android 5.0.1 问题描述 设置了margin-top: 15px; 但是在该机型上不生效 解决方案 使用padding 替代 margin
- 牛客多校第三场-A-PACM Team-多维背包的01变种
题目我就不贴了...说不定被查到要GG... 题意就是我们需要在P,A,C,M四个属性的限制下,找到符合条件的最优解... 这样我们就需要按照0/1背包的思路,建立一个五维度数组dp[i][j][k] ...
- Linux内核分析 读书笔记 (第五章)
第五章 系统调用 5.1 与内核通信 1.调用在用户空间进程和硬件设备之间添加了一个中间层.该层主要作用有三个: 为用户空间提供了硬件的抽象接口. 系统调用保证了系统的稳定和安全. 实现多任务和虚拟内 ...
- jeecg中vaildfrom的复杂的表单校验
简介 jeecg生成的页面都是使用validfrom组件来确保数据的完整性和准确性. 凡要验证格式的元素均需绑定datatype属性,datatype可选值内置有10类,用来指定不同的验证格式. 如果 ...
- Distances to Zero CodeForces - 803B (二分)
题目链接:https://vjudge.net/problem/CodeForces-803B#author=0 题意: 给你一个数组,其中至少包括一个0,求每一个元素距离最近一个0的距离是多少. 样 ...
- 3-Python3从入门到实战—基础之数据类型(数字-Number)
Python从入门到实战系列--目录 Python3 中有六个标准的数据类型: Number(数字) String(字符串) List(列表) Tuple(元组) Sets(集合) Dictionar ...
- Spring Cloud集成EDAS(替代Eureka)
https://help.aliyun.com/document_detail/72618.html?spm=5176.7946893.821398.spring-cloud.603123beXemW ...