随着iOS 14的发布,剪切板的滥用也被大家所知晓。只要是APP读取剪切板内容,系统都会在顶部弹出提醒,而且这个提醒不能够关闭。这样,大家在使用APP的过程中就能够看到哪些APP使用了剪切板。
正好我们自己的应用也使用了剪切板,升级了iOS 14之后弹的着实让人心烦。就想着怎么处理一下,翻了一下`UIPasteboard`的文档,发现相关的内容并不多。
读取`UIPasteboard`的`string`、`strings`、`URL`、`URLs`、`image`、`images`、`color`、`colors`的时候会触发系统提示。
使用`hasStrings`、`hasURLs`、`hasImages`、`hasColors`等方法的时候不会触发系统提示。
那么思路就是尽可能少的去调用会触发系统提示的方法,根据其他方法去判断确实需要读取的时候再去调用那些方法。
根据我们自己的情况,只有判断`hasStrings`为`YES`就去读取,又不能清剪切板,其实还是有点不尽人意,然后又看到这个属性:
```
@property(readonly, nonatomic) NSInteger changeCount;
```
```
The number of times the pasteboard’s contents have changed.
Whenever the contents of a pasteboard changes—specifically, when pasteboard items are