<html> <body> <a href="sms:+24321&body=This%20is%20the%20body">Click Me!</a> </body> </html>
单击上面的链接时,iOS会成功打开本机iOS Messages应用程序.如果用户以前在手机的后台打开了iOS消息应用程序,那么iOS会正确传入链接中包含的查询参数,例如to:(24321)and body :(这是正文),但如果用户尚未打开iOS消息,则iOS会打开消息,但不会打开消息并填写正文.
这在iOS 10上不是问题,似乎已在iOS 11中引入.
解决方法
这显然是一个iOS 11的bug.
与openURL相同的错误,使用此代码,没有if状态,我们有相同的结果:
NSString *sms = @"sms:+1234567890&body=This is sms body."; NSString *url = [sms stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]]; if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 11.0) { [[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]]; }
通过双重调用,它首先打开消息应用程序,然后传递正确的参数.
通过双重调用它可以工作但它是一个不好的解决方法!
Web代码也应该这样.
我只能建议您在this链接向Apple报告错误.
这个答案不是为了赏金,我只想和你分享我的考试.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。