你可能也好奇过:为什么安卓手机早就支持给不同应用单独设置音量,而iPhone却迟迟没有这个功能?比如晚上刷短视频时声音太大吵到家人,切到导航又嫌声音太小听不清——如果每个App都能有自己的音量档位,该多方便。
好消息是,虽然iOS系统本身没有提供「按App单独设置音量」的功能,但通过快捷指令的自动化,我们完全可以实现类似的效果:打开某个App时自动切换到指定音量,关闭App后恢复之前的音量。而且,iOS 27为快捷指令带来的新储存功能,让这件事变得比以往更简单。
iOS 27新能力:快捷指令有了"记忆"
以前快捷指令想保存数据,只能靠剪贴板、备忘录、文件等方式,绕来绕去很麻烦。iOS 27新增的储存功能,可以让快捷指令在内部保存持久化数据,并在之后继续读取。简单说,就是给快捷指令装了个"小数据库",保存配置、列表和状态信息都变得顺手多了。
这个储存功能还提供了一个全局值选项:关闭全局值时,储存的内容只能在当前指令中读取;打开全局值,任何指令都能访问和更改。本文实现的独立音量控制功能,需要两个指令配合使用,所以在27版本的指令中,所有储存相关操作都要开启全局值。
工作原理:记住你进入App前的音量
这套方案的核心逻辑其实很直白,就是"记住来时的样子,走时再变回去"。具体来说,它做了这几件事:
- 保存当前媒体音量,以便退出App时恢复
- 储存当前App名称,退出时才能知道退出的是哪个App
- 使用App过程中调整过音量,退出时自动获取调整后的音量并保存
- 重新获取之前保存的媒体音量,恢复进入App前的原始音量
这样,下次打开对应App时,就会自动使用上一次保存的音量。在这个快捷指令中,App名称+音量作为数据索引,音量数值作为保存内容。结构简单,不需要额外创建文件,也更适合长期运行的自动化。
旧版本兼容方案:用文件读写替代储存
由于储存空间是iOS 27新增功能,旧版本系统无法使用。为了兼容iOS 27以下的版本,作者将储存部分替换为文件操作:整体逻辑保持不变,只是数据保存方式不同。文件会存放在快捷指令的Shortcuts文件夹中,保存文件时如果文件已存在则覆盖,否则同名文件会不断增加,无法获取更新后的音量信息。
这里有个细节需要注意:获取App音量文件的操作需要关闭"未找到时报错"。因为关闭App自动化会生成该文件,但第一次打开App时文件还不存在,如果开启报错,指令就会出现错误提示。
一个已知限制:铃声与媒体音量的"纠缠"
快捷指令的"获取设备的详细信息"操作中能获取当前音量,但没有提供铃声和媒体音量的选择。早期设定音量时也没有做区分,虽然现在已经更改,但作者还是希望苹果能对"获取当前音量"功能早些进行补充。
目前,如果开启了"用按钮调整铃声",快捷指令获取的当前音量就只能是铃声音量,而不是媒体音量。只能通过关闭"用按钮调整铃声"功能,让快捷指令获取媒体音量,本文的指令才能顺利使用。
使用前需要知道的两件事
设置好指令后,第一次打开对应App时,音量会自动归零,需要手动调整一次。另外,每次开启或关闭App自动调整音量时,音量条都会出现——这是正常现象,不是bug。
这件事本身没那么神奇,真正有意思的是:苹果虽然没有直接给你想要的功能,但通过快捷指令这个"乐高积木",你依然能拼出接近理想体验的方案。随着iOS 27给快捷指令带来更强的数据能力,类似的"曲线救国"玩法可能会越来越多。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.