gpt4 book ai didi

ios - 如何将文件添加到主包的/Library/Sounds 目录?

转载 作者:技术小花猫 更新时间:2023-10-29 11:23:32 31 4
gpt4 key购买 nike

根据 Apple's documentation , ~/Library/Sounds 中的声音文件将在尝试播放声音时由系统搜索。如何将声音文件添加到此文件夹?

我试图在运行时写入文件夹,但没有权限。我在 xcode 中添加了一个 Library/Sounds 文件夹,但它似乎没有复制过来。

enter image description here

xcode -> 窗口 -> 设备,选择我的应用程序并显示容器,文件夹不存在 enter image description here

为了添加一些上下文,我正在为解析推送通知制作自定义声音。服务器人员告诉我,当向许多用户广播时,在有效负载中为每个用户发送自定义声音字符串太困难了。作为解决方法,我尝试使用单个声音文件,每次用户选择新声音时该文件都会被动态覆盖。

因此声音文件需要由系统自动检测,并且可以在运行时由应用程序修改。将文件添加到主包将不起作用,因为它是只读的。我希望 ~/Library/Sound 中的文件是可编辑的。

此时我不知道如何进行。任何帮助将不胜感激。

更新:我错误地尝试使用

在运行时创建目录
        try fileManager.createDirectoryAtPath("Library/Sounds", withIntermediateDirectories: true, attributes: nil)

正确的代码应该是

        let libraryDir = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.LibraryDirectory, NSSearchPathDomainMask.UserDomainMask, true)
let directoryPath = "\(libraryDir.first!)/Sounds"
try fileManager.createDirectoryAtPath(directoryPath, withIntermediateDirectories: true, attributes: nil)

My solution to the custom sound problem.

最佳答案

我也遇到过这个问题。您必须以编程方式创建 Library/Sounds 目录并将自定义声音移入其中。

let soundsDirectoryURL = fileManager.urls(for: .libraryDirectory, in: .userDomainMask).first!.appendingPathComponent("Sounds")

//attempt to create the folder
do {
try fileManager.createDirectory(atPath: soundsDirectoryURL.path,
withIntermediateDirectories: true, attributes: nil)
} catch let error as NSError {
print("Error: \(error.localizedDescription)")
}

关于ios - 如何将文件添加到主包的/Library/Sounds 目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35418988/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com