Android 跨手机选项

Android 跨手机选项,android,c++,ios,mobile,code-generation,Android,C++,Ios,Mobile,Code Generation,我创建了一个Android应用程序。虽然创建一个特定的应用程序是一个有趣的挑战,但我现在正在考虑创建一组类似的应用程序 我想创建一组类似的Android应用程序,然后在平板电脑和iOS上创建相同的应用程序。。。任何可以移动的东西 我曾经考虑过用一款叫做PhoneGap的产品或者一款基于网络的移动应用程序来实现这一点。这两种选择似乎都不太理想。在开发Android应用程序时,我一直对Java缺乏控制和低级构造感到沮丧。转向基于web的应用程序似乎是完全错误的方向 C++是我的首选语言。它能够在较低

我创建了一个Android应用程序。虽然创建一个特定的应用程序是一个有趣的挑战,但我现在正在考虑创建一组类似的应用程序

我想创建一组类似的Android应用程序,然后在平板电脑和iOS上创建相同的应用程序。。。任何可以移动的东西

我曾经考虑过用一款叫做PhoneGap的产品或者一款基于网络的移动应用程序来实现这一点。这两种选择似乎都不太理想。在开发Android应用程序时,我一直对Java缺乏控制和低级构造感到沮丧。转向基于web的应用程序似乎是完全错误的方向

C++是我的首选语言。它能够在较低的级别上工作,跨平台高度可移植,并对通用编码提供了重要支持,这对于生成一组类似的应用程序非常有用。但是,Android文档建议不要使用C++,除非你的目标是移植现有代码或处理计算繁重的任务。p> <>我倾向于使用C++,但是还有其他的选择我没有考虑过吗?

谢谢

< P>谷歌认为,不使用C++的建议是基于以下内容的,我相信。C++是低级别的,所以如果你知道你在做什么,你可以从中获得额外的性能。谷歌做出了一个合理的假设,许多程序员并不这么认为。一个没有经验的程序员在C++中做坏事,然后得到性能提升是比较容易的。p> 但是,如果你知道你在做什么,它可以帮助你。IOS和Android上的UI元素分别以其主要语言Obj-C和Java实现,因此没有一个很好的方法,但是你可以在C++中编写核心逻辑和其他功能,并且在它们之间是可移植的。IOS可以直接使用C++,Android可以通过原生开发工具包使用java。 还有一些其他的选择。我最后用的是,但请远离它。如果你的项目变得复杂或庞大,你会恨自己选择它,就像我做的那样。另一个有趣的是使用C++代替JavaScript。不过我还没用过,所以我不能对此发表评论


我听说的一个非免费解决方案是,他们使用Mono将两个环境都移植到了C和.NET。不过,根据我所知,你仍然必须为UI编写代码的两个版本。

< P>理论上,你可以在C++中编写逻辑,然后在上面使用UI层。如果你真的很喜欢C++,那就可以了。

网络、UI、动画等几乎所有其他部分最好使用平台的本地语言完成。跨平台解决方案的使用总是在某种程度上限制了您,并且通常会导致应用程序不如任何平台的应用程序好