我想知道如何覆盖 Android 中的默认文本复制机制,以复制文本以及元数据,如果从浏览器复制,则复制 URL,如果从精细文件复制到剪贴板管理器,则复制文件名?
在任何 Android 设备上普遍实现这一点的方法是什么?
更新
用例:
- 我在 Android 设备上打开 chrome。
- 搜索一些东西并打开一个网站。
- 我选择一些文本并复制它。
- 我打开我的应用程序并粘贴文本。
- 除了文本,我希望保存网站 URL。
我可以获得复制的文本,但不确定如何在不单独复制的情况下获取 URL?
我想知道如何覆盖 Android 中的默认文本复制机制,以复制文本以及元数据,如果从浏览器复制,则复制 URL,如果从精细文件复制到剪贴板管理器,则复制文件名?
在任何 Android 设备上普遍实现这一点的方法是什么?
用例:
我可以获得复制的文本,但不确定如何在不单独复制的情况下获取 URL?
在任何 Android 设备上普遍实现这一点的方法是什么?
从 Android 3.0 开始,Android 已经支持具有多条数据的剪贴板项目的概念。ClipData
是剪贴板数据的包装,它可以有“一个或 Item 实例,每个实例都可以保存一个或多个数据项的表示”。因此,没有什么可以阻止开发人员存储“如果从浏览器复制的 URL,如果从精细文件复制的文件名”以及一些文本。
然而:
您无法强迫 Android 应用程序开发人员创建此类剪贴板项目
您无法强迫 Android 应用程序开发人员使用此类剪贴板项目(大多数应用程序将强制ClipData
转换为文本表示并使用它)
还有另一种使用 url 复制文本的方法
您可以在您的应用程序中使用 android WebView并从该WebView复制文本,然后您可以使用以下代码获取活动 url
String webUrl = webView.getUrl();
希望它能解决你的问题