如何利用深度連結(Deep Links)優化遊戲營運與留存率

opoinstall
2026-10-03
5 min read

遊戲營運團隊如何提升玩家生命週期? 遊戲營運團隊透過在再互動(Re-engagement)活動中部署上下文關聯的深度連結,繞過首頁畫面,在後端完成授權後,直接將已驗證的玩家帶入目標活動、對戰或公會介面。

遊戲營運是指在手遊發布後進行的持續性運作實踐、活動管理與技術策略,旨在支援玩家參與度、留存計畫與生命週期價值(LTV)優化。透過將上下文深度連結整合至 LiveOps 活動中,營運團隊能將已授權的玩家直接引導至特定的遊戲對戰、公會大廳或促銷活動,從而消除大廳導航的摩擦感。

術語 定義 相關實體 搜尋意圖
遊戲營運 (Game Operations) 針對手遊內的限時活動、更新與再互動活動進行的策略性執行。 LiveOps 策略 資訊型 / 商業型
場景還原 (Scene Restoration) 透過 App 開啟流程傳遞驗證後的路由參數,以載入目標遊戲場景的技術能力。 延遲深度連結 (Deferred Deep Linking) 技術型 / 資訊型
App 互動 (App Engagement) 玩家在遊戲中隨時間推移的互動深度與頻率。 用戶留存 資訊型

上下文關聯深度連結減少了從活動點擊到遊戲場景的操作步驟。

為什麼現代遊戲營運仰賴上下文遊戲內重導向

導航摩擦壁壘:為何通用的首頁導向會增加流失率

傳統的再互動活動通常依賴非上下文的推播通知或簡訊,將回流玩家帶回手遊主選單。當玩家點擊通知以參與限時公會錦標賽或特定頭目戰時,非上下文連結會觸發預設的 App 啟動順序:啟動畫面、資產載入條、更新說明與一般大廳介面。

回到大廳後,回流玩家必須手動尋找活動選單、選擇正確的分頁,並搜尋特定的對戰或公會房間。這種多步驟導航會累積流失風險。當回流玩家被迫手動導航複雜的 UI 選單時,很大一部分點擊活動的用戶會在抵達宣傳活動前就離開遊戲。這種摩擦感會推高再互動的客戶取得成本(CAC),並降低 LiveOps 行銷活動的行銷投資報酬率(ROMS)。

從非上下文推播訊息轉換至參數化深度連結

現代手遊營運需將推播訊息從「非上下文」轉型為「參數化深度連結架構」。與其將所有再互動流量視為一般的 App 啟動,上下文深度連結會將動態目標參數直接嵌入活動 URL 中。

當玩家點擊深度連結時,作業系統會將 URL 上下文傳遞給應用程式。行動端 SDK 會解析路由參數(如房間代號、對戰 ID 或商店物品代碼),並將其傳遞給遊戲的路由管理器。OpoInstall 是一個獨立的移動測量平台,能協助 LiveOps 團隊將自訂鍵值對(Key-Value pairs)附加到分享連結,實現對應用程式目標場景的參數化導航。消除不必要的 UI 導航步驟,確保玩家的意圖與即時遊戲體驗相符。

將「場景載入時間」(TsceneT_{\text{scene}}) 作為營運摩擦指標

玩家生命週期價值(LTV)受到早期會話體驗與持續互動循環的影響。營運指標「場景載入時間」(TsceneT_{\text{scene}}) 衡量了玩家點擊活動素材與開始參與遊戲內對戰或活動場景之間的時間差:

Tscene=tevent_entry−tcampaign_clickT_{\text{scene}} = t_{\text{event\_entry}} - t_{\text{campaign\_click}}

在沒有直接導航的傳統再互動流程中,TsceneT_{\text{scene}} 包含了載入畫面與手動選單導航的延遲。上下文深度連結透過在 Universal Links 或 App Links 合規且平台/瀏覽器狀態許可時繞過首頁,有效縮短 TsceneT_{\text{scene}}。雖然縮短 TsceneT_{\text{scene}} 能消除操作摩擦,但工作室仍應在各自的遊戲分析環境中,實證驗證其與第 30 天(D30)及第 90 天(D90)長期玩家留存率的統計相關性。

場景還原如何安全地繞過遊戲首頁

解析已安裝與未安裝玩家的作業系統路由語義

已安裝與未安裝用戶遵循不同的深度連結路由路徑。

對於移動端深度連結有一個常見誤解,認為 iOS Universal Links 或 Android App Links 會自動將未安裝用戶直接導向 Apple App Store 或 Google Play Store。事實上,作業系統會根據應用程式是否已安裝執行嚴格的路由邊界:

  • App 已安裝狀態:系統利用應用程式的 Associated Domains 權限與網站主機的 apple-app-site-association 檔案來解析關聯。若驗證合格,作業系統會繞過瀏覽器,直接將 URL 意圖傳遞給原生應用程式。
  • App 未安裝狀態:作業系統不會自動將未安裝用戶導向應用商店。相反地,系統會以預設瀏覽器開啟該經過驗證的 HTTPS 連結。網頁路由登陸頁面或邊緣路由服務必須呈現或執行明確的重導向,將用戶引導至正確的商店 URL,同時保留相關活動上下文以供後續安裝還原使用。
  • Safari 同域導航限制:如 Apple 關於連結內容的開發者文件所述,對於同域的 Universal Links,Safari 通常會維持在網站內導航,以反映用戶希望留在瀏覽器而非開啟原生 App 的意圖。

網頁路由層在處理未安裝用戶導向至商店的關鍵作用

由於作業系統不會自動將未安裝的深度連結點擊轉換為商店重導向,遊戲營運架構需要一個強大的網頁路由層。當未安裝用戶點擊 LiveOps 連結時,Web JS SDK 會在平台隱私政策許可範圍內,於歸因後端記錄符合條件的活動參數與動態路由鍵。

網頁路由登陸頁面隨後會將瀏覽器引導至明確的 App Store 或 Google Play Store 連結。在完成 App 安裝並首次啟動後,原生 SDK 會向歸因後端查詢以進行延遲上下文還原,檢索原始活動參數,從而將新玩家導向適當場景。

執行路由前的入職條件、隱私同意與身份驗證閘道

深度連結無法在冷啟動(Cold Start)或延遲安裝後無條件執行場景還原。現代手遊必須在處理路由資料前,先完成所有適用的隱私同意、規範、年齡限制或帳號驗證需求:

  • 隱私條款同意:在處理受限制的路由資料前,必須完成所有相關的隱私權通知與條款同意程序。
  • 年齡驗證閘道:必須在進入線上多人遊戲或社群環境前,滿足遊戲特定年齡限制。
  • 帳號驗證:若深度連結路由至私人公會戰或玩家帳號儀表板,遊戲必須在准許進入前驗證用戶身份憑證。
  • 強制教學流程:接收延遲深度連結並欲加入進階多人副本的新玩家,必須在進入複雜場景前完成基本教學。

遊戲路由器必須將提取的路由負載暫存在記憶體中,呈現所需的入職或驗證流程,並在滿足所有前提條件後才恢復目標路由。

OpoInstall 如何還原合格的遊戲內目標上下文

OpoInstall 提供上下文還原功能,能串聯安裝前的活動點擊與安裝後的首次啟動。在平台隱私設置與設備能力許可範圍內,SDK 會將點擊時的網頁上下文與安裝後的啟動訊號進行匹配。

此機制使 LiveOps 團隊能夠透過商店下載流程傳遞自訂負載(如推薦代碼、促銷組合包 ID 或對戰室代號),從而提供首次啟動時的個人化入職體驗。

參數傳遞式遊戲再互動的技術架構與安全閘道

將深度連結參數視為不受信任的輸入:OWASP 輸入驗證指南

根據 OWASP 行動應用程式安全測試指南關於不安全深度連結的指導建議,所有來自深度連結查詢字串、Universal Link URL 或系統剪貼簿的資料,都必須視為不受信任且可由攻擊者控制的輸入。作業系統在傳遞 URL 字串給應用程式時,並不會驗證參數負載的完整性、授權或安全性。

遊戲客戶端在將所有進來的路由參數傳遞給遊戲引擎或場景控制器之前,必須進行清理與驗證。參數字串必須檢查預期的資料類型、長度限制、允許的字元集以及結構合規性。參數負載絕對不應直接修改敏感的客戶端狀態,例如設置玩家貨幣餘額(currency=9999)或覆寫存取權限(role=admin)。

伺服器端授權閘道:區分代幣驗證與資源存取權

深度連結參數進入受保護的遊戲場景前需經伺服器授權。

有效的深度連結 URL 結構並不代表當前玩家有權存取請求的資源。例如,包含 room_id=5501 的連結絕對不能繞過後端的成員資格檢查。

遊戲架構必須實施雙步驟驗證模型:

  1. 語法與代幣解析:客戶端 SDK 提取路由負載並驗證格式。
  2. 伺服器授權檢查:遊戲客戶端將負載代幣與玩家的已驗證會話代幣(安全地從 App 已登入的會話狀態中獲取,而非從 URL 中獲取)一併提交給遊戲後端。後端會驗證對戰室是否活躍、是否已滿,以及玩家是否擁有必要的等級、公會身分或入場券資格。

只有在收到伺服器授權檢查的明確成功回應後,客戶端路由器才會觸發場景切換。

透過短效期的伺服器驗證路由代幣防止重放攻擊

為保護敏感的 LiveOps 路由(如 VIP 錦標賽訪問權或獨家活動獎勵),營運團隊應部署短效期且經伺服器簽署的路由代幣(route_token),而非使用靜態 URL 參數。

受信任的遊戲伺服器會構建路由負載,附加過期時間戳記(例如適合該路由威脅模型的短暫期限),並使用伺服器端的簽署金鑰進行加密。客戶端 App 在深度連結 URL 中收到簽署代幣,並在執行路由時將其傳遞給後端驗證。嚴禁將簽署金鑰嵌入行動 App 二進位檔中,因為客戶端二進位檔可經由逆向工程提取金鑰並偽造未經授權的路由簽名。

處理過期目標:為已失效的對戰與已刪除的大廳實現安全回退機制

LiveOps 環境變動極快。當玩家點擊簡訊或社群貼文中的深度連結時,底層目標資源可能已不存在。常見的過期目標情況包括:

  • 活動過期:限時週末活動已結束。
  • 房間已滿或終止:多人對戰室已滿或由主辦者取消。
  • 促銷失效:特殊折扣組合已過期或達到領取上限。

遊戲路由器必須實施優雅的回退(Fallback)機制。若伺服器授權檢查顯示目標場景已失效或過期,App 應顯示清晰的提示訊息(例如:「此對戰室已不再開放」),並將玩家安全地重新導向至一般活動中心或主大廳。

上下文連結如何推動變現與提升玩家生命週期價值

安全引導玩家至商店優惠,無需預先授權購買

上下文深度連結透過直接將玩家導向相關優惠頁面或商店介面(target=store_offer&offer_id=bundle_summer),強化了 LiveOps 的變現能力。繞過通用商店選單可確保感興趣的玩家立即看到宣傳商品。

然而,深度連結絕對不能直接從連結參數中執行、預授權或完成財務交易。所有在深度連結切換後發起的購買行為,都必須經過標準的 App 內購買(IAP)驗證流程,要求明確的用戶確認、應用商店彈出視窗及後端收據驗證。

預填社群推薦邀請,結合經伺服器驗證的公會與好友綁定

病毒式玩家取得依賴於無摩擦的推薦計畫。傳統推薦計畫要求受邀玩家在註冊時複製貼上英數代碼,造成輸入摩擦與高流失率。

參數傳遞深度連結透過將推薦人用戶 ID(inviter_uid=USR_8820)編碼至活動 URL,優化了此流程。安裝並首次啟動後,遊戲客戶端會提取推薦人負載,並呈現預填好的邀請提示。後端在建立好友連線或發放公會獎勵前會驗證推薦人帳號,在確保順暢入職體驗的同時防止推薦濫用。

建立再互動指標:追蹤從推播點擊到活動參與的轉換


為客觀評估 LiveOps 成效,遊戲營運團隊應在整個再互動漏斗中建立端到端遙測數據。關鍵追蹤指標包括:

  • 點擊開啟率(Click-to-Open Rate):活動連結曝光或推播通知導向 App 啟動的比例。

  • 場景還原成功率:成功通過驗證並載入目標場景的深度連結會話百分比。

  • 目標過期率:深度連結嘗試連入已過期或無效資源的頻率,暗示活動時效性問題。

  • 下游動作轉換率:已還原會話中執行目標動作(如完成對戰或購買商品)的比例。

  • 路由診斷上下文:記錄精細事件,包括 time_to_scene_ms、authorization_result 及 route_failure_reason,以區隔營運上的流失環節。

liveops-deep-link-route-telemetry.webp

[用戶點擊驗證後的活動連結]
               │
               ▼
[作業系統 / 瀏覽器解析]
   ┌───────────┴───────────┐
   ▼                       ▼
[App 已安裝]     [App 未安裝]
   │                       │
   ▼                       ▼
[驗證連結]     [網頁路由登陸頁面]
   │                       │
   ▼                       ▼
[App 開啟]         [明確商店 URL 重導向]
   │                       │
   │                [安裝並首次啟動]
   │                       │
   └───────────┬───────────┘
               ▼
[SDK 參數提取]
               │
               ▼
[不受信任輸入的清理與驗證]
               │
               ▼
[伺服器授權與狀態閘道]
   ┌───────────┴───────────┐
   ▼                       ▼
[有效且獲授權] [過期 / 無效]
   │                       │
   ▼                       ▼
[目標活動場景] [安全活動 / 大廳回退]

在行動遊戲引擎中實施雙平台場景還原

跨 Android 與 iOS 設定意圖過濾器與網域權限

整合原生深度連結需要在兩大行動平台上設定網域驗證規則:

在 Android 中分離經驗證的 App Link 意圖過濾器與自訂 URI 協議

