最近,修改 iOS 充电提示音的话题突然在社交网络上火了起来。只需要通过简单的设置,你可以告别 iOS 那千篇一律的提示音,改成自己喜欢的音效。
如果只是写一篇文章来介绍如何实现这一功能,那也太不够「少数派」了。本文就将从另一个角度出发,除了介绍此功能如何实现,还能「授人以渔」地让你知道如何扩展它的玩法。
如何修改提示音
其实,实现的原理是通过快捷指令的自动化功能,让设备在连接电源时播放一段音频,从而达到「替换」的效果。做法也非常简单,只要跟着下面的步骤来操作,完全称得上「包教包会」。
第一步:准备一段音频
既然要「替换」音频,我们首先就得准备一段音频。你可以直接在网上下载相关素材,也可以通过录屏截取等方式来录制自己喜欢的音频。如果是录屏截取的话,你还得准备一个能够将视频转换为音频的 app。
我在这里用的是 易剪,它不但可以从视频提取音频,还可以显示波形图并进行剪辑,从而剪辑出更加完整清晰的素材。
完成音频剪辑后,你需要将音频保存至「文件」app。我建议直接保存至 iCloud Drive 里的「Shortcuts」文件夹(也就是快捷指令 app 对应的文件夹),原因会在后文提及。
建议保存至 iCloud Drive 的「Shortcuts」文件夹
此时,你需要记住 app 将音频导出为何种格式。一般来说,导出的格式会是 m4a 或 mp3。如果你不确定的话,也可以在「文件」中长按并选择「简介」,随后即可看到包括后缀名在内的文件全称。
要记清文件格式
第二步:在快捷指令 app 中设置自动化
保存好音频之后,只需要打开快捷指令app 并进行简单的设置即可。首先在「自动化」界面点击右上角的加号并选择「创建个人自动化」,进入「充电器」菜单并勾选「已连接」。然后,只需要添加两个动作就能实现音频「替换」。
第一个动作是「获取文件」。此动作会默认勾选「显示文稿选择器」,我们需要手动关闭它,随后就会出现「文件路径」的输入框。由于系统限制,快捷指令只能自动获取 iCloud Drive/Shortcuts/ 路径下的文件,并且在输入文件名时,还需要加上后缀名。这也正是我在前面建议将音频保存至此,并且需要记住音频格式的原因。
第二个动作则为「播放声音」,直接添加在「获取文件」后即可。
在保存前的最后一步,你需要手动关闭「运行前询问」,只有这样,设备才能自动在接入电源时播放声音。
完成这些设置以后再接上电源,设备的充电提示音就被「替换」掉了。
动作原理及常见问题
正如前文所说,此动作是在接入电源时自动播放音频。因此难免会出现一些不理想的情况:音频与原本的提示音混在一起、音频有延迟……
由于这一动作的性质是「播放音频」,而系统提示音的性质是「播放通知」,系统提示音永远会优先播放,这也正是为什么音频会与原本的提示音混在一起。此时,只需要开启静音即可消除掉原本的提示音。
音频延迟则是正常现象,毕竟设备需要先检测到你接入了电源,随后再运行自动化,这期间一般会有 1s 以内的延迟。但如果延迟时间超过了 1s,就可能是其他问题所导致的。
首先,有可能是音频前面本身就有一段空白。这样即使准确地播放了音频,前面的留白也会造成「音频延迟」的错觉。这种情况,你只需要把空白部分裁剪掉就行了。
裁剪掉音频前面的留白
第二种情况比较常见,尤其是在设备空间不足时,系统会自动删除一些已经保存至 iCloud Drive 的本地文件。而 Shortcuts 文件夹正好是在 iCloud Drive 上的,因此,系统有可能在设备空间吃紧时,将原先的音频删除掉。
这样一来,当你需要播放音频时,系统会重新下载音频,自然也就导致了音频延迟。这一问题也有解决方案,那就是将音频嵌入快捷指令。
嵌入的原理则是利用 Base64 编码,将音频转化为文字并存储在自动化里。每次播放时,系统只需要在本地进行解码,不会因为文件被删而需要重新下载,也不需要依赖网络。
为了方便操作,我做了一个编码转换的快捷指令(⏬ 点此下载)。运行后,你只需要选择想要播放的音频就行了,快捷指令会自动帮你编码完成并复制到剪贴板。
Base64 编码
随后,你需要修改刚刚已完成的自动化。删除「获取文件」,并先后添加「文本」和「Base64 编码」。同时,你还要点击「Base64 编码」中的「编码」并将其修改为「解码」。
将刚才获取的 Base 64 编码粘贴进「文本」中
这样一来,你就不用担心音频被系统清理掉而不时出现延迟问题了。
扩展玩法
既然已经了解了修改提示音的原理,那么我们也可以由此来实现更多有趣的玩法。我们只需要找到支持关闭「运行前询问」的自动化,比如特定时间、飞行模式等自动化均可以用来发掘更多玩法。
支持关闭「运行前询问」
配合上快捷指令和丰富的第三方 app 动作,你可以实现诸如修改低电量警告音、打开勿扰模式时自动开启深色模式、连接上 CarPlay 车载时自动播放某个歌单等操作。
不仅如此,如果你有支持 NFC 的智能手环,还可以用它与快捷指令的 NFC 自动化联动,实现「扫描手环,记录饮水」的功能。
扫描手环记录饮水