`
wc0903
  • 浏览: 80852 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

第六章 使用命令行工具与Android模拟器——下

阅读更多

由于你在Android服务端安放了应用,你就可以删除它。使用命令语法 rm HelloWorldCommandLine.apk来移除应用。下面的插图显示了rm命令,如果正确运行,就不会又反馈信息。然后使用ls查看到文件已经删除了。

删除应用后,打入exit离开shell,回到命令提示窗口。

 

重装并启动应用

现在你可以使用adb install来重装应用:

adb install HelloWorldCommandLine.apk

一旦应用装回服务端,切换到你的模拟器。从模拟器启动应用。它应该正常运行,如下所示:

由于你已经了解了在windows上创建和编辑文件的流程,让我们在Linux上看一下。即使你是一个顽固的Windows用户,你也要关注下一节。我发现用开源工具编程有很明显的优势。

Linux上的Hello World!

很多程序员,尤其是对开源软件感兴趣的,将Linux作为他们的首选平台。Google和开放手机联盟也为这些程序员制作了Android SDK。这个SDK实际上就是SDK(因为Java是可移植的),但是这些工具只能运行在Linux上。

当我写本书时,我使用的是Redhat Linux的旧版本(Redhat 9)作为我的Linux 平台。我下载并按照了EclipseAndroid SDK。然而,很快就证明了安全运行AndroidLinux版本有限制。至少,你应该有一款支持libstdc++.so.6Linux版本。

Android文档列出了Ubuntu Dapper Drake作为Linux的测试版本。如果你还不知道你用什么版本,你可以放心使用该版本。不幸的是,我运行的硬件,安装最新版本的Ubuntu时出现了问题。所以我决定放弃推荐的系统,尝试一些新的。

当我档期Redhat寻找Linux的分支时,我决定试试Fedora8。本书中其余的Linux例子使用的是Federa 8;然而,他们在你选择的分支上也应该以会正常工作。

配置PATH声明

第一步是配置你的PATH声明。该路径是一个目录列表,即操作系统会利用它们查看何时尝试寻找正在运行的命令。

要想看你的当前路径如何配置,从终端运行下面的:

      echo $PATH

你会在下面的插图中得到一些提示PATH声明的信息。

使用export命令,将Android添加到PATH声明中(看下面的插图):

export PATH=$PATH:<android path>

Linux中这样更改PATH声明仅仅会更改当前终端会话的PATH声明。要使你PATH声明永久改变,你必须编辑.bash_profile文件。用vi编辑.bash_profile,如下所示。

vi编辑器打开.bash_profile,应该会如下图所示。你可以清晰的看到PATH声明。使用命令:ivi变成插入模式,然后添加AndroidPATH声明中。然后按ESC键,使用命令:w写文件,然后用:q关闭。

Android SDKLinux版本附带了一个Python脚本,ActivityCreator.py,用来创建你的初始项目。运行Python脚本时,会为你的项目创建一个输出目录。然而我喜欢手动创建目录,以保证在我期望的地方创建它。使用mkdir为你的项目创建目录(看下面的插图)。

在你创建项目目录后,你就可以运行Python脚本ActivityCreator.py了。该脚本的语法和Windows.bat文件非常接近:

activityCreator.py --out <output directory> package.activityName

使用ActivityCreator.py脚本安装你的项目。下面的插图中可以看到ActivityCreator.py脚本的输出结果。

创建项目后,编辑HelloWorldLinux.java添加TextViewLinux中你有许多编辑.java文件的方式可选。你可以还使vi,或者使用如下所示的标准文本编辑器。

最后,从main.xml中删除定义的TextView。你现在编译你的Linux版的Hello World!应用,只需做这两处小变动。

要编译应用,就使用ANT(如本章前面在Windows环境中的用法)。Apache ANT应该预先安装到了你的Linux分支上,尤其是你使用的Fedora 8。如果你没有用Fedora 8。你需要为Linux本版下载、安装并设置Apache ANT的路径。

当你运行ant时,你会看到下面的输出结果:

最后,你需要启动Android模拟器并按照你的应用。在模拟器启动并运行后,执行下面的命令:

adb install HelloWorldLinux.apk

这就将应用安装到了Linux Android 服务端。如果命令运行成功,你就能够在Android模拟器上运行你的Activity

下一章研究如何使用Android SDK响应电话事件。

 

 

专家答疑

问:有没有比其它系统更适合Android编程的系统?

答:在使用几种操作系统后,我没发现任何一个操作系统比其它系统有明显的优势。这仅仅是一种个人偏好。然而,通常情况下,你会看到较多的工具——非官方的——基于Linux平台发布。因为LinuxAndroid都是开源的,更多的开源开发者更倾向于为另一个开源平台开发工具。这种共生关系,会更令Android收益。

问:shell环境中,有没有其它命令能在adb中启动?

答:有。例如,一个更有意思的命令是service命令,可以查看进程的状态,例如:

service check phone

假设手机在运行,你可能会得到

Service phone: found

service的另一个用法是打电话。模拟器运行时,键入下面的命令,检测模拟器接口的结果:

service call phone 2 s16 "15555551212"

 

  • 大小: 11.8 KB
  • 大小: 21.4 KB
  • 大小: 14.1 KB
  • 大小: 16.2 KB
  • 大小: 9.6 KB
  • 大小: 20 KB
  • 大小: 9.7 KB
  • 大小: 48.2 KB
  • 大小: 33.5 KB
  • 大小: 29.8 KB
1
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics