CreateSession API 时,需在 ApplicationParams 参数中按固定格式填写:--es key value
--es、key、value 三个字段之间需以空格分隔。--es ParamKey {value1,value2} xxx
android.intent.action.CLOUD_GAMING_STARTED
MainActivity 中注册该广播。接收到广播后,可通过以下方式获取数据:String data = intent.getStringExtra("key");
传递参数 | 获取方式 | 最终值 |
--es ParamKey {value1,value2} xxx | intent.getStringExtra("ParamKey") | {value1,value2} xxx |
adb 命令在本地模拟测试跳转功能是否正常:adb shell am broadcast -a android.intent.action.CLOUD_GAMING_STARTED -e tencent_scheme Tencent://autoAuth
BroadcastReceiver 类监听 android.intent.action.CLOUD_GAMING_STARTED 广播,并通过 intent.getExtras() 提取携带的额外数据。MainActivity 或 Service 中动态注册该 Receiver,确保在容器拉起时能正确响应并解析参数。import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.util.Log;import android.os.Bundle;public class CloudGamingBroadcastReceiver extends BroadcastReceiver {private static final String TAG = "CloudGamingReceiver";@Overridepublic void onReceive(Context context, Intent intent) {// 检查广播Action是否匹配目标if (intent == null || !"android.intent.action.CLOUD_GAMING_STARTED".equals(intent.getAction())) {return;}// 打印广播的完整信息(包括额外数据)Log.d(TAG, "接收到CLOUD_GAMING_STARTED广播,来源: " + intent.getSourceFilters());// 提取广播携带的额外数据(根据实际场景调整键名)Bundle extras = intent.getExtras();if (extras != null) {Log.d(TAG, "广播携带的额外数据: ");for (String key : extras.keySet()) {Object value = extras.get(key);Log.d(TAG, " Key: " + key + ", Value: " + value);}} else {Log.d(TAG, "广播未携带额外数据");}}}
import android.content.IntentFilter;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;public class MainActivity extends AppCompatActivity {private CloudGamingBroadcastReceiver receiver;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// 实例化广播接收器receiver = new CloudGamingBroadcastReceiver();// 创建IntentFilter并添加ActionIntentFilter filter = new IntentFilter();filter.addAction("android.intent.action.CLOUD_GAMING_STARTED");// 动态注册广播接收器registerReceiver(receiver, filter);}@Overrideprotected void onDestroy() {super.onDestroy();// 注销广播接收器,防止内存泄漏if (receiver != null) {unregisterReceiver(receiver);}}}
项目 | 说明 |
作用 | 配合云渲染任务发起时传递的参数,在业务 APK 被云渲染 Android 容器拉起后,自动接收广播、解析参数。 |
广播 Action | android.intent.action.CLOUD_GAMING_STARTED |
参数格式 | --es key value |
本地测试命令 | adb shell am broadcast -a android.intent.action.CLOUD_GAMING_STARTED -e tencent_scheme Tencent://autoAuth |
文档反馈