刚接触APP开发,求指教。
功能描述:在其他app复制URL,然后切到OSapp,就显示这个投递对话框。
思路:我想应该是操作剪切板吧
ClipboardManager cm =(ClipboardManager)getApplication().getSystemService(Context.CLIPBOARD_SERVICE);
Log.d("MainActivity", "onClip: "+String.valueOf(cm.hasPrimaryClip()));
上面这段代码, 放onCreate、onResume里均为fasle,但放在onCreate的点击事件里,点击触发却能true,为何?我认为本应该放onResume才对吧
原来是要延迟一下
自AndroidQ开始,只有当应用处于可交互情况才能访问剪切板和监听剪切板变化,在onResume回调也无法直接访问剪切板,这么做的好处是避免了一些后台应用疯狂监听响应剪切板的内容。
需要监听APP生命周期,切换回APP时poseDelay一下即可继续访问剪切板,AndroidQ以下不用