LaunchOtherApp 方法来启动另一个应用。| 参数 | 描述 |
|---|---|
appID | 要启动的应用的编号 |
deeplink_options | 用于此请求的更多配置。可选。 |
var options = new ApplicationOptions();
options.SetDeeplinkMessage("abc");
Application.LaunchOtherApp(appId, options);
注意:仅适用于 Meta Horizon Link — 收到目标应用启动成功的通知后,您需手动退出请求发起应用,目标应用才能继续运行。
AppID 参数设置为硬编码的 Horizon 世界应用编号:2532035600194083。FOvrApplicationOptions 对象上,使用值为 "together://world_builder/wb_visit?world_id=<TargetHorizonWorldID>" 的 SetDeeplinkMessage,其中 <TargetHorizonWorldID> 是要加载世界的编号。ApplicationOptions 对象上,使用值 <TargetHorizonWorldID>(与深度链接消息中 world_id 参数相同的 Horizon 世界编号)的 SetDestinationApiName。Application.LaunchOtherApp(appId, deeplink_options)Notification_ApplicationLifecycle_LaunchIntentChangedApplicationLifecycle.GetLaunchDetails() 来检索此应用如何启动的信息。DEEPLINK 启动类型。通过此信息,您可以将用户引导至适当的应用位置。LaunchOtherApp 请求将返回一个错误,您需要在您的代码中妥善处理此错误。如果用户确实拥有此应用,收到目标应用启动成功的通知后,您必须自行退出请求发起应用,目标应用才能继续运行。deeplink_message 字符串对平台层而言是不透明的,其格式由请求发起应用和接收应用双方约定。接收应用通过 GetLaunchDetails 读取该字符串并进行相应路由。// Originating app sends an identifier
options.SetDeeplinkMessage("level/forest_01");
// Target app parses on receive
var details = ApplicationLifecycle.GetLaunchDetails();
if (details.LaunchType == LaunchType.Deeplink) {
var path = details.DeeplinkMessage;
// For example, "level/forest_01" loads the corresponding scene.
}
<scheme>://<resource>?<key1>=<value1>&<key2>=<value2>
注意:这不是 Android URI 方案。平台层不会根据字符串内容进行注册或路由,只有请求发起应用和目标应用会对其进行解读。对于基于 Android intent 的深度链接(在AndroidManifest.xml中注册的自定义网址方案),请参阅 2D Android 配套应用开发,该路径使用标准的 Android 规则,而非平台 SDK。