由光子工作室及 Krafton 联合研发的 PUBG MOBILE 依然保持着极高的人气,目前全球有 10 亿玩家,日活跃 5,000 万 (不包括中国大陆地区)。从游戏策划伊始,团队就打算为各个平台的玩家们打造功能完善的社区模块。

在 PUBG MOBILE 中,玩家们被空投到一个荒岛上,孤身奋战或与队友合作,努力与对手周旋,幸存到最后赢得胜利。想要在这个游戏里 "吃鸡",玩家的敏捷反应和大局意识都很重要——而对负责开发游戏内社区模块的团队来说,这两点正好也是他们成功的秘诀。

△ PUBG MOBILE 如何连接 10 亿玩家 | Flutter 开发者故事

全平台一盘棋,大局意识很重要

负责 PUBG MOBILE 游戏社区模块的团队规模并不是很大,但服务的玩家群体却十分庞大,这也让团队对任何能提高效率的开发技术都十分敏感。2020 年下半年,当团队着手为社区模块寻找解决方案时,就在着眼寻找合适的 跨平台解决方案: 他们需要让社区模块能很方便地覆盖 Android 和 iOS 平台。

我们测试的很多解决方案都存在这样那样的限制,但这些限制在 Flutter 中则不存在: 即便在引入了复杂的业务逻辑后,Flutter 的性能表现仍然十分优秀。

胡明春,PUBG MOBILE 开发团队高级工程师

△ Flutter 打造的社区模块一直能保持稳定的帧率

团队选择 Flutter 的另一个原因是它能很方便地 和现有的游戏进行整合。这也让社区模块在开发层面不至于和其他模块 "高度耦合",让团队能专注打造社区功能本身。

Flutter 可以很轻松地和现有的游戏进行整合,基本上照着官方文档操作就行,用不了多少时间。

张海鹏,PUBG MOBILE 开发团队高级工程师

大幅降低代码量,敏捷开发很重要

"一次编写,到处运行" 是 Flutter 跨平台特性带来的 "福利" 之一。除去一些平台特定的功能外,团队可以只用一个代码库就覆盖 Android 和 iOS 两个平台。这样做的另一个好处是能确保平台之间功能的一致性,在高强度迭代时这个好处更是非常重要。

自从采用 Flutter 后,我们发现可以将前端所需的开发工作量减少 80%

程建,PUBG MOBILE 开发团队高级工程师

△ 一次编写,到处运行

如果正在阅读本文的读者还没有体验过 Flutter 带来的这些优势,那也许还会心存顾虑: Flutter 好学吗?

正好我们也能从团队的反馈中找到答案:

我们在 Java、Kotlin 和 Objective-C 方面有着坚实的基础,这让 Dart 语言的学习成本很低。

张海鹏,PUBG MOBILE 开发团队高级工程师

用跨平台连接更多玩家

游戏中的社区模块一直很受用户欢迎。统计数据表明,每月有近千万玩家使用社区模块在游戏中分享屏幕录像等内容。

汪增灏,PUBG MOBILE 开发团队高级产品经理

△ PUBG MOBILE 丰富的社区功能由 Flutter 打造

展示战利品、时装、精彩录屏……玩家们一次次精彩的对抗,也是一段段难忘的时光。社区功能的存在,是让这些时光得以留存,让玩家们彼此相连,让快乐从一个人传递给更多的人。

节省代码、平台统一、性能优秀、易于上手,则是 Flutter 带给开发者们的快乐。跨平台的游戏社区体验,毫无疑问是 PUBG MOBILE 游戏在成功路上的重要一环。

"用上 Flutter,今晚吃鸡!"

