2012-01-01 118 views
2

性能良好的移动应用我需要开发两个iPhone的Android平台上的应用程序。我正在寻找一个跨平台的开发框架。需要加以考虑的重要因素是:跨平台和iPhone和Android

  1. 应用程序将在内网​​环境中运行(与NO互联网 连接)。
  2. 拖放功能将可在此应用程序。
  3. 需要使用条形码阅读器库。
  4. 需要使用地图(它可能是一个自定义地图)
  5. 接收推送通知(目前我已经MQTT记住,因为 没有互联网连接)

如果可能的话我只想维护两个平台的一个源代码。我做了一些研究,发现了两个框架,它们是PhoneGap和Mono(touch和droid)。

  1. PhoneGap似乎很慢。
  2. 单声道需要两个平台的两个代码库,只有库可以共享 (纠正我,如果我错了)。这是我对单的另一个担忧:http://redth.info/2010/04/09/is-monotouch-now-dead-in-the-water-what-does-apples-new-iphone-developer-agreement-mean

我知道本机是最好的,但维修的缘故,并再使用我们开发的人才(这是C#,HTML,JavaScript的),我们需要找出第二个最好的选项。

注意:请记住顶部列出的前5个功能,以便您的答案。 在此先感谢。

UPDATE:
探索一些新的工具之后,我喜欢Appcelerator的表现也是如此。但是使用JavaScript编写整个应用程序对我来说看起来非常混乱,无法使用OOP。而额外的封装尺寸(5〜7 MB)对于频繁发布的环境也是需要注意的。我也喜欢听到你们的消息。

我将在未来几周内更新我们的决定。

+1

您可能会对这篇文章感兴趣:http://codeclimber.net.nz/archive/2010/09/09/Apple-relaxing-SDK-license-agreement-MonoTouch-and-Flash-officially-allowed.aspx (比链接的新一点)。 – 2012-01-01 14:26:48

+0

@ konrad.kruczynski如果将来再次变更(限制),我现在可以使用现在正在开发的产品吗? – Riddle 2012-01-07 05:50:04

+0

我会说:这就是谜语;)这段时间非常稳定(两篇文章都有点旧)。我*认为*他们的这种限制的主要目的是,用户不应该能够没有AppStore安装应用程序。然后,他们可以将Web应用程序视为一个问题,但使用Monotouch构建的程序可以使它们像普通应用程序一样在appstore上投入资金。 – 2012-01-07 11:36:24

回答

1

http://www.appcelerator.com/

他们先编译代码在本机代码,从而表现就像是本地人,他们有条形码阅读器,推送通知(通过城市飞艇)太...

+0

我不认为你会在任何其他跨平台库中获得条形码阅读器和推送界限 – Saurabh 2012-01-01 07:04:02

+0

谢谢。拖放和地图性能如何?他们甚至可以做到吗? – Riddle 2012-01-01 09:10:39

+1

是的..地图是可以与appcelerator钛和性能很好..不知道你的意思是通过拖放 – Saurabh 2012-01-01 10:08:54

1

如何做一个混合应用程序,使用本地代码和HTML5的混合。为所有IO编写本机代码,并且为图形用户界面在嵌入您的应用程序的Web控件中使用jQuery或类似代码。 Android有一个web控件,可以让你与javascript交互。我假设你可以对苹果公司做同样的事情。我试图用Monodroid做类似的事情,而且看起来很有前途,尽管我发现Monodroid还没有原生的Javascript界面​​。

+0

我也考虑这是一个选项。但是,是否有可能在两种平台的本机代码中捕获HTML中引发的事件? – Riddle 2012-01-05 14:55:47

+0

是的,请参阅[iPhone UIWebView](http://connordenman.wordpress.com/2010/04/19/my-uiwebview-part-1-tutorial-8212-communication-between-objective-c-and-external-javascript -enjoy /)和[Android WebView addJavascriptInterface](http://developer.android.com/reference/android/webkit/WebView.html) – FlappySocks 2012-01-05 19:02:12

+0

我已经看到您提供的链接。我想要做的是 - 当我点击网页内的网页上的一个按钮,而不是回发到Web服务器,我想将事件提升到本地代码并在本机代码中处理它。 – Riddle 2012-01-07 05:33:32

3

这条最近的文章here可能会有所帮助。它包含几个新的跨平台移动框架的破解,包括Mono,Appcelerator Titanium,Rhodes,PhoneGap,MoSyncMoai

从阅读您的要求我会说,无论是MoSync或钛可能是最适合你。除了PhoneGap,它实际上只是一个在移动浏览器中运行的Web应用程序(可能是您认为速度很慢的原因),它们都生成本机UI代码应用程序。

+0

谢谢。我正在尝试MoSync。 – Riddle 2012-01-07 06:01:11

0

就这么你知道,我们在我的最后一家公司使用Appcelerator,而Android的表现并不理想。我们的首席开发人员发现了Mono产品,并没有回头。