xamarin 表单应用程序 link - 从 ios 应用程序委托打开 PCL 视图

xamarin forms app link - open PCL view from ios app delegate

在 Xamarin Forms 跨平台应用程序中,我可以从外部电子邮件应用程序打开该应用程序 link。

它在 android 中打开很好,通过向清单添加一个意图,然后在开始的 activity 中,我创建另一个意图来触发主 activity

public class AppLinkActivity : Activity
{
    protected override void OnCreate(Bundle bundle)
    {
        base.OnCreate(bundle);
        string code = null;
        if (Intent.Data.Query != null)
        {
            code = Intent.Data.Query.Substring(Intent.Data.Query.LastIndexOf('=') + 1);
        }

        if (Intent.Data != null)
        {
            var uri = Intent.Data;
            if (uri != null)
            {
                Intent i = new Intent(this, typeof(MainActivity));
                i.AddFlags(ActivityFlags.ReorderToFront);
                i.PutExtra("code", code);
                i.PutExtra("flag", true);
                this.StartActivity(i);
            }
        }
        this.FinishActivity(0);
    }
}

在 ios 中,应用程序link 触发了应用程序委托中 OpenUrl 的覆盖,但我不确定如何从这里导航到特定的 PCL 页面,发生的事情是应用程序在其上次打开的页面打开

public override bool OpenUrl(UIApplication app, NSUrl url, string sourceApp, NSObject annotation)
{
    string _uri = url.ToString();
    string code = _uri.Substring(_uri.LastIndexOf('=') + 1);

    LoadApplication(new App(true, code));
    return true;
}

谁能用这个给我指出正确的方向?我真正需要做的就是从 OpenUrl 方法导航到 PCL

中的视图

对于任何感兴趣的人,我通过替换

来排序
LoadApplication(new App(true, code));

App.Current.MainPage = enterPin();

调用

public Page enterPin()
 {
       return new EnterPinPage(SimpleIoc.Default.GetInstance<ISecureStorage>(), code, 1);
 }