阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

磊友创始人赵霏谈 HTML5 手游上线 iOS 经验

  • 2013-03-30
  • 本文字数:2297 字

    阅读完需:约 8 分钟

HTML5 在游戏行业逐渐得到认可和普及,磊友创始人赵霏最近在知乎社区上分享了 HTML5 手游“猎魔佣兵”上线 iOS 的经验,包括 HTML5 技术开发手机游戏的优点、AppStore 对游戏定价的限制条件和相应的解决办法、原生界面和 Web 界面的协调等等,对准备尝试 iOS 游戏的开发者和创业者来说都是不错的参考。

赵霏详细描述了猎魔佣兵上线的曲折过程,起初项目组“并没有把这个事情看的很难,因为我们的 HTML5 游戏引擎完全是自主研发的,而内核采用的是 Canvas 和 Dom 混合模式。我们预先设定的方案也是直接在苹果平台上用 Xcode 进行打包,把自己的 Javascript 脚本、美术资源和 webview 组件封装在一起。经过测试发现本地加载读取是可行的,于是安装包分分钟就做好了。”但是,后来经历了多次审核失败、修改和重新提交,笔者将其概括为几条:

  1. 游戏中出现了内测相关的邮件,AppStore 会以为你对用户不负责,拿用户来测试你的产品。经验:不论是游戏内部还是游戏描述,一定不要出现“内测”相关的东西。
  2. 游戏定价问题。AppStore 上网游的内置付费的道具的标价很重要,单价千万不要超过 99 美金。“我们的某个道具单价为 648 元人民币,完全超过 99 美金。”,接下来,道具一次性售出的总价也不能超过 99 美金。“我们将道具单价改为 68 元,但是我们允许用户一次性购买 10 份,那总价就是 680 元,结果又毫无压力超出 99 美金。”所以,要限制道具购买数量。
  3. 磊友请来了有过审核斗争经验的专家,提供了建议:关键字的选择不要涉及版权,尽量多的把文字写在游戏截图上,图标设计的需要把握的尺度,不要贪心一次提交很多版本,同时也给了第一次接到 AppStore 审核的拒绝结果后两个小时应该有的反馈。”
  4. AppStore 认为“游戏是基于 web 的游戏,建议我们提交给流量几乎为零的 WebAppStore,宛如一桶凉水泼下来,从头到脚,这基本宣判了我们产品的死刑”。解决办法:我们又找到了 AppStore 上有一部分跟我们类似的原生与网页混合打包产品,分析后得出的结论是,无论从画面,还是用户操作,投入一些细节的设计和修改,我们是可以把 Webapp 产品做到原生的体验,同时也抛弃了之前图快图省事的想法。一方面我们也觉得是否在于之前被打回来的次数过多,所以苹果加强了对我们这款游戏的审核力度,导致最后杯具的结局。通过分析出这些原因,也就详细的拟定了修改的方案,安排技术人员又重新开始了我们的苹果之旅。这一次我们大大增加了原生代码的数量,将游戏的登录注册选服加载客服等等界面都用原生代码完成,适当的增加了动画特效,进入游戏后,我们替换了底栏菜单和聊天部分,同时加入了游戏的背景音乐。新完成的安装包,基本可以说原生代码和网页脚本比例达到了 3:7 的程度。最后我们重新注册了苹果账号,换了个马甲,继续提交。

经历了多次修改最终成功之后,赵霏总结了几条 HTML5 手游上线 iOS 的经验:

  • 苹果的审核确实非常尽职尽责,每一个可能的细节都不会放过。但感觉单机游戏如果只是下载收费要比有内置计费的网游容易通过的多,所以网游的设计和开发者一定要在计费接口部分多下功夫,一定要严格遵守苹果的规范。
  • 在提交时候,不要贪心同时提交 iPhone 和 iPad 两个版本,我们因为《猎魔佣兵》是 HTML5 技术可以自动适配屏幕分辨率于是全机型打钩提交上去,结果被苹果打回来的时候告知完全没区别……
  • HTML5 的游戏开发应该尽量使用 Canvas 来渲染画面,而 Dom 可以用在菜单和一些文字输入类控件即可。原生代码则主要用来制作框架容器和部分菜单,并且完成游戏进入前的界面和各种动画特效,声音声效的播放以及对话框和聊天部分。所有游戏第一次进入用到的图像和声音等资源打包为 bundle 模式,全部放在本地,更多的地图,副本的图像声音资源可以考虑分阶段下载。最后我们完成的安装包大小为 33M,便于下载安装。一句话,多加一些 Native 的代码让你的 HTML5 游戏产品制作的更加接近原生体验吧!
  • 苹果对于 Web App 的顾虑可能会在外链\第三方计费控制等问题吧,所以我建议这方面还是老实一点,不耍小聪明,万一上了线乱搞也有可能会被苹果踢下来。因此我们也会继续踏踏实实的做好游戏产品,遵守苹果的规范,认真服务于玩家。
  • 在游戏的打包中我们也可以通过原生代码不但增加了一键登录同时也把第三方统计平台加入进来,比如友盟、appcpa 等等。

