原文链接:http://android.eoe.cn/topic/android_sdk

本文中你将了解到:

1. 在真机上运行App

2. 在模拟器上运行App

你还应该阅读:

1. Using Hardware Devices(官网页面,站内页面)

2. Managing Virtual Devices(官网页面,站内页面)

3. Managing Projects(官网页面,站内页面)


Running Your App 运行App

如果你跟随上一节创建了一个Android工程,那么它包含了一组默认的, 直接就可以正确的运行的 “Hello World”源文件。

运行您的这个应用程序取决于两件事情:是否拥有一个真实的基于Android的设备并且是否使用Eclipse。这一节说明如何安装和运行应用程序在真实的设备或者是Andorid模拟器上,不论您是使用Eclipse还是命令行工具。

在你运行您的应用程序前,你应该认识一下Android工程中几个目录和文件。

AndroidManifest.xml
这个manifest文件描述应用程序的基本属性,并且定义 应用程序中 的每一个组件。您今后学习更多的课程时将会学到其中更多的声明。

是应该包含在你的manifest文件中最重要的元素之一。它用android:minSdkVersion 和android:targetSdkVersion属性描述了你app在不同android版本之间的适应性。在你的第一个app中,它应该看起来像这样:

1
2
3
4
<manifest xmlns:android="http://schemas.android.com/apk/res/android" ... >
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17" />
...
</manifest>

你应该将android:targetSdkVersion 设置的越高越好并将你的app在相对应的平台上进行测试。更多信息,请阅读Supporting Different Platform Versions.

src/
这个目录是您的源程序的主要目录。在默认情况下,目录包含一个Activity类,当您点击应用程序图标时就会运行它。

res/
包含几个子目录,里面是应用程序的资源文件。下面是几个例子:

