Xamarin深度链接问题



我已经建立了一个简单的Xamarin应用程序来尝试使用深度链接。当我使用IOS模拟器时,深度链接工作得很好。但在使用安卓设备进行调试时,我似乎无法让它在安卓系统上运行。

我已经像一样设置了我的MainActivity.cs

[IntentFilter(new[] { Intent.ActionView },
Categories = new[] {
Intent.ActionView,
Intent.CategoryDefault,
Intent.CategoryBrowsable
},
DataScheme = "photocapture",
DataHost = "PhotoCapture",
DataPathPrefix = "/photocapture/")
]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
protected override void OnCreate(Bundle savedInstanceState)
{
TabLayoutResource = Resource.Layout.Tabbar;
ToolbarResource = Resource.Layout.Toolbar;
base.OnCreate(savedInstanceState);
global::Xamarin.Forms.Forms.Init(this, savedInstanceState);
AndroidAppLinks.Init(this);
LoadApplication(new App());
}
}

然后在我的App.cs中,我有一个OnAppLinkRequestReceived的覆盖

protected override async void OnAppLinkRequestReceived(Uri uri)
{ .... }

在Android设备上,我下载了一个HTML文件,其中包含以下href

<html>
<head>
<title>Product 12345</title>
</head>
<body>
<a href="photocapture://PhotoCapture.Views.PhotoCapturePage?id=123">Deeplink</a>
</body>
</html>

当我在Android设备上单击此链接时,应用程序不会打开,OnAppLinkRequestReceived也不会在调试器中捕获。

此外,如果我搜索安卓设备的应用程序名称,它确实会出现。问题就出现在从外部源单击深层链接时。

我是错过了一步还是做错了什么?

我在IOS:中使用的链接

photocapture://PhotoCapture.Views.PhotoCapturePage?id=123

在android上不起作用。我不得不把photocapture://改成http://才能让它工作。所以最后一个链接看起来像:

http://PhotoCapture.Views.PhotoCapturePage?id=123

相关内容

  • 没有找到相关文章

最新更新