{"repo":"gonglei007/GGFramework-GGNetwork","free":true,"listed":false,"github":"https://github.com/gonglei007/GGFramework-GGNetwork","clone":"git clone https://github.com/gonglei007/GGFramework-GGNetwork.git","description":"一个更适用于游戏客户端的网络框架，让游戏获得更好的网络稳定性和更好的网络交互体验。A game client network framework.","language":"C#","stars":17,"topics":["game-networking","network","http","httpdns","game-development","gamedev","besthttp","unity","socket","game"],"license":null,"category":"game-templates","readme_excerpt":"GGNetwork (内测版) 一个更适用于游戏客户端的网络框架 简介 它不是一个网络功能的底层实现，它封装了游戏客户端所需的一些网络特性，让游戏网络的稳定性和体验感更好。并且可以很方便地挂载第三方或者自定义的网络底层模块。 框架面向不同业务层级的功能划分： 游戏业务层 — 交给游戏业务开发环节处理 游戏网络层 — 框架提供异常检查与处理 网络通信层 — 框架提供异常检查与处理 目标 为游戏客户端提供： 更好的网络稳定性 更好的网络交互体验 功能与特性 网络交互体验 - 支持 UI 反馈回调挂载，接入简单，当网络连接、请求发生异常或等待时，获得更好的交互体验 - 支持多线程请求，避免网络卡顿对 UI 产生影响 - 支持请求异常响应，例如失败后自动重试、手动重试、忽略等 - 支持断线重连，包括自动重连、手动重连 网络质量保障 - 支持 HttpDNS，避免玩家端的 DNS 劫持 - 支持网络异常上报，让开发者了解分布各地的玩家的网络状况 第三方支持 - 支持 HTTP/HTTPS 连接 （已实现）：预置 Best HTTP (Pro) 作为底层；也可挂载自定义或其它第三方 HTTP 模块 - 支持 Socket / 长连接 （已实现，内测）：预置基于 WebSocket + Pomelo 协议的 PomeloClient ；也可挂载自定义或其它第三方长连接模块 - 支持 HttpDNS Provider 插拔 ：预置橙域实现，工厂预留腾讯、阿里 可插拔设计 ：框架通过 IHTTPFactory （HTTP 底层）、 BaseNetworkClient （长连接底层）、 UIAdaptor / LogAdaptor （UI 与上报解耦）、 HTTPDNSFactory （域名解析）等抽象接口，将各类底层实现与业务解耦，可自由替换或挂载第三方实现。 工程内容 目录 内容 说明 GGNetwork/Assets/Scripts/GGNetwork 框架代码 可以直接复制到目标工程中使用。 GGNetwork/Assets/Demo 演示工程 可以作为框架使用的参考。 核心模块 模块 说明 ---- ---- GameNetworkSystem 系统总入口，按固定顺序完成整体初始化编排 HttpNetworkSystem HTTP 层总入口： Post/Get 请求、异常处理策略、参数签名、多线程、结果统一分发 NetworkSystem 长连接总入口：客户端连接管理（默认 game / notify 两条）、请求发送、轮询刷新 DownloadSystem 文件下载管理：流式下载、进度回调、失败自动重试 HTTPDNSSystem 域名解析：本地缓存、TTL 定时刷新、按 IP 替换 host ServiceCenter 网络服务中心：连接/请求超时参数、服务域名动态刷新 文档 如何快速接入? 技术手册 参考文档(TODO) 进群沟通 --- -------- -------- QQ群: 242500383 应用案例 当前版本的 GGNetwork 适用于实时性要求不高的 SLG、休闲等类型的游戏。虽然是内测版本，但已经在商业项目中应用。 --- ---- 小小三国2 一款已经运营了 8 年的 SLG 手游。 游戏化心理评测系统 上海某知名高校的游戏化心理评测项目。 依赖 Best HTTP (Pro) — 预置 HTTP 底层实现（位于 Assets/LocalPackages ） PomeloClient / UnityWebSocket — 预置长","default_branch":null,"files":null,"tree":[],"storefront":"/r/gonglei007","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/gonglei007/GGFramework-GGNetwork/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}