有没有一种使用Visual Studio和C#编写iPhone和Android应用程序的方法?

4
有没有一种方法可以使用Visual Studio和C#编写iPhone和Android应用程序?如果我制作了一个手机应用,是否可以轻松地在Android、iPhone和Windows上编写,而不必使用3种不同的语言来编写?

facepalm 是啊,你可能可以这样做。但那会是自取灭亡。我敢打赌,如果你真的想的话,你可以用Objective-C编写Windows应用程序...祝你好运。 - Aurum Aquila
如果你找到了你要找的东西,你最终将学会所有与目标系统架构相关的知识。 - Waqas Raja
5个回答

3

xamarine是另一种方法。您可以创建Android和iPhone / iPad应用程序。


2

MonoTouch

MonoTouch是一款开发工具,允许开发人员创建基于C#和.NET的应用程序,在苹果的iPhone、iPad和iPod Touch设备上运行。

MonoDroid

MonoDroid是一个开发堆栈,使用C#和核心.NET API来开发基于Android的应用程序。

XNATouch

MonoGame是XNA Framework的免费实现,适用于MonoTouch、MonoDroid和Mac OS X。


1
你可能应该指出MonoTouch需要Mac,MonoDroid目前还没有公开发布,而XNATouch只是一组用于MonoTouch的库... - apiguy

1

虽然Visual Studio非常适合Windows和Windows Phone开发,但它本身无法帮助您进行Android或iPhone开发。由于C#来自Microsoft,因此它在Windows上得到了良好的支持,并通过Mono等途径获得了较少的支持。话虽如此,C#和.NET是开放规范,因此有可能在非Microsoft产品(例如Android手机)上看到它们。

这意味着有机会使用已设计为多平台的引擎。如果您正在制作游戏,则可以使用Unity 3D等平台。Unity可以使用Visual Studio进行编程,并使用C#进行脚本编写。它也是个人编程免费的,但iPhone版本需要付费。

同样,在这些方面,Adobe制作了Adobe® Device Central CS5软件。它是用Actionscript编程的,而不是C#,但我认为它们是非常相似的编程方法。CS5可用于iPhone和Android。

Nokia的QT支持许多平台,包括Mac和Windows,Symbian和Linux。还有一个名为Necessitas的Android端口。然而,我想现在还没有iPhone的支持。

因此,主要考虑问题是您是否满意最终产品。您使用的编程语言或引擎对实现目标的成功程度有一定影响。

如果您正在制作游戏并已经了解C#,则可以考虑使用Unity,尽管需要学习一些知识。我知道一些游戏工作室正在使用Unity制作游戏。请查看AirAttack、Startrooper和Batching,以及该帖子中的游戏:http://forum.unity3d.com/threads/14591-Unity-iPhone-Apps-in-the-Store-List-Yours-Here/page39

提示:即使您在Windows计算机上编写Unity程序,最终要发布到iPhone上,您仍需要在Mac上安装iPhone SDK。因此从技术上讲,答案是肯定的,您可以使用Visual Studio和C#编写iPhone应用程序。但是,为了将它们放入商店并放入iPhone上,您需要在Visual Studio开发环境之外执行一些步骤。


我不确定我完全理解你关于Mono的说法。购买Mono会给我带来什么好处?它具体能给我什么?我认为UI不能使用xmal创建,这是正确的吗?没有直接像Windows一样在iPhone上开发应用程序的方式,对吗? - Nick LaMarca

1

只是为了增加列表:

UmbrellaSDK http://www.umbrellasdk.com

这是一个用于创建iPhone和Android便携应用的Web开发工具。由于应用程序可以在每个平台上作为本地应用程序打包,因此您可以将应用程序发布到App Store或Google Play。

DragonFireSDK http://www.dragonfiresdk.com

可以使用C/C++及Visual C++(甚至是Express版本)在Windows上进行iPhone开发。应用程序是完全原生的,并且在Mac服务器上编译,通过空中下载方式传递到您的设备。

干杯!


0

不幸的是,简短的答案是否定的。但是这里有一些资源可以帮助你:

MonoTouch

MonoTouch允许你使用C#构建iPhone应用程序。不幸的是它是收费的并且需要在Mac上运行。

PhoneGap

PhoneGap允许你使用HTML、CSS和JavaScript构建跨移动平台应用。而且它是免费的!没有VisualStudio支持。

Adobe Flash CS5

通过一些最新的插件,Adobe Flash现在可以构建和发布/打包Android和iPhone应用程序,以及桌面应用程序。


是的,MonoTouch不是免费的。别告诉他价格,否则他会开始开发WinPhone7应用程序。 - Aurum Aquila
@Aurum - 我不确定你想表达什么意思。你是在暗示开发Win Phone 7应用有问题,还是针对从事该工作的人有问题? - apiguy
@free-dom 不,完全不是。我写任何东西 - 我只是一个业余程序员。我的意思是说,如果他这么想用VS来为iPhone编写代码,那么他可能更喜欢使用他熟悉的工具。 - Aurum Aquila
@Aurum - 啊,是的。如果你已经有了Visual Studio,那可能是一个更好的起点。我认为各种平台的真正挑战不在于不同的编程语言,而是普遍存在的不同系统架构。 - apiguy
是的。但说真的,如果他非常熟悉C#并想用它进行iPhone开发,我有好消息——他只需要学习Xcode。C#和Obj-C基本上是一样的,除了协议。在学校假期里,我一个月就能够开始运行。你只需要坐下来去做。考虑Visual Studio或Code::Blocks/Qt/Eclipse只会浪费时间... - Aurum Aquila
我有一台Mac电脑。我已经在Xcode中创建了一些东西,但是控制器和布局应用程序的框架比为Windows Phone创建相同的应用程序需要更长时间。因此,如果我购买Mono Touch,我可以在Visual Studio中使用C#创建iPhone应用程序,没有问题,对吗? - Nick LaMarca

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接