读者可以会有疑问:既然 HTML5 打包 iOS 版本存在诸多问题,为何不干脆用原生开发呢?赵霏给出了选用 HTML5 技术开发手机游戏的理由:

  • 用 HTML5 开发手机应用和游戏的效率会稍高一些,成本也会略有降低。这主要体现在各种智能手机终端的移植上,我们前端都是 Javascript 工程师,而打包移植的工作有 1 个人就可以快速搞定。不需要同时维护若干个团队和若干个版本。
  • 游戏升级版本更新会更方便,只要不涉及原生代码的改动,我们都可以在后台安排脚本更新即可,无需用户再去下载安装覆盖等麻烦,也减少了因此而带来的用户流失。
  • 用 HTML5 开发的网页游戏跨平台的能力较强,可以运行在 PC、平板、手机等所有支持 HTML5 的浏览器内,这样可以让玩家无论是在电脑还是手机都可以跨平台体验游戏的乐趣,从后台数据看,大部分用户是愿意接受在不同的时段使用不同设备、电脑和手机来体验我们的游戏。
  • 手机应用和游戏相对来讲会比较安全,由于浏览器的限制,我们是无法读取用户的隐私信息或设置暗扣陷阱。
  • 虽然 HTML5 页游有以上的好处,但目前 HTML5 游戏的市场环境还并不成熟,很多用户还是比较习惯安装 App 来玩游戏的习惯,所以我们也采用同时推安装包和链接两种方式来尽可能的覆盖我们的用户群,因此 Web App 的推广方式还是非常灵活的。

如果想详细了解有关的细节,读者可以查看这里,也欢迎大家发表自己的看法,分享自己的心得。

2013-03-30 00:364661
用户头像

发布了 501 篇内容, 共 248.1 次阅读, 收获喜欢 57 次。

关注

评论

发布
暂无评论
发现更多内容

【LeetCode】三数之和Java题解

Albert

算法 LeetCode 8月日更

java学习-数据类型和运算符,Java社招面经分享

Java 程序员 面试 后端

Java已死,有事烧纸,字节跳动历年校招Java面试真题解析

Java 程序员 面试 后端

Druid 集群方式部署 —— 选择硬件

HoneyMoose

【Flutter 专题】76 图解基本 TabBar 标签导航栏 (二)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 8月日更

十大排序算法--快速排序

Ayue、

排序算法 8月日更

Swift 实现获取、展示 Mac 的 WiFi 密码

fuyoufang

ios swift SwiftUI Mac 软件 8月日更

JAVA学习(3,黑马Java全套百度云

Java 程序员 面试 后端

10 分钟从 HTTP 切换到 HTTPS,保证个人博客安全性!

沉默王二

个人博客

oeasy教您玩转vim - 4 - # 深入帮助

o

增强自动化测试的8大技巧

禅道项目管理

测试 自动化测试

思想的懒惰

箭上有毒

8月日更

Druid 集群方式部署 —— 从独立服务器部署上合并到集群的硬件配置

HoneyMoose

手撸二叉树之路径总和

HelloWorld杰少

数据结构与算法 8月日更

oeasy教您玩转vim - 6 - # 保存修改

o

Java反射机制的那些事儿,Java基础必背知识点

Java 程序员 面试 后端

Java并发编程(实战(1),真香警告

Java 程序员 面试 后端

Druid 集群方式部署 —— 操作系统和发行版本

HoneyMoose

Java内联函数,SpringBoot集成Redis集群

Java 程序员 面试 后端

kubernetes入门:使用kubeadm搭建node,楼主亲测

小鲍侃java

8月日更

oeasy教您玩转vim - 5 - # 插入模式

o

Vue进阶(十):NPM 管理 node.js 依赖

No Silver Bullet

Vue npm nodejs 8月日更

Java多态实现原理,分布式系统中ACID和CAP有什么区别

Java 程序员 面试 后端

Java多线程入门篇,GitHub标星1w的Java架构师必备技能

Java 程序员 面试 后端

Java学习路线图(如何快速学Java,Java算法题面试

Java 程序员 面试 后端

Fil值得投资吗?Ipfs未来价值一万一枚?

区块链 分布式存储 IPFS fil

netty系列之:netty中的Channel详解

程序那些事

Java Netty nio channel 程序那些事

让数据库从业者用实力对美国说不!

博文视点Broadview

DAPP智能合约系统源码开发

获客I3O6O643Z97

智能合约 DAPP智能合约交易系统开发

elaticsearch kibana介绍与安装

Rubble

Go与Redis连接池的那些事儿~

Regan Yue

redis Go 语言 8月日更

磊友创始人赵霏谈HTML5手游上线iOS经验_HTML5_崔康_InfoQ精选文章