借助 Flutter 跨平台特性连接 10 亿玩家 | Flutter 开发者故事的更多相关文章

  1. 转载:四两拨千斤:借助Spark GraphX将QQ千亿关系链计算提速20倍

    四两拨千斤:借助Spark GraphX将QQ千亿关系链计算提速20倍 时间 2016-07-22 16:57:00 炼数成金 相似文章 (5) 原文  http://www.dataguru.cn/ ...

  2. 转 DataTorrent 1.0每秒处理超过10亿个实时事件

    DataTorrent是一个实时的流式处理和分析平台,它每秒可以处理超过10亿个实时事件. 与Twitter平均每秒大约6000条微博相比,最近发布的DataTorrent 1.0似乎已经超出了需求, ...

  3. 看好腾讯,鄙视百度(腾讯的核心竞争力,不是超过10亿的QQ的注册用户,也不是某一项产品、技术方面优势,而是“耐心”:懂得在合适的时间推出合适的产品。”)

    百度,自始至终只是一个低劣的模仿者,且一切向前看,完全违背了一个搜索引擎所应该遵循的基本原则.谁给的钱多就能搜着谁,这跟贩毒有什么区别? 腾讯也在模仿别人,但是,它是模仿然后超越.在中国互联网发展历史 ...

  4. 【转帖】影响超 10 亿设备,博通和 Cypress 芯片曝惊天漏洞,苹果、华为、三星等中招

    影响超 10 亿设备,博通和 Cypress 芯片曝惊天漏洞,苹果.华为.三星等中招   https://www.infoq.cn/article/lpNEQGrxZL22gHDPBE2z   26 ...

  5. 这么设计,Redis 10亿数据量只需要100MB内存

    本文主要和大家分享一下redis的高级特性:bit位操作. 本文redis试验代码基于如下环境: 操作系统:Mac OS 64位 版本:Redis 5.0.7 64 bit 运行模式:standalo ...

  6. 使用HAProxy、PHP、Redis和MySQL支撑每周10亿请求

    在公司的发展中,保证服务器的可扩展性对于扩大企业的市场需要具有重要作用,因此,这对架构师提出了一定的要求.Octivi联合创始人兼软件架构师Antoni Orfin将向你介绍一个非常简单的架构,使用H ...

  7. 转 使用HAProxy,PHPRedis,和MySQL支撑10亿请求每周架构细节

    [编者按]在公司的发展中,保证服务器的可扩展性对于扩大企业的市场需要具有重要作用,因此,这对架构师提出了一定的要求.Octivi联合创始人兼软件架构师Antoni Orfin将向你介绍一个非常简单的架 ...

  8. “军装照”背后——天天P图如何应对10亿流量的后台承载。

    WeTest 导读 天天P图"军装照"活动交出了一份10亿浏览量的答卷,一时间刷屏朋友圈,看到这幕,是不是特别想复制一个如此成功的H5?不过本文不教你如何做一个爆款H5,而是介绍天 ...

  9. 海量数据处理 - 10亿个数中找出最大的10000个数(top K问题)

    前两天面试3面学长问我的这个问题(想说TEG的3个面试学长都是好和蔼,希望能完成最后一面,各方面原因造成我无比想去鹅场的心已经按捺不住了),这个问题还是建立最小堆比较好一些. 先拿10000个数建堆, ...

  10. 安装win10操作系统的设备将要突破10亿台

    导读 该公司最初的目标是在发布后的三年内在 10 亿台设备上运行 Windows 10. 据微软高管梅赫迪 (Yusuf Mehdi) 周四在 Twitter 上透露,目前已经有 8 亿多台设备安装了 ...

随机推荐

  1. vscode代码部署

    前言 在本地环境中开发代码时,经常需要将代码上传到服务器环境中,在环境中构建并调试程序.如果手动使用scp.ftp等文件传输程序将代码上传至环境,一次两次还好,反复多次操作则有些繁琐. 为了方便进行本 ...

  2. C#文件路径

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Run ...

  3. UBOOT编译--- UBOOT的顶层config.mk(五)

    1. 前言 UBOOT版本:uboot2018.03,开发板myimx8mmek240. 2. 概述 此文件包含在 ./Makefile 和 spl/Makefile 中. 清理状态以避免添加两次相同 ...

  4. VS2019 iis无法在Web服务器上启动调试。打开的URL的IIS辅助进程当前没有运行

    可以检查W3SVC服务与WAS这两个服务是否正在运行. 重启这两个服务就可以正常了

  5. (Java)设计模式:行为型

    前言 此篇博文内容续接的是 UML建模语言.设计原则.创建型设计模式 的内容,有兴趣的可以点前面的链接去看一下 3.2.行为型 这类设计模式是专门用于:对象间的高效沟通和职责委派 * 3.2.1.责任 ...

  6. 【Java并发入门】03 互斥锁(上):解决原子性问题

    原子性问题的源头是线程切换 Q:如果禁用 CPU 线程切换是不是就解决这个问题了? A:单核 CPU 可行,但到了多核 CPU 的时候,有可能是不同的核在处理同一个变量,即便不切换线程,也有问题. 所 ...

  7. 万字干货|Synchronized关键字详解

    作者:小牛呼噜噜 | https://xiaoniuhululu.com 计算机内功.JAVA底层.面试.职业成长相关资料等更多精彩文章在公众号「小牛呼噜噜」 前言 大家好,我是呼噜噜,在之前的文章中 ...

  8. SpringBoot向Excel模板中写入数据并下载 (无需获取file对象及模板绝对路径)

    之前用获取模板路径的方式测试没问题打包后就有问题了 莫名出现一个! 找了很多教程尝试无果 最终使用下面这个方式 无需获取file对象以及模板路径的方式进行写入下载 (那个设置浏览器编码没有测试不知道能 ...

  9. linux安装Erlang和Rabbitmq以及安装问题解决

    安装环境: Alibaba Cloud Linux 安装erlang命令: rpm --import https://packages.erlang-solutions.com/rpm/erlang_ ...

  10. python-docx操作word文档详解

    案例 官网地址: https://python-docx.readthedocs.io/en/latest/ pip install python-docx from docx import Docu ...