API 29 中与隐私相关的更改之一是,除非应用程序处于"焦点"状态,否则它无法访问剪贴板。
我正在尝试修复在主窗口(而不是菜单中(中具有"粘贴"按钮的应用程序,因此我需要在用户启动或切换到应用程序时检查剪贴板是否具有合适的数据(以便决定是否应启用"粘贴"按钮(。我希望当应用程序在OnResume中时,是否已经允许它访问剪贴板,但似乎在这种情况下,即使剪贴板包含主剪辑,getPrimaryClip仍然返回null。
关于我应该等待哪个事件以确保我的应用程序已被允许访问剪贴板的任何建议?
没关系,我在如何使用 onWindowFocusChanged(( 方法中找到了答案?。
诀窍是在 hasFocus 布尔参数为 true 时检查 OnWindowFocusChanged 中的剪贴板。