Xamarin构成了消息传递插件

我刚刚测试了“新的”Xamarin表单跨平台插件。 它可以正常工作,当您要发送消息时,您可以导航到手机消息应用程序。 正如我所知,操作系统限制它不允许你直接从应用程序内发送短信,如果你在iOS上全部使用NS api,这是一样的吗? 如果您不想启用短信应用程序,那么解决方案就是拥有后端/ api,但是它还需要的不仅仅是应用程序和单独的短信网关。 所以我的问题是要知道是否有一个自定义的解决方法,如果用户允许它直接从应用程序发送短信?

在Android中,您可以使用SmsManager类发送Sms。 Xamarin的文档中有一个示例,说明如何执行此操作。您需要添加SEND_SMS权限。 以下是该网站的代码段

 SmsManager.Default.SendTextMessage ("1234567890", null,"Hello from Xamarin.Android", null, null); 

iOS不允许我们直接使用API​​直接发送短信。 这是Apple强加的限制。 推荐的方法是使用iPhone中安装的默认应用程序。 我们可以从App中发送消息的最佳方法是使用MFMessageComposeViewController类。 有了这个,我们可以在App中呈现一个UI(由iOS提供),用户可以在其中填充“Body”和“Recipient”字段并发送Sms。

这篇博文有一个如何在Xamarin中使用MFMessageComposeViewController的例子

从iOS 4开始,您可以使用MFMessageComposeViewController ,它显示在您的应用程序内发送MFMessageComposeViewController信息的界面。 您可以使用Xamarin-Forms-Labs项目或Xamarin.Plugins pcl库中的PhoneService类。

这些项目还提供与在Android中发送短信息相同的function。