-**drawable-hdpi/**
这里存放的是 为高分辨率(hdpi)屏幕所设计的 drawable objects(bitmaps图片)。其他的drawable目录包含为其他分辨率设计的资源(图片)。

-**layout/**
这个目录的文件用来定义应用程序的用户界面。

-**values/**
此目录包含其他各种资源集合的 XML文件 ,比如字符串、颜色的定义。

当您构建和运行默认的Android工程,在src目录中默认的Activity类就开始运行,并且从layout目录加载一个布局文件,这个布局文件包括一个“Hello World"信息。虽然没什么好激动的,但是这对您在实现真正功能的应用程序前,理解怎样构建和运行应用程序是非常重要的。


在真机上运行App

不论您是使用Eclipse还是命令行工具,您需要:

  • 1、用USB线缆连接您的Android设备和电脑。如果您在Windows环境中开发,您需要为设备安装正确的USB驱动。需要得到安装驱动的帮助,请看文档《OEM USB驱动》。
  • 2、确保设备中的”USB调试“选项被打开(多数是在"设置"->"应用程序"->"开发"或者是在4.0以上系统中的"开发人员选项"中)。 从Eclipse中运行应用程序,打开一个您的工程文件,点击工具条中的Run。Eclipse会安装应用程序到您所连接的设备中并开始运行它。

或者你可以从命令行运行应用程序

  • 1、切换到您的Android工程的根目录,并且执行:
1
ant debug
  • 2、目录已经加入"PATH"环境变量中,然后执行:
1
adb install bin/MyFirstApp-debug.apk
  • 3、在您的设备上,找到 MyFirstActivity并打开它。

如果要开始给应用程序添加些东西,请继续下课的学习。


在模拟器上运行App

不论您使用Eclipse还是命令行工具,首先需要创建一个Android虚拟设备(AVD),AVD是一个针对设备配置的Android模拟器,它允许你更改各种不同的设备配置。

图 1. AVD 管理器演示几个虚拟设备.

创建一个AVD:

1、打开Android虚拟设备管理器:

a:在Eclipse中,选择 Window > AVD Manager,或者在工具栏上点击 AVD Manager 的图标。

b:在命令行中,切换到/tools/目录,并执行:

1
android avd

2、android avd在 Android Virtual Device Device Manager面板上点击 New .

3、填写AVD详细信息,给它起个名字,选择目标平台,SD卡的容量和屏幕尺寸。

4、点击 Create AVD

5、在 Android Virtual Device Manager 中选择新建的AVD,并且点击 Start。

6、模拟器启动后,解锁模拟器的屏幕。

从Eclipse中运行应用程序,打开您的一个工程文件,并点击工具条上的Run。Eclipse 会安装应用程序到您的AVD并运行它。

或者从命令行来运行您的应用程序:

1、切换到Android工程的根目录,并运行:

1
ant debug

2、确保Android SDK platform-tools/ 目录包含在PATH环境变量中,然后运行:

1
adb install bin/MyFirstApp-debug.apk

3、在模拟器中,找到 MyFirstActivity并打开它。

开始往应用程序中添加些东西,请继续下一课

如何运行你的Android程序?的更多相关文章

  1. 【Android实验】第一个Android程序与Activity生命周期

    目录 第一个Android程序和Activity生命周期 实验目的 实验要求 实验过程 1. 程序正常启动与关闭 2. 外来电话接入的情况 3. 外来短信接入的情况 4. 程序运行中切换到其他程序(比 ...

  2. 正在运行的android程序,按home键之后退回到桌面,在次点击程序图标避免再次重新启动程序解决办法

    正在运行的android程序,按home键之后退回到桌面,在次点击程序图标避免再次重新启动程序解决办法 例如:一个android程序包含两个Activity,分别为MainActivity和Other ...

  3. Eclipse开发Android程序如何在手机上运行

    android开发不论是在真机上调试还是最终发布到真机上都非常简单,过程如下: 1.安装usb驱动 手机要能与电脑相连,当然要安驱动了.效果就是你插入手机,电脑显示驱动已识别.驱动安装的官方教程:ht ...

  4. 用代码如何检测一个android程序是否在运行

    /** * 检测一个android程序是否在运行 * @param context * @param PackageName * @return */ public static boolean is ...

  5. Android程序能够构建和运行,但是报以下报错,为什么?

    安卓程序写完之后能够构建和运行,但是会报以下的错误.不知道原因为何?求大神解答. 网上说的是混淆编译的原因,不过程序没有开启混淆编译. Error:warning: Ignoring InnerCla ...

  6. 运行Android程序出错:The connection to adb is down, and a severe error has occured

    调试Android程序时候,报错如下: [2013-02-21 15:41:06 - MainActivity] ------------------------------[2013-02-21 1 ...

  7. 【定有惊喜】android程序员如何做自己的API接口?php与android的良好交互(附环境搭建),让前端数据动起来~

    一.写在前面 web开发有前端和后端之分,其实android还是有前端和后端之分.android开发就相当于手机app的前端,一般都是php+android或者jsp+android开发.androi ...

  8. Android 程序打包及签名

    为什么要签名??? 开发Android的人这么多,完全有可能大家都把类名,包名起成了一个同样的名字,这时候如何区分?签名这时候就是起区分作用的. 由于开发商可能通过使用相同的Package Name来 ...

  9. Android程序crash处理

    Android程序crash处理 时间 2014-11-24 13:45:37  CSDN博客 原文  http://blog.csdn.net/allen315410/article/details ...

随机推荐

  1. Windows Python+Eclipse环境配置

    参考这几篇博客: 1:http://www.cnblogs.com/realh/archive/2010/10/04/1841907.html 2:http://www.cnblogs.com/min ...

  2. Android学习笔记一:项目目录结构

    一:Android目录 主要内容有: app目录下: manifests目录: AndroidManifest.xml:APP的配置 java目录:主要为源代码和测试代码 res目录:主要是资源文件, ...

  3. Python文本爬虫实战

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/7019950.html  一:流程 目标:爬取目标网页的图片 1:获取网页源码 2:用Python读取源码 3: ...

  4. 【DB2】清理日志文件db2diag.log

    在数据库运行过程中,会产生很多的日志,进而使日志文件db2diag.log变大 当占用磁盘空间太大的时候,应该怎么处理呢? 方法一: db2inst1@Linux:/db2home/db2inst1/ ...

  5. 3299 有序数组合并求第K大问题

    题目描述 Description 给出两个有序数组A和B(从小到大有序),合并两个有序数组后新数组c也有序,询问c数组中第k大的数 假设不计入输入输出复杂度,你能否给出一个O(logN)的方法? 输入 ...

  6. Ubuntu16.04编译安装Redis Desktop Manager

    Redis Desktop Manager for OSX&Ubuntu 的安装版是收费的, 如果自己编译则是免费的. 安装过程参考官方提供的文档  http://docs.redisdesk ...

  7. 高效编写微信小程序

    原文:https://isux.tencent.com/high-performance-wechat-app-development.html 前言 微信小程序是一个工程,就和盖房子一样,打好了地基 ...

  8. 2014年辛星Javascript解读第三节

    经过第一节的入门和第二节的运算符.那么接下来我们就能够学习Javascript的函数了,当然了.无论大家之前学习的是什么编程语言.都会有函数的概念,假设大家学的是Pascal,还会有"过程& ...

  9. soa---java 多线程的---锁

    如今soa 与分布式计算已经成为互联网公司技术的标配 那他包括的知识点应该熟悉了解.并以此为基础,去应用,调优各种soa的框架. 包括例如以下的四点.是分布式的基础.         a java 多 ...

  10. UVa 10029 - Edit Step Ladders

    題目:已知一些字典序排列的單詞,問能從中找到最大的一個有序單詞集合, 使得集合中的單詞每一個是有上一個單詞經過一次變換得來的(增.刪.改). 分析:dp,LIS.最大遞增子序列,不過數據較大须要優化. ...