Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有办法为iPhone/iPad/Android开发跨平台应用程序?_Iphone_Android_Ipad_Cross Platform - Fatal编程技术网

有没有办法为iPhone/iPad/Android开发跨平台应用程序?

有没有办法为iPhone/iPad/Android开发跨平台应用程序?,iphone,android,ipad,cross-platform,Iphone,Android,Ipad,Cross Platform,可能重复: 编辑-伙计们,我们还需要一次投票来结束这场选举。这个问题是一个dup(阅读评论) 我听说苹果公司禁止使用这种工具。好的,所以苹果在九月份解除了禁令。然而,问题仍然存在——有没有一种明智的方法可以在不写两遍几乎所有东西的情况下开发这两个平台上的应用程序 是我遗漏了什么,还是当前的情况真的让每一家合法开发跨平台的公司都必须维护两个代码库?苹果公司在收到FTC和欧盟的一些压力后,于9月初撤销了禁令。然而,除非你打算使用第三方工具,如Adobe Flash Pro CS5(我相信你可以通过

可能重复:

编辑-伙计们,我们还需要一次投票来结束这场选举。这个问题是一个dup(阅读评论)

我听说苹果公司禁止使用这种工具。好的,所以苹果在九月份解除了禁令。然而,问题仍然存在——有没有一种明智的方法可以在不写两遍几乎所有东西的情况下开发这两个平台上的应用程序


是我遗漏了什么,还是当前的情况真的让每一家合法开发跨平台的公司都必须维护两个代码库?

苹果公司在收到FTC和欧盟的一些压力后,于9月初撤销了禁令。然而,除非你打算使用第三方工具,如Adobe Flash Pro CS5(我相信你可以通过这种方式创建运行在Android上的AIR应用程序,以及广为宣传的iOS功能),否则你无论如何都必须维护两个代码库,因为Android应用程序是用Java编写的,iOS应用程序是用Objective-C编写的,两种截然不同的语言,使用截然不同的API。

9月,苹果解除了iOS许可证中的一些限制,这些限制使跨平台开发变得困难。看见我不熟悉当前许可证的详细信息,但您可以通过他们的开发人员程序获得一份副本。

您可以始终使用标准HTML5技术来制作纯web应用程序。苹果有两种应用程序:通过Objective-C编写的应用程序商店的原生应用程序,或者只有底层HTML5技术限制的web应用程序

如果你不喜欢纯网络应用,你甚至可以将两者合并,制作一个自定义应用,在嵌入式浏览器视图(iOS上的UIWebKit)中显示大量自定义的类似网络的内容。Android和iOS web浏览器框架来自WebKit,在功能/外观/一致性方面非常接近


不要从“我不能在苹果的封闭式iOS上运行X”的观点开始,而是从“我可以在任何受支持的应用程序技术中运行X吗,即使它是基于web的或web应用程序的混合,可以跨所有平台运行?”

看看供应商显示为android项目的android的
System.getProperty()
值。我没有看过iPhone或IPad,因为我没有,但希望他们也有一些改变。但这只适用于我所知道的java。

我最近对此做了一些研究,发现一些公司可以为您提供这方面的帮助

  • 应用加速器钛移动。他们制作的产品允许您用Javascript编写代码。我发现,业务逻辑(如网络、文件等)只需编写一次,但UI有相当多的if(android)else\iphone逻辑需要正确处理。应用程序将看起来是本地的
  • 亨利。它们更多的是基于HTML的解决方案,但对设备有更广泛的支持。不仅仅是iphone和android。sdk还很早,只能在基于web的专用ide中完成工作
  • 电话鸿沟。一个基于javascript/css/html的框架,面向iPhone、Android和Blackberry
  • 所有的解决方案都有优缺点。根据应用程序的复杂性,选择一个类似的平台进行开发可能是一个不错的决定。如果应用程序支持的功能适合您的应用程序,那么编写应用程序的速度可能会快得多。目前,它们似乎都处于早期发布阶段,不支持开发人员将使用的完整工具包,如调试器、完整IDE支持等。此外,它们中的许多构建到最低的通用功能集,因此您可能无法在发布时获得所有新的发布功能,您必须等待平台的特定版本发布才能拥有它们。

    XMLVM:Android到iPhone
    可以将Android代码翻译为适用于iPhone的Objective-C。但是,正如我所知,你仍然需要一个MAC来编译iPhone应用程序。

    < P>另一种可能是框架,如果你喜欢MVC,ORM和Ruby。< /P> < P> Android有NDK(原生DeV套件),允许C和C++代码被包含在APKGs中,并通过JNI从java调用。苹果的工具链也将处理这两个问题;不同的代码将是平台接口代码,主要是Android上的Java和iOS上的ObjC


    <>这只适用于当你的应用程序大部分在C或C++中时。

    备选将与即将到来的,如果一切顺利,你可以在所有平台上对C语言进行编码,包括Wi7MB。< /P>


    它看起来很有希望,但我自己还没有尝试过。

    真是太可惜了。难道没有任何产品可以将android/java代码翻译成Objective C吗?如果是这样,那么这就是主要的公开市场利基。。。我不相信它实际上是开放的。如果它们有类似的(读:相同的)API,那么可能会编写一个类似于我在C#和VB中看到的一些翻译器(它们都使用.NET Framework API,这就是为什么这种翻译是可能的),但是,由于它们的差异如此之大,即使是一个基本的翻译人员也不可能/不值得付出如此多的努力。这就是为什么很多跨平台应用程序会有功能集差异或发布时间表差异的原因(请参阅:iOS和Android的Facebook和Twitter应用程序)。我有一个朋友开发了一个元语言+元框架,可编译为PHP+CakePHP、Ruby+Rails或Python+django。因此,这是可能的,但可能是特殊的,可能不涵盖任何API的全部范围。我不认为你的答案有任何相关性。另请参阅,以及许多相同痛苦的不同表述:)请参阅评论中链接的重复问题。这是处理此问题的一个很好的方法。此外,您可能想看看JQTouch库,它扩展了JQuery功能,以模拟触摸界面的外观:这可以工作,但应用程序的UI层