开始使用Kindle Fire






4.50/5 (2投票s)
《Kindle Fire Android应用程序编程学习》的章节摘录
Lauren Darcey,Shane Conder 由 Addison-Wesley Professional 出版 ISBN-10: 0-321-83397-X ISBN-13: 978-0-321-83397-6 |
Android 是第一个完整、开放、免费的移动平台。开发者可以享受到全面的软件开发工具包 (SDK),其中包含大量用于开发功能强大、功能丰富的应用程序的工具。该平台是开源的,依赖于开发者熟悉的久经考验的开放标准。最重要的是,开发者没有昂贵的入门障碍:无需任何费用。(在第三方分发机制,如 Android Market 上发布需要支付少量费用。)Android 开发者有多种选择来分发和商业化他们的应用程序。
Android 简介
为了了解 Android 在其他移动技术中的位置,让我们花一分钟时间谈谈这个平台是如何以及为何出现的。
谷歌与开放手机联盟
2007 年,一群手机制造商、无线运营商和软件开发商(特别是谷歌)组成了开放手机联盟,目标是开发下一代无线平台。与现有平台不同,这个新平台将是非专有的,并基于开放标准,这将降低开发成本并增加利润。移动软件开发人员还将拥有前所未有的手机功能访问权限,从而实现更大的创新。
随着 RIM BlackBerry 和 Apple iPhone 等专有平台的兴起,移动开发社区热切地关注着这个潜在的改变游戏规则的平台的消息。
Android 登场
2007 年,开放手机联盟宣布了 Android 平台并启动了面向开发者的 Beta 项目。Android 经历了新平台的典型修订。发布了几个 Android SDK 预览版本。第一款 Android 手机(T-Mobile G1)于 2008 年底开始发货。在 2009 年和 2010 年期间,新的、令人兴奋的 Android 智能手机进入全球市场,该平台向行业和消费者都证明了自己。在过去三年中,Android 平台进行了多次修订,每次都为开发者提供了引人注目的功能,供用户享受。最近,移动平台开始考虑超越传统智能手机范式的设备,例如平板电脑、电子书阅读器和机顶盒,如 Google TV。
截至本文撰写之时,全球有数百种 Android 设备可供消费者使用——从高端智能手机到低端“签约免费”手机以及介于两者之间的一切。这个数字不包括大量可用的 Android 平板电脑和电子书阅读器,数十款已宣布即将推出的设备,或运行 Android 的消费电子产品。(有关 Android 设备的详细列表,请查看此维基百科链接:http:// goo.gl/fU2X5。目前在 Android Market(现称为 Google Play)上发布了超过 450,000 个应用程序,Amazon Appstore for Android 上有超过 30,000 个应用程序。在美国,所有主要运营商现在都在其产品线中突出地销售 Android 手机,亚洲、欧洲、中南美洲及其他地区也是如此。新 Android 设备进入全球市场的速度持续增长。
谷歌从一开始就是开放手机联盟的贡献成员。该公司托管 Android 开源项目和开发者网站 (http://developer. android.com )。这个网站是您下载 Android SDK、获取最新平台文档和浏览 Android 开发者论坛的首选网站。谷歌还运营着最受欢迎的向最终用户销售 Android 应用程序的服务:Android Market。Android 的吉祥物是一个绿色的小机器人(参见图 1.1)。
廉价而简单的开发
如果说什么时候“廉价而简单”是一种优势,那就是在移动开发中。与桌面开发相比,无线应用开发由于其昂贵的编译器和优惠的开发者计划,入门成本一直非常高。在这里,Android 打破了专有模式。与其他移动平台不同,开发 Android 应用几乎没有成本。
Android SDK 和工具可在 Android 开发者网站 (http:// developer.android.com [ http://goo.gl/K8GgD ]) 上免费获取。免费的 Eclipse 程序已成为 Android 应用程序开发最流行的集成开发环境 (IDE);Android 开发者网站上提供了一个强大的插件,用于促进使用 Eclipse 进行 Android 开发。
所以,我们讨论了廉价;现在让我们谈谈为什么 Android 开发很容易。Android 应用程序是用 Java 编写的,Java 是最流行的开发语言之一。Java 开发者会熟悉 Android SDK 中提供的许多包,例如 java.net。经验丰富的 Java 开发者会很高兴发现 Android 的学习曲线是合理的。
在本书中,我们专注于开发 Android 应用程序最常用、最流行和最简单的设置
我们使用最常见和受支持的开发语言:Java。虽然我们不教您 Java,但我们会尽力使我们使用的 Java 代码简单明了,即使是初学者也不会纠结于语法。即使如此,如果您是 Java 新手,我们推荐 Rogers Cadenhead 的《Sams Teach Yourself Java in 24 Hours》和 Bruce Eckel 的《Thinking in Java》第四版(第三版可从 http:// goo.gl/mtjoz —一个来自 Bruce Eckel 网站的 zip 文件,网址为 http://www.mindviewinc.com/Books/ )。
我们使用最流行的开发环境:Eclipse。它是免费的,受到 Android 团队的良好支持,并且是唯一支持与 Android 开发工具插件兼容的 IDE。我们有没有提到它是免费的?
我们为开发者最常用的操作系统编写说明:Windows。Linux 或 Mac 用户可能需要翻译一些键盘命令、路径和安装过程。
我们专注于 Amazon Kindle Fire 上可用的 Android 平台版本:Android
如果您尚未安装开发 Android 应用程序所需的开发工具或 Android SDK 和工具,请立即安装。
让我们开始吧!
注意:您可以在附录 A“配置您的 Android 开发环境”中找到有关如何安装和配置计算机以进行 Android 应用程序开发的所有详细信息。您将需要安装和配置 Java、Eclipse、Android SDK 和 Eclipse 的 ADT 插件。您将需要配置 ADB 和可能的 USB 驱动程序,以将您的开发机器连接到 Kindle Fire 进行调试。同样,所有这些都将在附录 A 中介绍。
熟悉 Eclipse
让我们从编写一个简单的 Android“Hello, World”应用程序开始,该应用程序向用户显示一行文本。在此过程中,您还将了解 Eclipse 环境。具体来说,您将了解 Eclipse 的 Android 开发工具 (ADT) 插件提供的一些功能。ADT 插件提供开发、编译、打包和部署 Android 应用程序的功能。具体来说,ADT 插件提供以下功能
Android 项目向导,它生成所有必需的项目文件
Android 专用资源编辑器,包括用于设计 Android 应用程序用户界面的图形布局编辑器
Android SDK 和 AVD 管理器
用于监控和调试 Android 应用程序的 Eclipse DDMS 视图
与 Android LogCat 日志实用程序集成
与 Android Hierarchy Viewer 布局实用程序集成
自动构建和应用程序部署到 Android 模拟器和设备
用于发布部署的应用程序打包和代码签名工具,包括用于代码优化和混淆的 ProGuard 支持
现在,让我们来体验一下这些功能。
创建 Android 项目
Android 项目向导会创建 Android 应用程序所需的所有文件。打开 Eclipse 并按照以下步骤创建新项目
- 选择“文件”、“新建”、“Android 项目”或单击 Eclipse 工具栏上的“Android 项目创建器”图标。
注意:第一次尝试在 Eclipse 中创建 Android 项目时,您可能需要选择“文件”、“新建”、“项目”,然后选择“Android”、“Android 项目”。完成一次此操作后,Android 项目类型将出现在 Eclipse 项目类型中,您可以使用步骤 1 中描述的方法。
- 选择一个项目名称。在此示例中,将项目命名为 HelloKindle。
- 选择项目源代码的位置。由于这是一个新项目,请选择“在工作区中创建新项目”单选按钮。如果您更喜欢将项目文件存储在默认位置以外的位置,只需取消选中“使用默认位置”复选框并浏览到您选择的目录。设置应如图 1.2 所示。
- 点击“下一步”按钮。
- 为您的应用程序选择一个构建目标,如图 1.3 所示。对于大多数应用程序,您希望选择最适合您的目标受众使用的设备和您的应用程序需求的 Android 版本。对于 Kindle 开发,请使用 Android 开源项目供应商版本(而不是 Google, Inc. 供应商版本)选择 API Level 10 (Android 2.3.3)。Kindle Fire 设备无法访问 Google 附加组件。
- 点击“下一步”按钮。
- 指定应用程序名称。此名称将是用户看到的名称。在本例中,将应用程序命名为 Hello Kindle。
- 按照 Java 的标准包命名空间约定指定包名。由于本书中的所有代码都属于 com.kindlebook.* 命名空间,因此使用包名 com.kindlebook.hellokindle。
- 如果需要,选中“创建活动”复选框。这将指示向导
为应用程序创建默认启动 Activity 类。将您的活动命名为
HelloKindleActivity。 - 确认 Minimum SDK 字段正确。此字段将默认设置为构建目标的 API 级别。(Android 2.3.3 是 API Level 10。)如果您想支持旧版本的 Android SDK,则需要更改此值。例如,要支持 Android 1.6 的设备,请将 Minimum SDK 字段设置为 API Level 4。然而,Kindle 基于 API Level 10,因此仅针对 Kindle 的应用程序无需担心这一点。您的项目设置将如图 1.4 所示。
- Android 项目向导允许您创建测试项目以及您的 Android 应用程序,如图 1.4 所示。对于本例,测试项目是不必要的。但是,您可以通过单击 Android 测试项目创建器图标(位于 Eclipse 工具栏上 Android 项目向导图标的右侧)随时添加测试项目。测试项目将在第 16 章“测试 Kindle Fire 应用程序”中进一步讨论。
- 点击“完成”按钮。
注意:您还可以使用 Android 项目向导将现有的 Android 项目添加到 Eclipse 中。为此,只需在“新建 Android 项目”对话框中(参考图 1.2)选择“从现有源创建项目”,而不是默认的“在工作区中创建新项目”。Android SDK 的 /samples 目录中提供了几个示例项目,位于它们支持的特定平台下。例如,Android SDK 示例项目可以在 /platforms/android-xxx/samples 目录中找到(其中 xxx 是平台级别编号,例如 10)。
您还可以选择第三个选项:从现有示例创建项目,它将按照其说明进行操作。但是,请确保您首先选择构建目标选项以获取您可以创建的示例项目列表。
探索您的 Android 项目文件
您现在将在 Eclipse 文件资源管理器中看到一个名为 HelloKindle 的新 Android 项目。除了链接适当的 Android SDK jar 文件外,还创建了以下核心文件和目录
- AndroidManifest.xml - 应用程序的中心配置文件。
- project.properties — 由 Eclipse 和 Android ADT 插件使用的生成构建文件。不要编辑此文件。
- proguard.cfg — 由 Eclipse、ProGuard 和 Android ADT 插件使用的生成构建文件。编辑此文件以配置发布构建的代码优化和混淆设置。
- /src 文件夹 — 所有源代码所需的文件夹。
- /src/com.kindlebook.hellokindle/HelloKindleActivity.java — 此应用程序的主要入口点,名为 HelloKindleActivity。此活动已在 Android 清单文件中定义为默认启动活动。
- /gen/com.kindlebook.hellokindle/R.java — 一个生成的资源管理源文件。不要编辑此文件。\
- /assets 文件夹 — 必需的文件夹,其中未编译的文件资源可以包含在项目中。
- /res 文件夹 — 用于管理所有应用程序资源的必需文件夹。应用程序资源包括动画、可绘制图形、布局文件、数据类字符串和数字以及原始文件。
- /res/drawable-* 文件夹 — 应用程序图标图形资源以多种大小包含,适用于不同的设备屏幕分辨率。
- /res/layout/main.xml — HelloKindleActivity 使用的布局资源文件,用于在主应用程序屏幕上组织控件。
- /res/values/strings.xml — 定义字符串资源的资源文件。
编辑项目资源
Android 清单文件是 Android 应用程序的中心配置文件。双击新项目中的 AndroidManifest.xml 文件以启动 Android 清单文件编辑器(参见图 1.5)。
编辑 Android Manifest 文件
Android 清单文件编辑器将清单信息组织到多个选项卡中
- 清单 — 此选项卡,如图 1.5 所示,用于常规应用程序范围设置,例如包名和应用程序版本信息(用于安装和升级目的)。
- 应用程序 — 此选项卡用于定义应用程序详细信息,例如应用程序显示名称和图标,以及应用程序的“核心”,例如可以运行哪些活动(包括默认启动 HelloKindleActivity)以及应用程序提供的其他功能和服务。
- 权限 — 此选项卡用于定义应用程序的权限。例如,如果应用程序需要访问 Internet 资源的能力,则必须在清单中注册一个 uses-permission 标签,名称为 android.permission.INTERNET。
- Instrumentation — 此选项卡用于单元测试,使用 Android SDK 中可用的各种 instrumentation 类。
- AndroidManifest.xml — 此选项卡提供了一个简单的 XML 编辑器,可以直接编辑清单文件。由于所有 Android 资源文件,包括 Android 清单文件,都只是 XML 文件,因此您始终可以直接编辑 XML,而不是使用资源编辑器。您可以通过单击 Eclipse 工具栏上的 Android XML 创建器图标来创建新的 Android XML 资源文件。
如果您切换到 AndroidManifest.xml 选项卡,您的清单文件将看起来像这样
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.kindlebook.hellokindle"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="10"
android:targetSdkVersion="10" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".HelloKindleActivity"
android:label="@string/app_name" >
<intent-filter>
<action
android:name="android.intent.action.MAIN" />
<category
android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
编辑其他资源文件
Android 应用程序由功能(Java 代码、类)和数据(包括图形、字符串等资源)组成。大多数 Android 应用程序资源存储在项目的 /res 子目录中。新 Android 项目中默认还提供以下子目录
- /drawable-ldpi、/drawable-hdpi、/drawable-mdpi — 这些子目录存储用于不同屏幕密度和分辨率的图形和可绘制资源文件。如果您使用 Eclipse 项目资源管理器浏览这些目录,您会在每个目录中找到 icon.png 图形文件;这是您的应用程序图标。
- /layout — 此子目录存储用户界面布局文件。在此子目录中,您将找到 main.xml 屏幕布局资源文件,它定义了此简单应用程序中一个活动的用户界面。
- /values — 此子目录组织各种类型的资源,例如文本字符串、颜色值和其他基本类型。在这里,您将找到 strings.xml 资源文件,其中包含应用程序使用的所有字符串资源。
如果您双击任何资源文件,资源编辑器就会启动。请记住,您可以随时直接编辑 XML。例如,让我们尝试编辑一个字符串资源文件。如果您检查项目的 main.xml 布局文件,您会注意到它显示一个简单的布局,带有一个 TextView 控件。此用户界面控件只显示一个字符串。在本例中,显示的字符串是在名为 @string/hello 的字符串资源中定义的。要使用字符串资源编辑器编辑名为 @string/hello 的字符串资源,请按照以下步骤操作
- 在 Eclipse 的包资源管理器中双击 strings.xml 文件,在资源编辑器中打开它。
- 选择名为 hello 的字符串,并注意资源编辑器中显示的名称 (hello) 和值 (Hello World, HelloKindleActivity!)。
- 在“值”字段中,将文本更改为 Hello, Kindle Fire。
- 保存文件。
如果您切换到 strings.xml 选项卡并查看原始 XML,您会注意到在 <resources> 块中定义了两个字符串元素
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello, Kindle Fire</string>
<string name="app_name">Hello Kindle</string>
</resources>
第一个资源是名为 @string/hello 的字符串。第二个资源是名为 @string/app_name 的字符串,它包含应用程序的名称标签。如果您再次查看 Android 清单文件,您会看到 @string/app_name 用在应用程序配置中。
我们将在第 4 章“管理应用程序资源”中详细讨论项目资源。现在,让我们继续编译和运行应用程序。
运行和调试应用程序
要构建和调试 Android 应用程序,您必须首先为项目配置调试。ADT 插件使您可以在 Eclipse 开发环境中完全完成此操作。具体来说,您需要执行以下操作
- 创建并配置 Android 虚拟设备 (AVD)。
- 为您的项目创建 Eclipse 调试配置。
- 构建 Android 项目并使用新的 AVD 启动模拟器。
当您完成这些任务中的每一个时,Eclipse 会将其调试器附加到 Android 模拟器(或通过 USB 连接的 Android 设备),您可以随意运行和调试应用程序。
管理 Android 虚拟设备
要在 Android 模拟器中运行应用程序,您必须配置 AVD。AVD 配置文件描述了您希望模拟器模拟的设备类型,包括支持哪个 Android 平台。您可以指定不同的屏幕尺寸和分辨率,并且可以指定模拟器是否具有 SD 卡以及容量。在这种情况下,一个稍作修改的 AVD,用于 Android 2.3.3 的默认安装就足够了。以下是创建基本 AVD 的步骤
- 从 Eclipse 中启动 Android 虚拟设备管理器,方法是单击工具栏上带有 bugdroid 的小 Android 手机图标。您也可以在 Eclipse 中选择“窗口”、“AVD 管理器”来启动管理器。
- 点击“新建”按钮创建新的 AVD。
- 为 AVD 选择一个名称。由于您将使用所有默认设置,因此将此 AVD 命名为 KindleFire-Portrait。
- 选择一个构建目标。Kindle Fire 基于 API Level 10 (Android 2.3.3)。请记住不要使用 Google API 版本,因为 Kindle Fire 不支持此版本。
- 选择 SD 卡容量,以 kibibytes 或 mibibytes 为单位。(不熟悉 kibibytes?请参阅维基百科条目:http://goo.gl/N3Rdd。)。
注意
尽管为了模拟 Kindle Fire,您会选择 8GiB,但我们建议选择一个相当小的容量,因为每次创建新的 AVD 时,都会在您的硬盘上分配一个与 SD 卡大小相同的文件;这些文件会迅速累积。除非您的应用程序需要大量存储空间,否则我们建议选择 64MiB 左右。
- 选择皮肤。此选项控制模拟器的不同视觉外观。在本例中,我们使用 Kindle Fire 屏幕的有效分辨率,即 600 像素宽和 1004 像素高(默认纵向分辨率)。或者,我们可以创建横向模式的 AVD,其中我们需要使用 1024 像素宽和 580 像素高。Kindle Fire 为软键菜单保留了一些空间。
- 在硬件下,将抽象液晶密度更改为 169,并将设备内存大小更改为 512,以更好地模拟 Kindle Fire 设备特性。
可选地,启用快照功能。这允许您保存和恢复模拟器会话的状态,从而显著提高启动速度。
您的项目设置应如图 1.6 所示。
- 单击“创建 AVD”按钮,等待操作完成。如果您的 SD 卡容量很大,这可能需要几秒钟,因为为 SD 卡模拟分配的内存会在 AVD 创建过程中格式化。您现在应该在列表中看到新创建的 AVD。
在 Eclipse 中创建调试和运行配置
您几乎已经准备好启动您的应用程序。您还有最后一项任务:您需要在 Eclipse 中为您的项目创建一个调试配置(或运行配置)。为此,请按照以下步骤操作
在 Eclipse 中,从菜单中选择“运行”、“调试配置”;或者,单击 Eclipse 工具栏上调试图标旁边的下拉菜单,然后选择“调试配置”选项。
- 双击 Android 应用程序项以创建新条目。
- 通过单击左侧窗格中的“New_configuration”来编辑该新条目。
- 将配置名称更改为 HelloKindleDebug。
- 通过单击“浏览”按钮并选择 HelloKindle 项目来设置项目。
- 在“目标”选项卡上,选中您创建的 AVD 旁边的复选框。
- 点击“应用”按钮应用您的更改。您的“调试配置”对话框应如图 1.7 所示。
使用模拟器启动 Android 应用程序
注意:您第一次尝试从绿色小 bug 下拉菜单中选择 HelloKindleDebug 调试配置时,必须通过调试配置管理器进行导航。未来的尝试将显示 HelloKindleDebug 配置,以便方便访问。
单击“调试”按钮后,模拟器将启动(参见图 1.8)。这可能需要一些时间,请耐心等待。
现在,Eclipse 调试器已附加,您的应用程序正在运行,如图 1.9 所示。
如您所见,应用程序很简单。它显示一个带有文本行的 TextView 控件。应用程序没有其他功能。
模拟器的 HomeScreen 与真实 Kindle Fire 设备上的 HomeScreen 完全不同,因为它已由 Amazon 重新设计。除此之外,这意味着模拟器不适用于完整的应用程序测试。您需要为此获得一台真正的 Kindle Fire 设备。
控制模拟器
当您以这种方式创建自定义 AVD 时,屏幕左侧不会有键盘和控制按钮,就像您可能习惯于默认模拟器一样。所有命令都通过您的开发机器键盘提供。例如,Home 键方便地映射到 Home 键。菜单键映射到 F2 或 page-up。搜索映射到 F5。返回映射到 Esc。还有更多;请在 Android 文档中查找它们:http://goo.gl/5DMiI。
使用 DDMS 调试 Android 应用程序
除了 Eclipse 内置的用于逐行调试代码的常规调试视图外,ADT 插件还添加了 DDMS 视图。当应用程序运行时,快速查看 Eclipse 中的此视图。您可以进入 DDMS 视图(参见
在 Eclipse 的右上角。要切换回 Eclipse 项目资源管理器,只需从 Eclipse 的右上角选择 Java 视图。
DDMS 视图可用于监控应用程序进程,以及与模拟器交互。您可以模拟语音通话并向模拟器发送短信。您可以向模拟器发送模拟位置修复,以模拟基于位置的服务。您将在第 2 章“掌握 Android 开发工具”中了解更多关于 DDMS 和 Android 开发者可用的其他工具。
LogCat 日志工具显示在 DDMS 视图和调试视图中。如果通过 USB 插入设备,此工具会显示来自模拟器或设备的日志信息。
在设备上启动 Android 应用程序
是时候将您的应用程序加载到真实的 Kindle Fire 设备上了。为此,您需要使用 USB 数据线将 Kindle Fire 连接到您的计算机。确保您的机器已配置为进行 Kindle Fire 调试,如附录 A 中所述。
为确保您使用正确的设置进行调试,请按照以下步骤操作
- 在 Eclipse 中,从 Java 透视图(而不是 DDMS 透视图)中,选择“运行”、“调试配置”。
- 单击 HelloKindleDebug 调试配置。
- 在“目标”选项卡上,将“部署目标选择模式”更改为“手动”。您以后可以随时将其更改回“自动”,但选择“手动”会强制您在每次选择从 Eclipse 部署和调试应用程序时,选择是在模拟器中(使用特定的 AVD)还是在设备上(如果通过 USB 插入)进行调试。
- 单击“应用”按钮应用您的更改。
- 使用 USB 线将 Kindle Fire 设备连接到您的开发计算机。
- 点击 Eclipse 中的“调试”按钮。一个对话框将出现(参见图 1.11),显示所有可用于运行和调试应用程序的配置。所有物理设备都会列出,正在运行的现有模拟器也会列出。您还可以使用您创建的其他 AVD 启动新的模拟器实例。
- 选择可用的 Kindle Fire 设备。如果您没有看到 Kindle Fire 列出,请检查您的电缆并确保您已安装相应的驱动程序,如附录 A 所述。
Eclipse 现在将 Android 应用程序安装到您的 Kindle Fire 上,附加调试器,并运行您的应用程序。您的设备将显示与您在模拟器中看到的类似屏幕。如果您查看 Eclipse 中的 DDMS 视图,您会看到日志信息可用,并且 DDMS 视图的许多功能与物理设备和模拟器兼容,例如截屏(参见图 1.12)。
Eclipse 新手?
如果您仍在学习 Eclipse 开发环境的基础知识,现在是查看附录 B“Eclipse IDE 技巧和窍门”的好时机。
摘要
恭喜!您现在是 Kindle Fire Android 开发者。您已经开始学习 Eclipse 开发环境。您创建了您的第一个 Android 项目。您审查并编译了可用的 Android 代码。最后,您在 Android 模拟器和真实的 Kindle Fire 上运行了您新创建的 Android 应用程序。
练习
- 访问 Android 网站 https://developer.android.com.cn 并浏览。查看在线开发者指南和参考资料。查看社区选项卡,并认真考虑注册 Android 初学者和 Android 开发者 Google 群组。
- 访问 Eclipse 网站并浏览。查看在线文档:http:// www.eclipse.org/documentation/ ( http://goo.gl/fc406 )。Eclipse 是一个免费的开源项目;查看贡献链接 ( http://www.eclipse.org/contribute/ ) ,并考虑您如何以某种方式回馈这个伟大的项目——无论是报告错误还是执行建议的许多其他选项之一。
- 访问亚马逊应用商店开发者门户并浏览。您可以从这里开始:https://developer.amazon.com/welcome.html。同时,前往亚马逊 应用商店开发者博客:http://www.amazonappstoredev.com。