如何整合InApp购买&适用于iOS的原生SDK与Haxe

时间:2013-09-20 16:19:58

标签: ios xcode haxe nme openfl

我正在尝试集成InApp购买&我们的出版商提供的原生SDK,用于Haxe& amp; NME。我还在使用NME 3.5.5& hxcpp 2.10。

我尝试使用Native Extension,如下所述:http://www.openfl.org/developer/forums/programming-haxe/connecting-objective-c-haxe-ios-help/ 在这里:https://github.com/ericamccowan/Haxe_Extension_Test

我首先在Windows上测试它,在cpp中做简单的事情,我没有问题传递和接收数据。

我切换到了mac,并试图为iOS做同样的事情,但我甚至无法正确启动游戏。我使用适当的命令编译了扩展,然后包含生成到xcode项目中的“.a”。但是当我试图通过xcode在ipad上运行游戏时,像往常一样,我得到了这个:

http://gyazo.com/45423d8cebb4961fb8c9412cf1e4e678.png

这里看一下项目的样子

http://gyazo.com/ff6352a2bb7b2034c933b8305b711c48.png

由于问题已在Main.mm中的“iOS_Native_register_prims()”上进行了本地化,我认为这是xcode的问题,也不是识别原生扩展?我尝试将iOS_Native.mm添加到项目中,但之后它抛出了一个错误,因为他无法包含hxcpp.h

我意识到我对这一切并不是很清楚,但那是因为我不太明白这应该如何运作......有没有人尝试过类似的东西?

Thansk提前帮助你!

1 个答案:

答案 0 :(得分:0)

听起来你错过了对函数iOS_Native_register_prims的引用。函数声明除了返回0之外不必执行任何操作,但也可用于初始化扩展的部分内容。

extern "C" int iOS_Native_register_prims () { return 0; }

函数名称应与项目名称匹配,因此如果您要创建GameCenter扩展名,则将其命名为GameCenter_register_prims