在我的Xamarin表单应用程序中,我想通过单击按钮打开另一个应用程序。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);
}
catch (Exception ex)
{
throw ex;
}
}
}
}
我也延长了
Info.plist
按这条线
<key>LSApplicationQueriesSchemes</key>
<array>
<string>facebook</string>
</array>
我不想为共享项目中的编码部分打扰您,因为这部分工作正常。
单击应用程序中的按钮后,代码将被执行,但不会发生任何情况。甚至没有引发异常。变量的值
isOpened
是
false
.
所以我的问题是:
-
当然,我的代码中有遗漏吗?
-
应用程序有什么要求吗?应该打开哪个?
-
iOS中是否需要某些配置?