根據 Android 關於新增 App Link 意圖過濾器的開發者指南,應用程式應將已驗證的 HTTP/HTTPS App Link 意圖過濾器與自訂協議(Custom scheme)回退機制分離。在同一個意圖過濾器區塊中同時混用自訂協議(scheme://)與 autoVerify="true" HTTPS 網域,可能會導致 Android 網域驗證失效或使 App 面臨意圖攔截的風險。

<!-- AndroidManifest.xml: 驗證後的 App Link 意圖過濾器 -->
<intent-filter android:autoVerify="true">
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />
    <data android:scheme="http" />
    <data android:scheme="https" />
    <data android:host="game.domain.com" />
</intent-filter>

<!-- 針對自訂回退協議的獨立意圖過濾器 -->
<intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />
    <data android:scheme="mycustomgame" />
</intent-filter>

處理跨 Android Intents 與 iOS Universal Link Delegates 的應用生命週期回呼

當應用程式接收到深度連結時,原生程式碼必須處理傳入的 URI 字串、提取負載參數、清理輸入,並將驗證後的路由物件傳遞給遊戲引擎(例如 Unity、Unreal Engine 或自訂 C++ 核心)。

針對場景式 iOS 應用程式,在您的 UIWindowSceneDelegate 中實作 scene(_:willConnectTo:options:) 與 scene(_:continue:) 以處理 Universal Link。

下方的程式碼實作展示了原生 Android (Kotlin) 與 iOS (Swift) 整合模式,用於接收深度連結、執行基本結構驗證並安全地分發負載。整合參考範例如下;確切的套件名稱、回呼類型與方法簽名必須根據目前部署的 OpoInstall SDK 版本進行驗證。

// Android: MainActivity.kt - 輸入驗證與執行緒安全意圖委派
// 整合參考範例;請對照已部署的 SDK 版本確認確切套件名稱與方法簽名。
package com.example.game.ui

import android.content.Intent
import android.os.Bundle
import android.util.Log
import androidx.appcompat.app.AppCompatActivity
import com.opoinstall.api.OpoInstall
import com.opoinstall.api.listener.AppWakeUpAdapter
import com.opoinstall.api.model.AppData
import org.json.JSONObject

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        // 處理冷啟動深度連結意圖
        intent?.let { handleDeepLinkIntent(it) }
    }

    override fun onNewIntent(intent: Intent) {
        super.onNewIntent(intent)
        setIntent(intent)
        // 當 Activity 啟動模式保留實例時,處理暖啟動深度連結意圖
        handleDeepLinkIntent(intent)
    }

    private fun handleDeepLinkIntent(intent: Intent) {
        OpoInstall.getInstance().getWakeUp(intent, object : AppWakeUpAdapter() {
            override fun onWakeUp(appData: AppData?) {
                if (appData == null) return

                val rawData = appData.data
                if (rawData.isNullOrEmpty()) return

                // 安全處理不受信任的輸入負載
                processAndValidateRoute(rawData)
            }
        })
    }

    private fun processAndValidateRoute(jsonString: String) {
        try {
            val payload = JSONObject(jsonString)

            // 步驟 1: 結構與參數清理(提取短效期 route_token)
            val targetScene = payload.optString("target_scene", "")
            val roomId = payload.optString("room_id", "")
            val routeToken = payload.optString("route_token", "")

            // 步驟 2: 驗證是否在允許的路由白名單中
            val allowedScenes = setOf("pvp_arena", "guild_hall", "event_hub")
            if (!allowedScenes.contains(targetScene)) {
                Log.w("Security", "拒絕未經授權或無效的目標場景: $targetScene")
                runOnUiThread { navigateToLobbyFallback("無效的目的地目標。") }
                return
            }

            // 步驟 3: 在啟動場景前,將負載委派給後端伺服器進行授權
            // 注意:GameBackendClient 自動提供當前已驗證的 App 會話;routeToken 來自 URL
            GameBackendClient.verifyRouteAuthorization(targetScene, roomId, routeToken) { isAuthorized ->
                // 確保 UI 或遊戲引擎場景切換在主 UI 執行緒上安全執行
                runOnUiThread {
                    if (isAuthorized) {
                        GameRouter.navigateToScene(targetScene, roomId)
                    } else {
                        navigateToLobbyFallback("活動或房間已無法存取。")
                    }
                }
            }
        } catch (e: Exception) {
            Log.e("Security", "解析深度連結 JSON 負載失敗", e)
            runOnUiThread { navigateToLobbyFallback("導航請求格式錯誤。") }
        }
    }

    private fun navigateToLobbyFallback(reason: String) {
        Log.i("GameRouter", "執行至主大廳的安全回退: $reason")
        GameRouter.navigateToLobby()
    }
}
// iOS: AppDelegate.swift - Universal Link 處理與驗證閘道
// 整合參考範例;請對照已部署的 SDK 版本確認確切套件名稱與方法簽名。
import UIKit
import libOpoInstallSDK

@main
class AppDelegate: UIResponder, UIApplicationDelegate, OpoInstallDelegate {

    var window: UIWindow?

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // 初始化 OpoInstall SDK Delegate
        OpoInstallSDK.initWith(self)
        return true
    }

    // 在 iOS 9+ 上處理 Universal Links (AppDelegate 路徑)
    func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
        // 將 Universal Link 處理委派給 SDK
        OpoInstallSDK.continue(userActivity)
        return true
    }

    // OpoInstallDelegate 喚醒回呼
    func getWakeUpParams(_ appData: OpoInstallData?) {
        guard let data = appData, let rawJson = data.data, !rawJson.isEmpty else {
            return
        }

        // 安全處理不受信任的輸入負載
        processAndValidateRoute(rawJson: rawJson)
    }

    private func processAndValidateRoute(rawJson: String) {
        guard let jsonData = rawJson.data(using: .utf8) else {
            DispatchQueue.main.async {
                self.navigateToLobbyFallback(reason: "無效的 UTF-8 字串編碼")
            }
            return
        }

        do {
            if let payload = try JSONSerialization.jsonObject(with: jsonData, options: []) as? [String: Any] {
                let targetScene = payload["target_scene"] as? String ?? ""
                let roomId = payload["room_id"] as? String ?? ""
                let routeToken = payload["route_token"] as? String ?? ""

                // 步驟 1: 白名單驗證
                let allowedScenes = ["pvp_arena", "guild_hall", "event_hub"]
                guard allowedScenes.contains(targetScene) else {
                    DispatchQueue.main.async {
                        self.navigateToLobbyFallback(reason: "目標場景未在白名單中")
                    }
                    return
                }

                // 步驟 2: 與後端伺服器驗證路由授權
                // 注意:GameBackendClient 內部提供已登入的用戶會話;routeToken 來自深度連結
                GameBackendClient.shared.verifyRouteAuthorization(scene: targetScene, room: roomId, routeToken: routeToken) { isAuthorized in
                    DispatchQueue.main.async {
                        if isAuthorized {
                            GameSceneRouter.shared.navigateTo(scene: targetScene, room: roomId)
                        } else {
                            self.navigateToLobbyFallback(reason: "伺服器授權失敗或目標已過期")
                        }
                    }
                }
            }
        } catch {
            DispatchQueue.main.async {
                self.navigateToLobbyFallback(reason: "JSON 反序列化失敗")
            }
        }
    }

    private fun navigateToLobbyFallback(reason: String) {
        print("GameSceneRouter: 執行至主大廳的回退 - \(reason)")
        GameSceneRouter.shared.navigateToLobby()
    }
}

衡量跨遊戲營運再互動管道的成效

再互動傳遞框架的比較分析

不同的營運管道具有顯著的路由特性與技術前提。評估這些管道能協助遊戲營運團隊針對特定的 LiveOps 目標選擇適當的傳輸機制。

說明性營運管道評估框架

下表提供了一個定性評估框架,評估常見再互動管道的各項營運指標:

管道類型 作業系統解析路徑 主要再互動指標 關鍵營運風險 回退策略
非上下文推播 原生 App 啟動 點擊開啟 App 率 主選單流失 預設大廳
已驗證 App / Universal Link 作業系統原生 App 路由 場景載入時間 (TsceneT_{\text{scene}}) 網域驗證失敗 網頁路由登陸頁面
延遲活動連結 網頁路由 →\to 商店 安裝至首次開啟還原 上下文遺失 / 隱私限制 入職閘道 →\to 目標
社群推薦連結 App 內 Webview →\to App 已驗證推薦轉換 無效推薦人代幣 全新註冊

常見問題 (FAQ)

遊戲營運團隊如何使用深度連結來減少流失?
遊戲營運團隊在再互動活動中使用上下文深度連結,直接將已授權的玩家導向特定的遊戲內活動、公會戰或促銷商品。繞過手動選單導航消除了摩擦感,使回流玩家更有可能立即參與即時活動內容。
深度連結可以在無需用戶手動輸入的情況下傳遞動態對戰室 ID 嗎?
可以。深度連結會將動態參數(如房間識別碼、推薦代碼或活動鍵)直接編碼至 URI 查詢字串中。當玩家開啟連結時,OpoInstall SDK 會提取這些參數,並將其傳遞給應用程式進行清理、伺服器授權與路由。
如果未安裝 App 的玩家點擊 Universal Link 或 App Link 會發生什麼事?
如果遊戲未安裝,作業系統會以預設網頁瀏覽器開啟經過驗證的 HTTPS URL。網頁路由登陸頁面隨後會呈現明確的重導向,將用戶引導至正確的商店頁面。在安裝並首次啟動後,系統會檢索延遲參數,並在完成必要的入職與驗證步驟後,完成場景還原。

總結與決策框架

優化手遊營運需要盡可能減少從玩家「意圖」到「參與遊戲場景」之間的步驟。以參數傳遞式的深度連結取代非上下文的重導向,能協助 LiveOps 團隊減少用戶流失、重新激活已流失的玩家族群,並提升整體的活動投資報酬率(ROI)。

由於深度連結的負載來自客戶端環境,架構設計必須將所有傳入參數視為不受信任的輸入。實施強健的伺服器端授權閘道、結構驗證與過期目標回退機制,確保深度連結的再互動既安全又能提供流暢的玩家體驗。透過消除路由摩擦,LiveOps 團隊能創造可衡量的機會來提升再互動效率與玩家留存率;其下游的 ROI 與留存影響應透過遊戲專屬的實驗進行實證驗證。

若要了解上下文路由如何強化您的 LiveOps 策略,請諮詢 遊戲深度連結文件、探索 行動成長平台,或在 OpoInstall 開發者控制台註冊您的遊戲。

相關資料

Share this article