Не могу найти, где разместить файлы для симулятора Xcode на моем Mac
У меня возникли проблемы с поиском места для размещения файлов на моем Mac, чтобы мой симулятор Xcode увидел их.
Работаю над разделом «загрузка файлов» для моего приложения. Прежде чем я вызову UIDocumentPickerViewController, я вызываю свою собственную функцию printSimDir , которую я использую, чтобы открыть нужную папку на моем Mac, чтобы я мог поместить туда свои файлы.
И там у меня есть три файла: "blank_inv, invoice_001.cvs и example.mp3"
Однако в моем симуляторе я не вижу этих файлов. Однако я продолжаю видеть один файл xls, который не является ни одним из трех вышеуказанных файлов. Так что в какой-то момент я понял это правильно. Но не больше.
Я понимаю, что моя проблема также может заключаться в том, как я вызываю UIDocumentPickerViewController, поэтому я также включаю этот код.
case ButtType.file.rawValue:
printSimDir()
let supportedTypes: [UTType] = [UTType.spreadsheet, UTType.commaSeparatedText, .mp3]
let pickerViewController = UIDocumentPickerViewController(forOpeningContentTypes: supportedTypes)
pickerViewController.delegate = self
pickerViewController.allowsMultipleSelection = false
present(pickerViewController, animated: true, completion: nil)
...
extension UploadInv: UIDocumentPickerDelegate {
func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentsAt urls: [URL]) {
for url in urls {
guard url.startAccessingSecurityScopedResource() else {
print ("error")
return
}
xFile = XFile(fileUrl: url, key: "filename")
myStartUPButt.isEnabled = true
do { url.stopAccessingSecurityScopedResource() }
myStatus.text = xFile?.filename
}
}
func documentPickerWasCancelled(_ controller: UIDocumentPickerViewController) {
controller.dismiss(animated: true, completion: nil)
}
}
printSimDir()
func printSimDir(){
// tried the commented code as well
// let fManager = FileManager.default
// guard let url = fManager.urls(for: .documentDirectory, in: .userDomainMask).first else {return}
// print ("\(url)")
#if targetEnvironment(simulator)
if let documentsPath = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first?.path {
print("Documents Directory: \(documentsPath)")
}
#endif
}
1 ответ
Для тех, кто с этим сталкивался. Не уверен, где я нашел ответ, но это довольно просто.
Просто перетащите нужные файлы с вашего Mac на главный экран симулятора Xcode. На данный момент пробовали их только по одному.
Это правильный ответ? Я не знаю. Но это работает.
Не пробовал делать это всеми способами (по одному, несколько файлов одновременно, несколько симуляторов и т. д.). Но даже после перезагрузки Mac файлы все еще там.