首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >你是如何同时为*所有*手机/移动设备写作的?

你是如何同时为*所有*手机/移动设备写作的?
EN

Stack Overflow用户
提问于 2009-09-27 16:49:11
回答 9查看 2.2K关注 0票数 9

我们创建运行在移动设备上的非游戏程序: iPhones、Windows、Android、Palm等等。我们的主程序是用C#为Windows编写的,我们被要求将它移植到iPhone。我们是,而不是,我们期待:

  1. 学习曲线取目标C,XCode,Cocoa .
  2. 维护两组代码以使产品在两个不同的平台上保持同步的痛苦。

我们已经决定,作为一种策略,我们希望在尽可能多的移动平台上同时开发所有的产品,这是一项艰巨的任务。

我们知道我们将不得不屈服于这些,但我们更愿意:

  • 避免强迫我们的用户连接到网络上去使用产品。
  • 没有一组不同的源代码。
  • 支持尽可能多的移动平台。

我的问题是,,您对为2-5最流行的移动平台开发最佳策略有什么建议?

编辑:根据评论,我想澄清一下,我们有一个产品,我们在PalmOS和Winmobile上都很受欢迎。它在两个平台上的工作原理完全相同,使用户切换手持设备并仍然使用它变得非常容易。

现在,我们即将创建许多新的商业应用程序,并希望将其扩展到其他硬件/操作系统。在许多新平台上部署最少痛苦的建议是什么?

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2009-09-27 16:58:29

考虑通过网络实现您的应用程序。这违反了您对“避免用户连接到web”的偏好,但考虑到web的原因如下:

  1. 如果您的C#应用程序是以正确的方式编写的,则可以通过重用现有库向这些应用程序公开web前端。
  2. Web2.0几乎被所有的现代移动平台所支持。
  3. 您的开发人员可以继续用他们习惯的语言(C#)编写。
  4. 编写web应用程序与平台特定应用程序之间存在许多优点
票数 7
EN

Stack Overflow用户

发布于 2009-09-27 17:29:52

考虑一下Appcelerator钛公司、Rhomobile的Rhodes公司、PhoneGap公司、xmlvm.org公司或其他跨设备工具包。

票数 5
EN

Stack Overflow用户

发布于 2009-09-28 14:08:09

我假设您已经做了您的市场调查,实际上知道所有的平台都是有利可图的,而不仅仅是耗尽您为一两个平台开发的资源。

没有很好的答案,除非你打破“不连接到互联网”的规则。但是有一个很好的答案:普通的老C。

然后用普通的C语言实现所有的应用逻辑;

  • iPhone -Objective是C的一个严格的超集,所以只需按原样使用代码。并使用Cocoa在Objective中编写UI。
  • Android的Java有JNI来调用用C编写的本机代码,编写一个薄的胶水层,并为Android用普通的Java实现你的UI。
  • Windows您可以从任何.NET应用程序调用本机代码。因此,编写另一个粘合剂层,并使用C#或首选的.NET语言实现您的UI。
  • 使用C++的一个变体,所以就像在iPhone上一样,您可以按原样调用C代码。使用C++和Symbian :s编写UI。

如果您违反了“没有连接到internet”的规则,那么使用您现有的C#代码实现服务器并使用HessianC#将其作为web服务公开是一件轻而易举的事情。然后,Hessian实现可以用于您可以安装应用程序的每一部手机,该应用程序自2002年左右开始销售。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1483925

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档