android - 跨 native iOS、Android 和 Windows Phone 应用程序的通用代码库

标签 android ios windows-phone

是否可以将业务规则(无表示层)封装到通用代码库中以供 native iOS、Android 和 Windows Phone 应用程序使用?换句话说,如果我正在编写一个要在所有移动平台上开发的游戏,我是否可以用 C 或 C++ 编写一个库来处理所有游戏规则(例如,这是一个有效的移动)并让所有平台使用这个库(编译 native 在每个客户端上)。请注意,这不适用于任何 UI/演示代码。而且我对使用任何跨平台开发工具(PhoneGap 等)都不感兴趣。

我的问题是,a) 这可能吗,b) 这可以用什么语言来完成,c) 这是个好主意吗?虽然它会预先为每个客户端增加一些复杂性,但我认为它会随着时间的推移大大减少要编写的代码量(更少的错误)和维护。

最佳答案

我能找到的两个答案是 C++ 和 JavaScript 作为所有三个平台都能理解的语言。

C++:

JavaScript:

  • 所有支持都通过他们的浏览器小部件 (WebView),尽管我只是出于完整性列出了这一点。

我个人没有尝试在我的应用程序中包含 C++ 文件,所以我的情况各不相同,但功能似乎是存在的。不过,这似乎不是个坏主意。从表面上看,处理业务逻辑的库似乎在任何平台上都不会有太多麻烦,而且您可以确定所有平台始终保持同步。我要提防的一件事是性能;如果您设置不当,Android 和 Windows Phone 似乎可能运行缓慢。

关于android - 跨 native iOS、Android 和 Windows Phone 应用程序的通用代码库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20753739/

相关文章:

java - 尝试在空对象引用上调用接口(interface)方法

android - 在 ListView 中实现以下弹出菜单的想法

c# - 多次触发事件 TextChanged

html - 防止 Internet Explorer 10 移动版创建电话和地址链接

android - 通过xml设置drawable的alpha

java - 将电话号码或 CONTACT_ID 从 Android 联系方式传递到 Activity (类似 Whatsapp)

ios - 什么时候为嵌入式 viewController 调用 prepareForSegue?

ios - 是否可以添加具有自定义颜色的 MGLPointAnnotation?

ios - Swift- EXC_CRASH (SIGABRT) 如何使用此堆栈跟踪查找异常

windows-phone-8 - Windows Mobile "Scan the app for malware"