【问题标题】:How to process firebase short dynamic link Onsuccess result如何处理firebase短动态链接Onsuccess结果
【发布时间】:2018-07-26 16:04:42
【问题描述】:

我在 Xamarin Android 中有这个方法可以创建 firebase 短动态链接:

private void GetDynamicLink()
        {

            string uid = "My_Id";
            string link = "https://ledrop.com/?invitedby=" + uid;
        var task =    FirebaseDynamicLinks.Instance.CreateDynamicLink()
        .SetLink(Android.Net.Uri.Parse(link))
        .SetDynamicLinkDomain("ledrop.page.link")
        .SetAndroidParameters(
                new DynamicLink.AndroidParameters.Builder(PackageName)
                        .SetMinimumVersion(125)
                        .Build()).BuildShortDynamicLink().AddOnSuccessListener(this, new dynamicLinkListener());


        }

如上所示,我附加了一个 onsuccess 监听器,然后我像这样处理监听器:

internal class dynamicLinkListener : Java.Lang.Object, IOnSuccessListener, IOnFailureListener
        {


            public void OnFailure(Java.Lang.Exception e)
            {
                Console.WriteLine(e.Message);
            }

            void IOnSuccessListener.OnSuccess(Java.Lang.Object result)
            {

                var sDynamicLink = result as IShortDynamicLink;

            }

        }

但是 sDynamicLink 变量返回 null,我如何从结果中获取 shortLink?

【问题讨论】:

  • 嗨@Tolulope,你有没有找到任何解决方案来从 Xamarin 的结果中检索深层链接。您能否分享您解决问题所遵循的流程或链接。
  • @RanjithKumarNagiri 不,我没有,我认为这是一个错误

标签: c# android firebase xamarin xamarin.android


【解决方案1】:

像这样使用 JavaCast

class OnSuccessListner : Java.Lang.Object, IOnSuccessListener
{
    TaskCompletionSource<string> _tcs;

    public OnSuccessListner(TaskCompletionSource<string> tcs)
    {
        _tcs = tcs;
    }

    void IOnSuccessListener.OnSuccess(Java.Lang.Object result)
    {
        var link = result.JavaCast<IShortDynamicLink>();
        _tcs.TrySetResult(link.ShortLink.ToString());
    }
}

【讨论】:

  • 这看起来很有希望,会尝试并提供反馈
  • 这很好用,顺便说一句,您还可以等待任务并在结果上使用 JavaCast 而不是使用 IOnSuccessListener 来提高可读性。
【解决方案2】:

嘿,我也有同样的问题,所以我已经通过使用rest api调用来获取动态短url来解决它

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-05-12
  • 1970-01-01
  • 1970-01-01
  • 2020-12-17
  • 2018-11-23
  • 1970-01-01
  • 2018-01-22
相关资源
最近更新 更多