<html>
<body>
<a href="sms:+24321&body=This%20is%20the%20body">Click Me!</a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
单击上面的链接时,iOS会成功打开本机iOS消息应用程序.如果用户以前在手机的后台打开了iOS消息应用程序,则iOS会正确传递链接中包含的查询参数,例如:(24321)和正文:(这是正文),但如果是用户没有iOS消息打开,然后iOS打开消息,但不打开消息和身体填写.
这不是iOS 10上的问题,似乎已经在iOS 11中引入.
这显然是 iOS 11 的一个错误。
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]];
}
Run Code Online (Sandbox Code Playgroud)
通过两次调用,它首先打开消息应用程序,然后传递正确的参数。
通过双重调用,它可以工作,但这是一个糟糕的解决方法!
网络代码也应该发生同样的情况。
我只能建议您通过此链接向 Apple 报告错误。
这个答案不是为了赏金,我只是想与你分享我的测试。;)
| 归档时间: |
|
| 查看次数: |
567 次 |
| 最近记录: |