

一日一技 | 如何在 Android 10 上继续使用你最爱的剪贴板工具
source link: https://sspai.com/post/59485
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

出于保护用户隐私信息的目的,Android 对各类应用能够索取到的权限不断收紧。从用户角度来说,我们无需再绞尽脑汁和过度索取权限的应用斗智斗勇,这无疑是新系统带来的一大利好。
关联阅读: Android 10 里有哪些「用了就回不去」的好功能?
但凡事都有两面,在系统升级到 Android 10 以后,以往使用各类剪贴板工具的用户会发现不少剪贴板扩展应用已无法正常工作,因为 Android 10 限制 了应用的后台剪贴板内容获取行为。
如果你想要在 Android 10 上继续使用这类工具又该怎么办呢?本文将提供两种方法。
使用相关应用提供的 ADB 命令
借助于 ADB 权限,一些应用能够绕过系统限制达到继续在后台监听剪贴板的目的。
这里以剪纸堆 为例,将手机连接到电脑后,我们需要开启手机的开发者模式,启用「USB 调试」功能并授予电脑 USB 调试权限。之后在电脑上打开命令行工具,按照应用所给出的提示执行如下命令:
adb -d shell appops set com.catchingnow.tinyclipboardmanager SYSTEM_ALERT_WINDOW allow; adb -d shell pm grant com.catchingnow.tinyclipboardmanager android.permission.READ_LOGS; adb shell am force-stop com.catchingnow.tinyclipboardmanager;
执行完毕后剪纸堆会被关闭,我们手动再次打开应用即可生效。

同样利用了这一「漏洞」的应用还有我们所熟知的Tasker,需要注意的是,不同应用所需执行的 ADB 命令有所不同, 不可照搬 。一般而言,相关应用会在我们首次使用时给出提示,我们只需要根据提示进行操作即可。
但这一方法也有局限,如果开发者没有给出相应的 ADB 命令,我们便束手无策了。

关联阅读:
Riru-Clipboard Whitelist
如果说手动每个应用开启相应权限是发扬个性,那么针对这一共性问题,有没有一个统一、方便的控制方法呢?
答案是肯定的,这里我们就得再次请出 Magisk 这一神器了。存储重定向的开发者 Rikka 为解决 Android 10 的剪贴板后台读取权限问题,制作了 Riru-Clipboard Whitelist 这一模块。
我们可以在 Magisk 仓库中搜索安装这一模块,注意,使用模块的前提是:
- 安装有最新的 Riru-Core 模块(你同样可以在 Magisk 官方仓库中找到它)
- 系统为 Android 10

模块安装完毕后,我们需要在文件管理器中定位到如下路径:
/data/misc/clipboard/whitelist.list
之后,将所需授予权限的应用包名复制并手动添加到 whitelist.list
这一文件当中。遇到其他需要授权的应用均可采取这个方法,每个新添加的包名单独占一行即可。

相比于第一种方法,这一方法更具普适性 。以Texpand Plus 为例,该应用在系统升级至 Android 10 后内置的剪切板短语亦随之失效,且开发者尚未给出自己的解决方案。为了使应用能够再次具备监控剪贴板的功能,我们只需将其包名 com.isaiasmatewos.texpandpro
添加到上述文件中并保存更改,应用便能在后台监控剪贴板内容了。

理论上来说,使用 Riru 这一模块能够给予任意应用监控剪贴板的权限,我们可以按需操作。但此方法同样有一定的上手门槛,如果你不了解 Magisk 和 Magisk 模块,不妨先阅读少数派此前关于 Magisk 的介绍文章。
关联阅读: Magisk Manager 详解
> 下载少数派客户端、关注少数派公众号,get 玩转多平台的更多技巧 :smirk:
> 少数派 8 周年,正版软件 /付费教程 大放价 :tada:
Recommend
-
23
摄影:产品经理 这个锅巴不好吃 Scrapy自带的 FilesPipeline
-
11
一日一技:使用二分法排查正则表达式的异常 发表于 2020-0...
-
7
一日一技:使用 Git 在错误的分支上修改了代码怎么办? 发表于 ...
-
9
一日一技:什么情况使用静态方法和类方法? 发表于 2021-1...
-
5
一日一技:如何在浏览器中使用npm包? 发表于...
-
3
在之前的文章:一日一技:使用装饰器简化大量 if…elif…代码发布以后,有很多同学说想看后续,如何在装饰器中表示大于小于。甚至有同学每周来催一次稿:
-
3
不刷机体验 Android 新系统,这个自带功能助你一键尝鲜
-
10
一日一技:使用Python翻译HTML中的文本字符串 2022-06-20 | Python |
-
5
两种方法让 Windows 10 也能运行 Android 应用
-
1
旧版 Android 应用安装包难找,如何自己动手备份?
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK