【发布时间】:2018-07-18 07:27:05
【问题描述】:
在我的 Xamarin Forms 应用程序中,我想通过单击按钮打开另一个应用程序。该示例适用于 facebook 应用程序,但它也应该适用于其他应用程序。我读了很多关于here 和here 的内容。基于两个解决方案/链接,我在我的 iOS 项目中生成了一个类:
[assembly: Xamarin.Forms.Dependency(typeof(OpenAppiOS))]
namespace FieldServicePortable.iOS.Common
{
public class OpenAppiOS : IOpenApp
{
public OpenAppiOS() { }
public void OpenExternalApp()
{
var nsurl = "facebook://";
var request = new NSUrl(nsurl);
try
{
var isOpened = UIApplication.SharedApplication.OpenUrl(request); //Open App
}
catch (Exception ex)
{
throw ex;
}
}
}
}
我还通过这行扩展了Info.plist
<key>LSApplicationQueriesSchemes</key>
<array>
<string>facebook</string>
</array>
我不想在共享项目中的编码部分打扰您,因为这部分有效。
点击应用中的按钮后,代码将被执行,但没有任何反应。甚至没有抛出异常。变量isOpened 的值为false。
所以我的问题是:
- 当然,我的代码中是否遗漏了什么?
- 对应用程序有什么要求,应该打开吗?
- iOS 中是否需要一些配置?
【问题讨论】:
-
仅供参考,称为深度链接
标签: c# ios xamarin.forms