Я пытаюсь загрузить файл .obj для создания объекта MDLAsset
в приложении MacOS Swift. Первоначально я создавал актив следующим образом:
let myAsset = URL(fileURLWithPath: "/Users/me/Development/MyProject/MyApp/Assets.xcassets/arrow.dataset/arrow.obj")
arrowMdl = MDLAsset(url:arrow).object(at: 0)
Очевидно, что это не сработает, когда приложение находится в производстве, поэтому, основываясь на этом ответе SO, я попытался добавить файл . obj в пакет, а затем загрузите его, например:
let path: String = Bundle.main.path(forResource: "Arrow", ofType: "bundle")!
do {
let arrowPath = try String(contentsOfFile: path)
}
catch let error as NSError {
print(error.description)
}
Однако я продолжаю получать следующую ошибку:
Error Domain=NSCocoaErrorDomain Code=257 "The file “Arrow.bundle” couldn’t be opened because you don’t have permission to view it."
Я позаботился о том, чтобы установить права на чтение/запись для всех.
Что я делаю не так? Или есть другой способ загрузить этот актив? Похоже, что для инициализации MDLAsset
требуется URL-адрес: https://developer.apple.com/documentation/modelio/mdlasset
let path: String = Bundle.main.path(forResource: "arrow", ofType: "obj")
Обратите внимание на чувствительность к регистру и тип имени ресурса. - person Don   schedule 04.12.2017