最近,iOS更新了iOS 10,并且对开发人员进行了某些更改,其中一项更改是,我们现在无法像以前那样检查允许完全访问,如下所示
-(BOOL)isOpenAccessGranted{
return [UIPasteboard generalPasteboard];
}
我搜索了最新的Developer Guide for UIPasteboard,但无法解决。有没有人对此有适当的解决方案。
最佳答案
iOS11及以上版本非常简单。
iOS10解决方案:检查所有可复制类型,如果其中一种可用,则您具有完全访问权限,否则没有权限。
-迅捷4.2--
override var hasFullAccess: Bool
{
if #available(iOS 11.0, *){
return super.hasFullAccess// super is UIInputViewController.
}
if #available(iOSApplicationExtension 10.0, *){
if UIPasteboard.general.hasStrings{
return true
}
else if UIPasteboard.general.hasURLs{
return true
}
else if UIPasteboard.general.hasColors{
return true
}
else if UIPasteboard.general.hasImages{
return true
}
else // In case the pasteboard is blank
{
UIPasteboard.general.string = ""
if UIPasteboard.general.hasStrings{
return true
}else{
return false
}
}
} else{
// before iOS10
return UIPasteboard.general.isKind(of: UIPasteboard.self)
}
}