多年来,跨平台开发一直是大多数独立开发人员面临的最大挑战。学习一种新的编程语言将您的应用程序移植到另一个平台通常会浪费时间和资源。多年来,由于市场的较高盈利能力,分配资源这一事实已导致许多开发人员将重点放在iOS上。感谢Xamarin等项目,熟悉C#的开发人员可以在iOS,Android和Windows Mobile上推广他们的项目。但是,Android开发人员更熟悉Java编写。要使用Xamarin,开发人员必须熟悉新语言和构建平台。我们提出了一个旨在通过为Java开发人员提供跨开发平台(英特尔多操作系统引擎)来缩小移动操作系统之间差距的项目。但是,该项目的目的仍不清楚。这就是MechDome的来历。MechDome是一家总部位于加利福尼亚州的创业公司,成立于1月。该公司开发了一种转换工具,可以根据您的Android应用自动创建本机iOS和OS X应用。无需学习如何使用新的IDE或API。您所需要做的就是将APK文件发送到MechDome(无需将其发送到您的源代码),并且全自动工具将在几秒钟内为iOS和OS X编译一个单独的二进制文件,然后开发人员可以将二进制文件分发到Apple的App Store中。 。我们在接受MechDome创始人兼首席执行官Mario Kosmiskas的采访时坐下来,观看了该工具的实际演示–该工具有效。尽管由于iOS和Android操作方法之间的根本差异而存在一些限制(我们将在下面讨论),但该工具已在Apple App Store上生成了一些实时应用程序,例如开源Reddit客户端RedReader和开源代码。采购Sudoku客户端以证明其有效性。 MechDome的既定目标是允许开发人员将未修改的Android应用程序转换为本地iOS或OS X应用程序。与诸如Intel的Multi-OS Engine或Xamarin之类的技术相比,Android开发人员不需要知道如何绑定Objective-C库,因为该工具将为您处理它。由于MechDome将处理所有Android UI元素的转换,因此无需使用UI构建器即可修改您的Android应用。是的,即使Android平板电脑应用程序也可以很好地转换为适用于iPad的格式。 MechDome的最大承诺是,转换后的Android应用程序将以目标操作系统用户熟悉的方式运行。例如,Android共享菜单将替换为iOS中的本机共享表,并将包括使用AirDrop的功能(如果适用)。在Android中发布通知的应用将改为在iOS的通知中心显示通知。某些意图(例如在Android上打开照相机)确实会在iOS设备上打开照相机,而Android上的URL意图将在iOS上调用Safari。在Android上访问联系人或日历的内容提供商将改为访问相关的iOS或OS X数据库以获得此信息。通常,尽管如此,使用Android应用程序所需的所有硬件功能都将直接映射为使用iOS中的相关硬件。但是,软件功能可以分为3个不同的类别:1)直接实现iOS上不存在的功能(例如Toast消息); 2)用相关功能,iOS方法替换iOS和Android上的相关功能;以及3)函数iOS上存在但Android上不存在的内容(例如Apple的3D Touch库)无法进行转换,但可以使用该库来实现。根据MechDome的创始人的说法,大多数活动,视图,服务,敬酒和基本内容提供商应可从Android转换为iOS。但是,如前所述,此工具实际上受到iOS工作方式的限制。想要将应用程序转换为iOS的Android开发人员面临的最大挑战之一是如何处理后台服务。 iOS对第三方应用程序可以运行的后台服务的时间和类型(好坏)的要求更加严格。此外,iOS上的Android几乎不存在允许应用程序间通信的丰富意图系统。最后,当前不支持Google Play服务API,因此任何依赖Google服务的应用程序都将无法运行。因此,开发人员将主要限于通过手动用户输入直接访问的功能,这对于大多数游戏或应用程序来说不会构成主要问题。正在使用的MechDome是在一个私人演示中使用,该工具确实确实像广告中那样工作。 Kosmiskas先生演示了将几个功能齐全的Android应用程序编译为功能强大的iOS和OSX应用程序的过程。吐司通知,通知中心中的通知,Web视图,