0

我正在用 cocos2d-x 开发一个游戏,因为它对我来说似乎是最好的选择。虽然我处于开发的早期阶段,但我正在做一些研究并正在考虑使用 Revmob 广告网络。我没有在任何地方找到任何帮助,在 cocos2d-x 论坛上询问但没有得到任何回应。有没有人在他们的应用程序或 cocos2d-x 游戏中实现了 revmob?

http://sdk.revmob.com/ 到他们的 sdk 的快速链接。

他们支持 iphone、android 但我不知道我是否可以让它们与 cocos2d-x 或 android NDK 一起工作。任何帮助将不胜感激。

非常感谢您阅读它。

4

2 回答 2

1

RevMob 现在有一个 Cocos2d-x 的 SDK:http ://sdk.revmob.com/cocos2dx.html

于 2013-01-04T13:40:18.890 回答
1

几乎所有的广告库提供商都只提供原生代码(Android/iOS)。要在 Cocos2dX 中执行此操作,您需要在 Revmob API 的顶部编写一个 C++ Wrapper。

有人为 Flurry 做过这件事,这会给你一些提示如何做到这一点

https://github.com/diwu/AnalyticX

还有一个人写了完整的故事,他是如何完成这种事情的。见下文

http://blog.molioapp.com/2011/11/openfeint-and-admob-integrated-with.html

只是为了让你往下走是你至少需要知道/做的事情。简而言之,请委托代表来回电。为 ObjectiveC 和 Java 制作一个单一的@interface。但是对于 java,您还需要创建一个 JNI 类。请注意,我之所以写 Singleton,是因为在 90% 的情况下,我们只需要显示 1 个广告,并且它位于屏幕顶部。

如果您从头开始,请参阅以下课程。因为我知道 Objective-C,所以我只会打电话给这部分。有关详细信息,您可以探索上述线程。

  1. ReveMobCWrapperDelegate.h 制作纯虚方法,即

    virtual void didAddSuccss() = 0;
    virtual void didAddFailed() = 0;
    
  2. RevMobCWrapper.h 使其可在 Android/iOS 上使用。在最好的情况下,它应该是适用于 iOS 和 Android 的单个文件。例如考虑方法void showAdd(ccPoint pos);

  3. RevmobCBinding.h 将是 Objective C 的@interface,但是它将包含 (1) RevMobCWrapperDelegate.h 的委托变量,以便在收到 Add 后抛出回调。为方便起见,使其成为单例。请注意,此实现将是 C 和 Objective C 的混合,并且将使用 Revmob API 的方法,还要小心提供 C++ 和 Objective C 实现,您需要将此扩展名为“.mm”,如 RevmobCBiniding.mm。

  4. 要编写 RevMobCWrapper 的实现,您可以使用 RevmobCBinding.mm 或创建一个新文件 RevMobCWrapper.mm

于 2013-03-16T22:02:58.740 回答