在 Korok 游戏中集成广告(Android平台)

栏目: Android · 发布时间: 6年前

内容简介:这几天我们的新游戏上线了,说实话还是挺好玩的。首发的是MAC版本,这两天发布了Android版本,Android版本的盈利方式主要考虑就是广告。此处记录一下我们在集成广告时候的一些经验。我们的游戏引擎底层是基于 Gomobile 来打包的,但是 Gomobile 并没有提供任何方式来集成第三方的jar包,虽然可以通过 Go->Cgo-Java 的方式来调用java代码,但是却无法添加新的java代码,解决方案其实非常简单,直接新建一个 Android 工程,然后把打包后的以下是具体的实现细节:

这几天我们的新游戏上线了,说实话还是挺好玩的。首发的是MAC版本,这两天发布了Android版本,Android版本的盈利方式主要考虑就是广告。此处记录一下我们在集成广告时候的一些经验。

我们的游戏引擎底层是基于 Gomobile 来打包的,但是 Gomobile 并没有提供任何方式来集成第三方的jar包,虽然可以通过 Go->Cgo-Java 的方式来调用 java 代码,但是却无法添加新的java代码,解决方案其实非常简单,直接新建一个 Android 工程,然后把打包后的 .so 文件烤包到 jniLibs 目录,然后就可以直接运行这个 Android 工程了。

以下是具体的实现细节:

  1. 新建一个 Android 工程
  2. 复制 Gomobile 中的 GoNativeActivity.java 到新的工程
  3. 复制使用 Gomobile 打包的 .so 文件到 jni 目录
  4. 配置 AndroidManifest.xml 使用复制来的 Activity

编译运行,此时可以发现 Android 工程已经可以愉快的运行我们的 Go 项目了。至于 .so 文件怎么来的呢?可以使用 gobind 或者直接从 gomobile build 打包 .apk 文件中解压出来。

接下来就是添加广告,添加广告的过程和普通的 Android 工程添加广告没有任何区别。我们把广告添加在 GoNativeActivity.java 中,需要的注意的一点是,这个Activity继承自 NativeActivity 是没有View的层次结构的,一般的解决方法是使用一个 PopupWindow 来容载广告的View。

其实非常简单,在我们的实现中大概就是这样的几行代码:

// 装在广告View
popup = new PopupWindow(this);
popup.setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
// banner
AdView adView = new AdView(this);
popup.setContentView(adView);

// 在屏幕下方显示广告
popup.showAtLocation(getWindow().getDecorView(), Gravity.BOTTOM, 0, 0);

集成广告之后可以像正常的 Android 工程一样打包签名,在此不表。

其实这种做法也给我们之后做Android打包提供了一个思路,可以把工程分为 Android 部分和Golang 部分,使用脚本统一打包,这样无论对 java 或者 Go 的代码进行了修改都可以使用同一个打包脚本来执行,操作上可能会简单很多。

另外发几幅我们新游戏 —— **Shoot Stack **的截图(很漂亮):

在 Korok 游戏中集成广告(Android平台)

Shoot Stack

截图的分辨率有点降低,实际上高清版非常好的。由于国内的特殊原因上线不了国内市场,现在上线了 itch.io 你可以在这里下载到 MAC 版本: Shooting!Block by ntop 或者在 GooglePlay 下载 Android 版本: Android: Shoot Stack​play.google.com

在 Korok 游戏中集成广告(Android平台)

googleplay.jpeg

油管视频: https://youtu.be/MGd_QJ_nahU


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

学习bash

学习bash

Cameron Newham、Bill Rosenblatt / 徐炎、查石祥 / 机械工业出版社 / 2003-1-1 / 45.00

bash是自由软件基金会发布的“Bourne Again Shell”的缩写。它是流行的UNIX Bourne shell的免费可用替代产品,供全球Linux用户选用。《学习bash》正是bash的权威指南。 无论你是对bash的用户界面感兴趣,还是对其强大的编程能力感兴趣,你都会发现本书很有价值。它教授了如何使用bash的高级命令行特性,如命令历史、命令行编辑和命令完成。 本书还......一起来看看 《学习bash》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具