应用程序标识

对于发布的每个应用程序,以下几个设置应该是唯一的。包括 ID、名称和文件名。

Android 应用程序 ID

在 Android 上,通过为 AIR ID 加上前缀“air.”将其转换为 Android 包名称。这样的话,如果 AIR ID 是com.example.MyApp,那么 Android 包名称是air.com.example.MyApp

<id>com.example.MyApp</id> <name>My Application</name> <filename>MyApplication</filename>

此外,如果该 ID 在 Android 操作系统上不是合法的包名称,它会转换成合法名称。连字符会更改成下划线;若任何 ID 组件以数字开头,会在前面加上大写字母“A”。例如,ID:3-goats.1-boat,会转换成包名称:air.A3_goats.A1_boat

注:添加到应用程序 ID 的前缀可以用于标识 Android Market 中的 AIR 应用程序。如果不希望应用程序因前缀而被标识为 AIR 应用程序,您必须对 APK 文件进行解包,更改应用程序 ID,并按照 Opt-out of AIR application analytics for Android 中的说明将其重新打包。

iOS 应用程序 ID

请将 AIR 应用程序 ID 设置为与您在 Apple iOS Provisioning Portal 中创建的应用程序 ID 匹配。

iOS 应用程序 ID 包含捆绑种子 ID,后面跟着捆绑标识符。捆绑种子 ID 是 Apple 分配给应用程序 ID 的一个字符串,例如 5RM86Z4DJM。捆绑标识符包含一个您选择的反向域样式名称。捆绑标识符可能以星号 (*) 结尾,表示通配符应用程序 ID。如果捆绑标识符以通配符结尾,您可以使用任意合法字符串替换该通配符。

例如:

  • 如果您的 Apple 应用程序 ID 为5RM86Z4DJM.com.example.helloWorld,则您在应用程序描述符中必须使用com.example.helloWorld

  • 如果您的 Apple 应用程序 ID 为96LPVWEASL.com.example.*(通配符应用程序 ID),则您可以使用com.example.helloWorldcom.example.anotherApp,或者以com.example开头的其他 ID。

  • 最后,如果您的 Apple 应用程序 ID 只是捆绑种子 ID 和通配符,如:38JE93KJL.*,则您可以在 AIR 中使用任意应用程序 ID。

指定应用程序 ID 时,请不要包括应用程序 ID 的捆绑种子 ID 部分。

应用程序版本

在 AIR 2.5 和更高版本中,可以在versionNumber元素中指定应用程序版本。不能再使用version元素。当为versionNumber指定值时,必须使用由点分隔的最多三个数字组成的序列,例如:“0.1.2”。版本号的每段最多可以具有三个数字。(即,“999.999.999”是允许的最大版本号)。不必将所有三段都包含在号码中;“1”和“1.0”都是合法的版本号。

也可以使用versionLabel元素来指定版本标签。如果添加了版本标签,就会显示版本标签,而不是像在 Android 应用程序信息屏幕等处一样显示版本号。必须为使用 Android Market 分发的应用程序指定版本标签。如果没有在 AIR 应用程序描述符中指定versionLabel值,则会将versionNumber值分配给 Android 版本标签字段。

<!-- AIR 2.5 and later --> <versionNumber>1.23.7<versionNumber> <versionLabel>1.23 Beta 7</versionLabel>

在 Android 上,AIRversionNumber转换为 Android 整数versionCode,转换公式为:a*1000000 + b*1000 + c,其中 a、b 和 c 分别代表 AIR 版本号的组成部分:a.b.c

主应用程序 SWF

initialWindow元素的content子元素中指定主应用程序 SWF 文件。在移动配置文件中定位设备时,必须使用 SWF 文件(不支持基于 HTML 的应用程序)。

<initialWindow>     <content>MyApplication.swf</content> </initialWindow>

必须包括 AIR 包中的文件(使用 ADT 或 IDE)。如果只是引用应用程序描述符中的名称,不会自动将此文件包括进包中。

主屏幕属性

