5

我正在准备一个应用程序以提交到使用 Bing 地图 API 的 Windows 应用商店 - 因此,必须编译该应用程序以针对特定架构。虽然有提交指南,但不清楚如何提交同一应用程序的 Arm 和 x86 配置。甚至有可能,还是必须在商店里出现两次?

4

4 回答 4

8

当你从 Visual Studio 商店菜单中选择创建应用包的选项时,你可以选择包体系结构。有 4 个选项:中性、x86、x64、ARM。

如果您选择中性,则它会为“任何 CPU”构建一个包,您可以将其上传到应用商店。如果您选择 x86、x64 和 ARM,它将为这些配置中的每一个构建一个包,并且您必须为您希望支持的架构上传相应的包。

此外,如果您正在构建以提交到商店,请确保始终为每个选定的架构选择发布。

在某些情况下,某些参考不支持使用中性架构进行构建。Microsoft Visual C++ 运行时包就是一个例子。

于 2012-10-07T20:23:25.917 回答
3

取自这里

根据各种运行时和编译器的现有实现细节,每种语言(JavaScript、C++ 和 C#/VB)的 ARM 工程设计过程都不同。

JavaScript 使用 JIT 编译器,因此在运行时会处理平台定位。因此,使用 JavaScript 的 Metro 风格应用程序是平台中立的,您只需编写一次即可在 x86/x64/ARM 上运行。

C# 和 Visual Basic 也从硬件差异中抽象出来。它们编译为平台中立的 MSIL。因此,使用 C# 或 Visual Basic 的 Metro 风格应用程序只需编译一次即可在 x86/x64/ARM 上运行。

C++ 接近于金属,并编译为您所针对的平台的机器语言。这为开发人员提供了完全控制权,但也要求他们指定支持应用程序的硬件。

它的本质是纯 .net 或纯 html/js 可以在任何架构上运行而不会出现问题。如果你想要 C++,那么你需要为每个支持的架构编译一次你的应用程序。我的理解是,在这种情况下,您可以创建一个包含多个架构的安装程序的应用程序包。

这里的帖子有一些关于为多种架构打包应用程序的详细信息。以下是一些亮点:

7.在选择要创建的包和解决方案配置映射部分中,选中要为其创建包的每个构建配置的复选框。

构建配置网格列出了包的可能平台架构(即 Neutral、ARM、x64 和 x86)。在每一行中,一个组合框显示与该行架构相关的当前解决方案配置和架构选择的组合。默认平台的复选框设置为当前活动的项目平台。中性行的组合框显示了包含 AnyCPU 作为项目平台的解决方案配置组合。如果没有相关的解决方案配置组合,则该平台的整行都无法选择。为您指定的每个配置生成一个包。

8.对于您指定的每个构建配置,选择您要构建的解决方案配置。

当您为应用商店打包应用程序时,您可以指定发布或您创建的任何自定义解决方案配置。

将为您指定的每个构建配置创建一个包。

这里我们得到这个:

7.单击包上传您的应用程序包。

最后来自上一个链接:

签署和发布

在您的应用通过认证测试后,其包会经过数字签名,以保护它们在发布后不被篡改。此阶段开始时,您无法取消提交。

注意您的应用列表可能需要一些时间才能出现在搜索结果中。这个是正常的。此外,在将应用程序提交到 Windows 应用商店后,您无法更改发布日期,但您可以取消发布、更新发布日期并重新提交。

概述:在构建过程中,您指定您希望应用程序工作的所有架构,并为每个架构创建一个包。在提交过程中,您选择为该应用程序构建的所有包。以这种方式提交您的应用程序时,商店中只会显示一个版本。

于 2012-10-07T20:37:49.083 回答
1

如果您只构建 HTML5/javascript Windows Store 应用程序,它适用于所有版本(ARM、x86 和 x84)

如果您使用 bing api 创建一些网页。不用担心哪个平台不起作用。

于 2012-10-09T17:18:43.873 回答
0

答案在这里:http: //developer.android.com/google/play/publishing/multiple-apks.html

TLDR:

  • 转到您的 Google Play 应用开发者控制台
  • 选择您的应用
  • 选择左侧的APK
  • 开启高级模式
  • 上传你的 ARM APK
  • 上传您的 x86 APK
  • 谷歌会找出其余的
于 2015-03-20T14:43:10.980 回答