轻松接入
极速畅玩

为小游戏和 H5 提供高性能运行时, 满足多种使用场景。

已发布

Android · iOS · macOS · Linux · Windows · OpenHarmony

使用场景 →

bunnymark 同类负载 · 220 精灵 · 60 fps

峰值内存低 44.3–54.3%, CPU 中位数低 57.8–66.9%

同机基准数据 →

01使用场景

一个 Migo,多个场景

还有更多场景 · 邮件联系 → 12 小时内回复

02技术优势

为什么选 Migo

内存均值相对 WebView
−48.7%

3 款游戏,同机中位数对比

CPU 均值相对 WebView
−62.9%

3 款游戏,单核归一

下载成本单架构 AAR
+16 MB

装机 38.9 MB;也可按需加载

横断面同样可审计:API 面共 369 个已发布接口;一致性套件 80 条共用断言在 Linux 参考实现、模拟器与真机三端逐条全过。

Runtime boundary
版本由宿主决定

游戏跑在 Migo 里,账号、支付、发布仍在宿主手里。

MIGO RUNTIME

Rust 原生内核

自带 V8 · 单 crate 多端构建369 个已发布接口
多引擎导出即载入Cocos · Unity WebGL
Laya · Egret
Web API adapter · 浏览器产物
微信包零改动wx.* 与 migo.* 同一函数引用
WebAssembly 直跑 · 分包与预取首包瘦身 · 按需加载 · DNS 预取
宿主掌握生命周期 · 业务服务 · 发布控制
窗口 · 账号 · 支付 · 广告 · 版本 · sha256 · 灰度 / 回滚
全平台覆盖 · 6 端已嵌入AndroidiOSmacOSLinuxWindowsOpenHarmony
03接入示例

6 个原生宿主 · 9 组商业化回调

// MigoGameView.java 文档用法
MigoGameView gameView = new MigoGameView(context);

RuntimeConfig config = new RuntimeConfig.Builder(context)
    .setImmersiveMode(false)   // 嵌入式视图通常为 false
    .setTargetFps(60)
    .setCodeCacheDir(cacheDir)
    // 适配层就是一段前置脚本,多次调用按顺序累加
    .addPreludeScript("<migo-web-adapter>", adapterSource)
    .build();

gameView.setConfig(config);
gameView.setGameListener(listener);
layout.addView(gameView);
gameView.loadGame("my-game", "game.js");

RuntimeConfig 另可钉住启动方向、日志级别、看门狗超时与代码签名校验。前置脚本名会出现在 V8 调用栈里,便于区分适配层报错与游戏报错。

// MigoGameView.swift — SwiftUI/UIKit 都行
import MigoRuntime

let config = RuntimeConfig()
    .immersive(false)
    .targetFps(60)
    .addPreludeScript("<migo-web-adapter>", adapterSource)

let gameView = MigoGameView(config: config)
gameView.gameListener = listener
parent.addSubview(gameView)
gameView.loadGame("my-game", entry: "game.js")

Swift Package / XCFramework 分一种, iOS 13+ 走 AAR 等价的 .framework. handler 同 Kotlin 那套协议.

// macOS — 同一份 Swift Package
import MigoRuntime

let config = RuntimeConfig()
    .windowed(width: 960, height: 640)
    .addPreludeScript("<migo-web-adapter>", adapterSource)

let gameView = MigoGameView(config: config)
window.contentView = gameView
gameView.loadGame("my-game", entry: "game.js")

macOS 12+ NSView 嵌入, 与 iOS 同 artifact, 来自同一份 Rust crate.

// Linux — GTK4 / wlroots 都行, 一个 .so 接入
#include <migo/runtime.h>

migo_config_t *cfg = migo_config_new();
migo_config_add_prelude(cfg, "<migo-web-adapter>", adapter_src, len);

migo_view_t *view = migo_view_new(cfg);
gtk_box_append(GTK_BOX(parent), migo_view_widget(view));
migo_view_load_game(view, "my-game", "game.js");

C ABI 直接可用, GTK4 widget 已封装. X11 / Wayland 都支持, EGL 渲染.

// Windows — Win32 / WinUI 都行 (C ABI)
#include <migo/runtime.h>

migo_config_t *cfg = migo_config_new();
migo_config_add_prelude(cfg, "<migo-web-adapter>", adapter_src, len);

migo_view_t *view = migo_view_new(cfg);
SetParent(migo_view_hwnd(view), parent_hwnd);
migo_view_load_game(view, "my-game", "game.js");

Windows 10+, MSVC 2019+, D3D11 渲染路径, 自动 fall back 到 WARP.

// OpenHarmony — ArkTS 侧
import { MigoGameView, RuntimeConfig } from '@migo/runtime';

const config = new RuntimeConfig()
    .addPreludeScript("<migo-web-adapter>", adapterSource);

MigoGameView({
  config: config,
  onReady: () => gameView.loadGame("my-game", "game.js")
})

OpenHarmony 4.0+, HAP 包集成, 一份 .so 同 ABI.

// 商业化与账号留在宿主:游戏只发起,宿主决定怎么实现
class Ads   implements AdHandler         { /* 接你自己的聚合 SDK */ }
class Auth  implements AuthHandler       { /* 接你自己的账号服务 */ }
class Pay   implements PaymentHandler    { /* 接你自己的支付通道 */ }
class Perms implements PermissionHandler { /* 你决定游戏能用什么 */ }
class Sink  implements AdEventSink       { /* 曝光 / 点击 / 完播回传 */ }

// 游戏里调 createRewardedVideoAd()  -> 走到 AdHandler
// 游戏里调 login()                  -> 走到 AuthHandler
// 游戏里调 requestMidasPayment()    -> 走到 PaymentHandler
// 一个都不接也能跑,只是这些调用会明确失败

运行时不内置任何广告网络,也不持有账号体系。收款和登录都发生在你的 SDK 里。

完整接口与回调约定见 开发者文档 →

04合作方式

灯塔计划 · 免费接入

灯塔计划

现在开放
¥0集成与联调全程

在你的 App 里跑通一款游戏,含宿主集成、广告 / 支付 / 账号回调打通与灰度发布。费用为 0, 换的是一份可公开引用的真机数据报告。

  • 宿主集成与联调 · 全程免费
  • 广告 / 支付 / 账号回调打通
  • 灰度包、回滚方案、性能数据
  • 数据可写入公开 migo-bench 报告

技术支持

1 对 1 免费
2小时内回复 · 工作时间

从环境准备到上线, 你的工程师与我们的引擎作者一对一。工作时间 2 小时内回复, 紧急问题当日跟到关闭。

  • 引擎作者直连 · 不转客服
  • 工作时间 2 小时内回复
  • 紧急问题当日关闭
  • 微信群 / Slack / 线上会议

年度商业许可

接入后谈
MAU与平台计价

游戏跑通进入运营期后再谈商业条款, 按 MAU 与平台计价。灯塔客户在签约价格上享有明确的优惠。

  • 按 MAU 与平台计价
  • 版本升级与安全更新
  • 接口扩展优先级
  • 灯塔客户价格优惠 · BSL 1.1

更多评估与接入问题见 常见问题 →