Невозможно Сократить Длинную Динамическую Ссылку

# #c# #unity3d #firebase-dynamic-links

Вопрос:

Я хочу создать укороченную динамическую связь из длинной динамической связи

Я последовал шагам, показанным здесь: https://firebase.google.com/docs/dynamic-links/unity/create

тем не менее, я получаю один и тот же длинный URL-адрес, когда процесс сокращения завершен.

 public void CreateInviteLink()
{
    var components = new Firebase.DynamicLinks.DynamicLinkComponents(
        // The base Link.
        new System.Uri("https://myapp.com"),
        // The dynamic link URI prefix.
        "https://myapp.page.link")
        {
            IOSParameters = new Firebase.DynamicLinks.IOSParameters("com.myapp.myapp"),
            AndroidParameters = new Firebase.DynamicLinks.AndroidParameters("com.myapp.myApp"),
        };

    Debug.Log("Long Dynamic Link: "   components.LongDynamicLink);

    var options = new Firebase.DynamicLinks.DynamicLinkOptions
    {
        PathLength = DynamicLinkPathLength.Unguessable
    };

    Firebase.DynamicLinks.DynamicLinks.GetShortLinkAsync(components, options).ContinueWith(task => {
        if (task.IsCanceled)
        {
            Debug.LogError("GetShortLinkAsync was canceled.");
            return;
        }
        if (task.IsFaulted)
        {
            Debug.LogError("GetShortLinkAsync encountered an error: "   task.Exception);
            return;
        }

        // Short Link has been created.
        Firebase.DynamicLinks.ShortDynamicLink link = task.Resu<
        Debug.LogFormat("Generated Short Dynamic Link: {0}", link.Url);

        text.text = link.Url.ToString();

        var warnings = new System.Collections.Generic.List<string>(link.Warnings);
        if (warnings.Count > 0)
        {
            // Debug logging for warnings generating the short link.
        }

    });
    
}
 

журналы результатов

Длинная Динамическая Связь: https://myapp.page.link/?afl=amp;amv=0amp;apn=com.myapp.myAppamp;ibi=com.myapp.myappamp;ifl=amp;ipfl=amp;link=https://myapp.com UnityEngine.Отладка:Журнал(Объект)

Сгенерированная Короткая Динамическая Связь: https://myapp.page.link/?afl=amp;amv=0amp;apn=com.myapp.myAppamp;ibi=com.myapp.myappamp;ifl=amp;ipfl=amp;link=https://myapp.com UnityEngine.Отладка:Формат журнала(Строка, Объект[])

Редактировать:

Как я это сделал:

Вы не можете сократить динамические ссылки с помощью Firebase SDK в редакторе, но я использовал REST API и UnityWebRequest для тестирования коротких ссылок внутри редактора, и это сработало

 IEnumerator HTTPRequestShortLink(string longDynamicLink)
{
    WWWForm form = new WWWForm();
    form.AddField("longDynamicLink", longDynamicLink);

    // trigger of function is HTTP request. this link is the trigger for that func
    UnityWebRequest www = UnityWebRequest.Post("https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=[YOUR_API_KEY]", form);

    //for getting response
    www.downloadHandler = new DownloadHandlerBuffer();

    yield return www.SendWebRequest();

    if (www.result != UnityWebRequest.Result.Success)
    {
        Debug.Log(www.error);
    }
    else
    {
        Debug.Log("Form upload complete! "   www.GetResponseHeader("response"));
        string responseText = www.downloadHandler.text;
        
        // Parse returned json 
        parsedJsonObject obj = parsedJsonObject.CreateFromJSON(responseText);
        Debug.Log("shortLink: "   obj.shortLink);
        Debug.Log("HTTP Response text: "   responseText);

    }
}