如何在iOS 10中启用“允许完全访问”?
此方法在iOS 10中无效
-(BOOL)isOpenAccessGranted{
return [UIPasteboard generalPasteboard];
}
答案 0 :(得分:2)
这是一个客观的c版
var captcha="<?php echo $_SESSION['final']; ?>";
答案 1 :(得分:1)
User @ user979686在以下帖子中发布了一个解决方案,但我未经过测试。
https://stackoverflow.com/a/38903406/4792451
为清晰起见,请在此处发布代码。
let originalString = UIPasteboard.general.string
UIPasteboard.general.string = "TEST"
if UIPasteboard.general.hasStrings
{
UIPasteboard.general.string = originalString
hasFullAccess = true
}
else
{
hasFullAccess = false
}
答案 2 :(得分:1)
我今天一直在测试它,看起来您不必在粘贴板上设置一些内容来验证您是否有权访问。您需要做的就是测试粘贴板上是否有东西。当然,如果粘贴板恰好是完全空的,那么它不是一个详尽的测试,因此在这种情况下你需要设置一些东西,但是你已经排除了被替换的东西。这是我想出来的
func checkFullAccess() -> Bool
{
if #available(iOSApplicationExtension 10.0, *) {
let pasty = UIPasteboard.general
if pasty.hasURLs || pasty.hasColors || pasty.hasStrings || pasty.hasImages {
return true
} else {
pasty.string = "TEST"
if pasty.hasStrings {
pasty.string = ""
return true
}
}
} else {
// Fallback on earlier versions
var clippy : UIPasteboard?
clippy = UIPasteboard.general
return clippy != nil
}
return false
}
在我的测试中,我发现所有检查(hasString,hasImages等)都会返回false,即使关闭了完全访问权限的粘贴板上的内容也是如此。如果它们都返回false,那么它可能真的是空的,所以你尝试在那种情况下设置一些东西。如果它不是空的,那么你没有访问权限,你将不会更换任何东西,如果它是空的并且你有访问权限,那么文本将被放置在那里,你可以将它返回到之前的状态。
HTH, 麦克