initialWindow 元素的若干子元素控制主应用程序屏幕的初始外观和行为。

  • aspectRatio— 指定应用程序最初应显示为portrait格式(高度大于宽度)还是landscape格式(高度小于宽度)。

    <aspectRatio>landscape</aspectRatio>
  • autoOrients— 指定舞台是否应随着用户旋转设备或做出与方向相关的其他手势(如打开或关闭滑动键盘)而自动改变方向。如果设置为false(默认),则舞台不会随设备改变方向。

    <autoOrients>true</autoOrients>
  • fullScreen— 指定应用程序应占据设备的整个显示屏,还是与标准操作系统窗口样式(如系统状态栏)共享显示屏。

    <fullScreen>true</fullScreen>
  • renderMode— 指定运行时应使用图形处理单元 (GPU) 还是主要的中心处理单元 (CPU) 渲染应用程序。通常,GPU 渲染可以提高渲染速度,但某些功能(例如某些混合模式和 PixelBender 筛选器)在 GPU 模式下无法使用。此外,不同设备和不同设备驱动程序的 GPU 功能和限制是不同的。应始终在尽可能多的设备上测试应用程序,特别是使用 GPU 模式时。

    可以将渲染模式设置为gpucpuauto。默认值是auto,该设置目前回退到 CPU 模式。请勿对 Flex 应用程序使用 GPU 渲染模式。

    <renderMode>gpu</renderMode>

    GPU 模式的限制为:

    • Flex 框架不支持 GPU 渲染模式。

    • 不支持滤镜

    • 不支持 PixelBender 混合和填充

    • 不支持以下混合模式:图层、Alpha、擦除、叠加、强光、变亮和变暗

    • 不建议在播放视频的应用程序中使用 GPU 渲染模式。

    • 在 GPU 渲染模式中,当虚拟键盘打开时,不会正确地将文本字段移动到可见的位置。若要确保文本字段在用户输入文本时可见,请使用舞台和软键盘事件的 softKeyboardRect 属性将文本字段移到可见区域。

    • 如果显示对象无法通过 GPU 进行渲染,则根本不会显示。例如,如果将滤镜应用于显示对象,则不会显示该对象。

    注:在 AIR 2.6 以上的版本中,iOS 的 GPU 实现与在更早版本(AIR 2.0 版本)中使用的实现有很大的不同。适用不同的优化注意事项。

支持的配置文件

您可以添加supportedProfiles元素,以指定您的应用程序支持哪些设备配置文件。针对移动设备使用 mobileDevice 配置文件。当使用 Adobe Debug Launcher (ADL) 运行应用程序时,ADL 会将列表中的第一个配置文件用作活动配置文件。您也可以在运行 ADL 时使用-profile标志,以在支持列表中选择特定的配置文件。如果您的应用程序在所有配置文件下运行,则可以完全忽略supportedProfiles元素。在这种情况下,ADL 会将桌面配置文件用作默认的活动配置文件。

若要指定应用程序同时支持移动设备和桌面配置文件,并且您通常要在移动设备配置文件中测试应用程序,请添加以下元素:

<supportedProfiles>mobileDevice desktop</supportedProfiles>

必需的本机扩展

支持mobileDevice配置文件的应用程序可以使用本机扩展。

在应用程序描述符中声明 AIR 应用程序使用的所有本机扩展。下面的例子说明了用于指定两个所需本机扩展的语法:

<extensions>      <extensionID>com.example.extendedFeature</extensionID>     <extensionID>com.example.anotherFeature</extensionID> </extensions>

extensionID元素的值与扩展描述符文件中的id元素的值相同。扩展描述符文件是一个名为 extension.xml 的 XML 文件。已打包在从本机扩展开发人员处接收到的 ANE 文件中。

虚拟键盘行为

请将softKeyboardBehavior元素设置为none,以便可以禁用自动平移和调整大小行为,运行时利用这些行为,可以确保在虚拟键盘出现后具有焦点的文本条目字段位于视图中。如果您禁用该自动行为,则在虚拟键盘出现后,确保文本条目区域或其他相关内容可见就是您的应用程序的职责。您可以使用舞台的softKeyboardRect属性,结合 SoftKeyboardEvent 来检测何时键盘将打开以及确定键盘遮住的区域。

若要启用该自动行为,请将该元素值设置为pan

<softKeyboardBehavior>pan</softKeyboardBehavior>
由于 pan 为默认值,省略 softKeyboardBehavior 元素也会启用自动键盘行为。 注:当您同时使用 GPU 呈现时,不支持平移行为。

更多相关文章

  1. 箭头函数的基础使用
  2. NPM 和webpack 的基础使用
  3. Python list sort方法的具体使用
  4. 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
  5. 测试你的Android应用程序
  6. Android核心模块内容概述
  7. android用户界面之WebView教程实例汇总
  8. Android开发入门教程
  9. Android开发从Dagger2迁移至Kodein的感受

随机推荐

  1. LeetCode 二叉树问题小总结
  2. 双指针的魅力!四行代码求解「盛最多水的容
  3. 客户端用不着的数据结构之并查集
  4. 最小堆的魅力!思路清晰求解「至少需要多少
  5. 五分钟小知识:布隆过滤器原理和应用分析
  6. 炫酷!用Python制作漂亮的流动桑基图
  7. Java 包(学习 Java 编程语言 035)
  8. 经典算法题:排序算法
  9. 初识广度优先搜索与解题套路
  10. 二分查找法:在女朋友回家之前可以玩多少个