Xamarin forms phone call在iOS上不起作用

Xamarin forms phone call在iOS上不起作用,ios,xamarin.forms,phone-call,Ios,Xamarin.forms,Phone Call,我有以下代码,我正在打电话。它正在安卓系统上工作,但不是iOS private void Call_Clicked(object sender, EventArgs e) { //var phoneDialer = CrossMessaging.Current.PhoneDialer; //if (phoneDialer.CanMakePhoneCall) // phoneDialer.MakePhoneCall("+961157

我有以下代码,我正在打电话。它正在安卓系统上工作,但不是iOS

  private void Call_Clicked(object sender, EventArgs e)
    {
        //var phoneDialer = CrossMessaging.Current.PhoneDialer;
        //if (phoneDialer.CanMakePhoneCall)
        //    phoneDialer.MakePhoneCall("+9611578268");
        Device.OpenUri(new Uri("tel:738284739"));
    }

我尝试了注释代码和未注释代码,两者都不起作用。有什么建议吗?

您应该在本机级别上使用依赖项服务,因为预执行将很高,并且很容易管理本机API。请检查下面的实现,它将帮助您

在PCL项目中创建接口-

 public interface ICall
 {
   bool OpenCallAction(string phoneNumber);
 } 
在IOS本机项目中创建类-

public class ICallService : ICall
{
    public bool OpenCallAction(string phoneNumber)
    {
        var number = new Uri(String.Format("tel:{0}", phoneNumber));
        return UIApplication.SharedApplication.OpenUrl(number);
    }
 }
public class ICallService : ICall
{

    public bool OpenCallAction(string phoneNumber)
    {
        var number = new Uri(String.Format("tel:{0}", phoneNumber));
        return true;
    }
在Android本机项目中创建类-

public class ICallService : ICall
{
    public bool OpenCallAction(string phoneNumber)
    {
        var number = new Uri(String.Format("tel:{0}", phoneNumber));
        return UIApplication.SharedApplication.OpenUrl(number);
    }
 }
public class ICallService : ICall
{

    public bool OpenCallAction(string phoneNumber)
    {
        var number = new Uri(String.Format("tel:{0}", phoneNumber));
        return true;
    }
在PCL项目中调用依赖项服务ViewModel/View

 DependencyService.Get<ICall>().OpenCallAction("738284739")
DependencyService.Get().OpenCallAction(“738284739”)

您是否在真正的设备上尝试过此功能?这不是在SimulatorI中实现的,在Android的真实设备上尝试过,效果很好!你在真正的iOS设备上试过吗?你应该能够在真正的设备上调试它,也可以在iOS设备上调试,而不必去商店。无论如何,我的意思是:“开放式手机应用”在iOS模拟器上不可用,因为苹果没有实现它。这就是为什么它似乎不起作用。在真正的设备上,我很有信心它会work@mohammadanouti您无需将应用程序放在应用程序商店中进行测试。您可以在调试时测试它,并且它是免费的。您可以参考:。同样,电话呼叫在iOS模拟器上不起作用,您需要在真实设备上进行测试。未处理的异常:System.NullReferenceException:对象引用未设置为对象的实例发生,在调用OpenCallAction时,它会给出我的null引用异常。请将代码粘贴到获取异常的位置,好吗?如何实现依赖服务请检查这里-是的,@DineshPhalwadiya是正确的错过了代码thanksWelcome@Pratius