安卓剪贴板的问题

2023-03-07 03:22:18 +08:00
 GSNote

我是想让 n 个条目依次进入剪贴板,让剪贴板一行一个条目。 起初以为是要用 ClipData 的 addItem 配合 cliboard.setPrimaryClip, 实践发现,剪贴板里根本没有内容(使用讯飞输入法的剪贴板查看) 然后改成了这样, 如果循环不加延迟,会随机遗漏条目,所以后面加了个延迟,达到效果了。 就是疑惑那个 additem 的方式为啥不可以

8689 次点击
所在节点    Android
5 条回复
ysy950803
2023-03-07 08:27:59 +08:00
你看下 addItem 的源码吧,很可能不是你预期的功能。然后这个延迟多半也是因为涉及系统服务的跨进程调用所以不是同步执行的,加延迟的方式也不是特别靠谱其实,不同手机性能不一样,还是可能遗漏。最好是研究下 set 方法看看有没有什么其他参数或者回调保证成功率。
GSNote
2023-03-07 10:54:38 +08:00
@ysy950803 感谢指点。
daiisdai
2023-03-07 11:36:41 +08:00
用 StringBuilder 呢? 所有 item 都 append 上去,后面加换行符 /n , 最后将 StringBuilder 的内容添加到剪切板

此方法没有实践过
GSNote
2023-03-07 12:07:18 +08:00
@daiisdai 这种不行,变成打包复制了。剪贴板里不是靠换行来分行,是一个复制动作产生一行,我原先以为 set 方法会自动按条操作 clipdata 里的数据。
daiisdai
2023-03-07 12:21:45 +08:00
@GSNote 好的,学习了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/921766

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX