使用Marmalade(C++)开发移动应用程序
Mobile App development with Marmalade (C++)
我对开发移动应用程序很感兴趣,很可能是为Android开发的。问题是,我在C++方面有相当多的经验,但在Java或Objective-C方面没有。我正在考虑使用Marmalade SDK来帮助我在C++中开发应用程序。我的问题是,你能和马拉美德走多远?一个应用程序可以在只使用Marmalade后发布到Google Play商店吗?还是我必须使用Eclipse(以及Java)之类的东西才能使其成为可用的Android应用程序?我想尽可能多地使用C++。Marmalade就是这么做的,允许你用C++编写一个从开始到结束的应用程序吗?我看到的许多其他帖子都没有太大帮助。
谢谢!
应用程序仅在使用后是否可以发布到Google Play商店Marmalade,或者我将不得不使用类似Eclipse的东西(因此Java)使其成为可用的Android应用程序?
您需要经过几个步骤来设置google play开发者帐户(等等),一些打包/提交工具需要Java安装,但基本上您不需要其他任何东西。Marmalade SDK非常友好地指导您完成所有需要完成的外部步骤,并提供了一个有用的依赖性检查工具,该工具"告诉"您要访问的链接和要安装的东西。
Marmalade就是这么做的,允许你用C++编写一个从开始到结束的应用程序吗?
是的。
我的问题是,你能和Marmalade走多远?
几周前我发现了Marmalade,并有与您类似的要求。显然,任何新的中间件都有一个学习曲线,但到目前为止,我对它非常满意。
我同意Houssni的评论。根据我的经验,Marmalade基本上只是游戏。如果你试图用它创建非游戏应用程序,你会遇到很多麻烦。第一个问题是,您将无法直接在Marmalade的C++代码中访问许多Native功能。FOr,您必须使用Marmalade的EDK编写自己的扩展/插件,该EDK必须用Java/Objective C进行编码。因此,最终您必须使用Java。对于EDK来说,仅仅使用Java是不够的,您需要使用对C++的JNI调用来访问Java方法。你可以想象你会遇到的麻烦。
理论上,你可以完全用C++编写一个应用程序,但实际上这是不可能的,除非你正在制作一个游戏,并且不需要任何原生功能(广告、推送通知、第三方SDK等)。除了原生功能之外,在Marmalade中创建UI是一件痛苦的事情,Marmalade几年前就停止了对UI创建者的支持。它的原生UI api无法正常工作。
所以最后,如果这是一款游戏,那就选择橘子酱吧,如果你不知道该怎么办。另一种选择是安卓NDK,它允许使用JNI用C++编写应用程序。
现在要回答您的其他问题,您仍然需要Android SDK在Marmalade中制作APK,并需要Android NDK来编译EDK扩展。
- 将对象移动到std::shared_ptr
- 何时在引用或唯一指针上使用移动语义
- 如何从具有移动语义的类对象中生成共享指针
- 将shared_ptr移动到<StructA>shared_ptr<变体<结构A、结构 B>>
- C / C++ 移位/偏移/向左或向右移动位图?
- MSVC将仅移动结构参数解释为指针
- 自定义先决条件对移动分配运算符有效吗
- 返回值优化:显式移动还是隐式
- 当有分配器意识的容器被复制/移动时,反弹分配器是否被复制/移走
- 为什么复制而不是移动数据元素?
- 如何用RISC-V GD32VF103CBT6开发板卸载精确的ADC过采样
- 可以使用移动语义更改或改进此C++代码吗?
- 使lambda不可复制/不可移动
- 如何使用 GPS 和指南针开发点移动算法
- 如何在Unreal Engine 4移动游戏开发C 中接受接触式拖盘活动
- 使用Marmalade(C++)开发移动应用程序
- 我目前正在使用C++生成器 6 XE4 来开发财务图表.移动到图表画布上的某个位置时出现异常
- 是否可以使用代码::块作为移动应用程序开发的IDE
- 用于移动应用开发的c++跨平台框架
- 使用HTML5和c++的移动开发工具