菜单

设置深度链接

 

 

开发者可以通过创建深度链接来将用户转到应用中的特定页面。如果用户已在设备上安装您的应用,SE SDK 会转向链接中指定的页面。用户通过链接打开应用后,SDK 就可以读取深度链接数据了,具体步骤如下:

注:此方法仅适用于iOS和Android

查看 SolarEngine 后台配置

universal link 示例为:test1.link.solar-engine.com

URL Scheme 示例为:test1://

配置深度链接

 要配置深度链接,请在 Unity Editor inspector 窗口中添加 URL 方案:具体步骤如下:

1、点击[SolarEngineSDK-->SDK Edit Settings]

2、将DeepLink设置为true

DEEP LINKING模块介绍

iOS:

iOS URL Identifie:  唯一标识用户自定义的URL Scheme。 例:solarengine

iOS URL Schemes: 自定义的Scheme的名称,不需要加入「://」。   例:test1

iOS Universal Links Domains:通用链接,请务必从链接开头移除协议 (例如https://applinks: )例:  test1.link.solar-engine.com  

Android:

Android URL Schemes:自定义的Scheme的名称,不需要加入「://」。   例:test1                                  

 

 

iOS 深度链接:

1、填写您的identifier、url Schemes、universalLinksDomains

2、导出Xcode项目检查,URL Scheme和universalLinksDomains是否已经添加成功

面板截图 

例:

 

Android 深度链接:

1、请在 Android URI Schemes 界面添加方案。SDK 会将必要的 XML 标签添加至您的 AndroidManifest.xml

传递Deeplink Url 

Android SDK依赖您传入配置Deeplink Url,上报唤醒事件并且给deeplink回调,请调用SolarEngine.Analytics.handleDeepLinkUrl(url);方法传递给SDK

   //在Unity Editor 2020.1、2020.2、2019.4 版本上开发者可以通过此方式获取deeplink url并传递给SDK
Application.deepLinkActivated += handleSchemeUrl;

   //其他Unity版本
handSchemeUrl(Application.absoluteURL);

   private void handleSchemeUrl(string url)
    {
        //将url传递给SDK,注意此步骤一定要在SDK初始化之前执行
        SolarEngine.Analytics.handleDeepLinkUrl(url);
    }

 

设置Deeplink回调

当SDK解析完Deeplink Url后会回调,您可以使用回调参数处理一些业务逻辑

注:回调方法请在初始化SDK前设置,否则会接受不到回调。

方法示例

public static void deeplinkCompletionHandler(SESDKDeeplinkCallback callback);

参数说明:

参数名称 参数含义 参数类型 是否必传
callback
deeplink回调
SESDKDeeplinkCallback

 

调用示例:

    private void Start()
    {
     
        Analytics.deeplinkCompletionHandler(deeplinkCallback);

       //在Unity Editor 2020.1、2020.2、2019.4 版本上开发者可以通过此方式获取deeplink url并传递给SDK
      //  Application.deepLinkActivated += handleSchemeUrl1;
        //如果是在2022版本上开发者可以通过以下方式获取deeplink url并传递给SDK
        handleSchemeUrl(Application.absoluteURL);
       
        SolarEngine.Analytics.initSeSdk(AppKey, seConfig);
    }

private void deeplinkCallback(int code, Dictionary<string, object> data)
{
  
  if (code == 0)
    {
        Debug.Log("SEUnity: deeplink 回调成功");

        string from = (string)data["from"];
        string sedpLink = (string)data["sedpLink"];
        string turlId = (string)data["turlId"];
        Dictionary<string, object> customParams = (Dictionary<string, object>)data["customParams"];

    } else {
        Debug.Log("SEUnity: deeplink 回调失败");

    }

}

 private void handleSchemeUrl(string url)
    {
     //将url传递给SDK,注意此步骤一定要在SDK初始化之前执行

        SolarEngine.Analytics.handleDeepLinkUrl(url);
    }

 

 

上报deeplink唤醒事件

 

开发者可以通过上报 deeplink 唤醒成功事件来进行拉活归因和业务分析。

注:如果使用了SDK的deeplink功能,则无需调用 trackAppReEngagement方法

 方法示例:

public static void trackAppReEngagement(Dictionary<string, object> customAttributes)

 调用示例:

 Dictionary<string,object>  attributes = getCustomProperties();
 SolarEngine.Analytics.trackAppReEngagement(attributes);

 

 

 

 

 

 

 

最近修改: 2025-07-11Powered by