很明显Mono Touch是解决方案的一部分,因为它允许C#代码在iPhone上运行, 但Mono Touch会封装IPhone API,因此不提供通用API。
另一种选择是jave-script工具包,它可以同时工作并提供在线数据存储。
然而,人们的真实生活经历是什么?
答案 0 :(得分:6)
可以在Monotouch iPhone应用程序和Silverlight Windows Phone 7应用程序之间共享代码。 Monotouch专家Craig Dunn在他最近的帖子MonoTouch meets Windows Phone 7
中对此进行了讨论答案 1 :(得分:3)
移动平台远非多才多艺,并且具有独特性,机会很高,他们最终会像今天的浏览器一样进行整体战争。如果我是你,那么我会马上决定写两个独立的应用程序。即使您使用Mono编写一些应用程序,明天您肯定会遇到功能兼容性问题,或者在两个手机平台上都有明显的支持。
如果您希望从平台坚持使用原生平台SDK和工具,那么就是最重要的。
答案 2 :(得分:2)
答案 3 :(得分:2)
答案 4 :(得分:0)
可能是网络应用程序?
用RoR或Django制作的东西,没有闪光灯或银光。
答案 5 :(得分:0)
这里有几个选项:
1)设计一个平台抽象层,这样你就可以将你的代码编写到PAL中,并且每个平台上的PAL都是正确的。这个问题是PAL将类似于最低公分母,除非你很高兴在不支持它们的平台上存在不做任何事情的功能。然后,您的通用应用程序逻辑可以用适当的方式编写 - 很可能是C ++。
2)在特定于平台的框架(.NET / Obj-C)中使用C ++和特定于平台的代码创建公共代码。这使您可以将常用的应用程序逻辑作为特定于平台的代码所引入的库。
3)(1)和(2)的混合使用#ifdef / #endif对来引入相关部分。我不推荐这个 - 这很痛苦。
4)完全独立地编写每个平台的代码,并共享设计,算法和数字资产(位图,图标,声音等)。是的,更多要维护,但在每个平台上为您提供最佳体验。
5)OMG_Peanuts建议的Web应用程序。这是一个快速获胜,但很少或没有平台特定的功能。