Загрузить PDF из общего локального хранилища в iOS (Drive, OneDrive, Dropbox...) на сервер с помощью Ktor не удается.IOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Загрузить PDF из общего локального хранилища в iOS (Drive, OneDrive, Dropbox...) на сервер с помощью Ktor не удается.

Сообщение Anonymous »

Я разрабатываю функцию для своего приложения, позволяющую пользователю загружать PDF-файлы из общего хранилища на устройстве (Drive, onDrive, Dropbox и т. д.).
Я использую Kotlin Multiplatform 2.0.20 >
Это код, который я использую для загрузки PDF-файла для iOS. Он отлично работает для файлов, выбранных из iCloud, загруженных локально на устройство и в Dropbox, но НЕ для Google Диска и OneDrive

Код: Выделить всё

    val documentPickerController = UIDocumentPickerViewController(
forOpeningContentTypes = listOf(UTTypePDF)
)
documentPickerController.allowsMultipleSelection = false
val documentDelegate = remember {
object : NSObject(), UIDocumentPickerDelegateProtocol {
override fun documentPicker(
controller: UIDocumentPickerViewController,
didPickDocumentAtURL: NSURL
) {
val accessing =
didPickDocumentAtURL.startAccessingSecurityScopedResource()
val data = try {
NSData.dataWithContentsOfURL(didPickDocumentAtURL)
} catch (e: Error) {
e.printStackTrace()
null
}

if (accessing == true) {
didPickDocumentAtURL.stopAccessingSecurityScopedResource()
}
controller.dismissViewControllerAnimated(true, null)
}
}
}
При отладке я обнаружил, что проблема в этой строке: NSData.dataWithContentsOfURL(didPickDocumentAtURL), она возвращает ноль
исключение не генерируется, и даже помещение его в блок try/catch не помогло понять ошибку, связанную с нулевым значением.
У меня нет экспертных знаний в этом вопросе. ЦельC или Swift, поэтому я обращаюсь к вам за помощью :)
Я обнаружил, что это точно такая же проблема: https://www.hackingwithswift.com/forums ... or-domain- nsposixerrordomain-code-2-no- such-file-or-directory-when-using-fileimporter-then-read-the-content/20397
за исключением того, что они используют SwiftUI, но я нет поэтому мне интересно, как я могу это исправить в моем случае.
Я ценю, если кто-то столкнулся с подобной проблемой и может поделиться своими мыслями :)
Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/791 ... ox-to-serv
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • HTML-тег
    Anonymous » » в форуме Html
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Аудиоэлемент HTML не работает с Google Drive или Dropbox
    Anonymous » » в форуме Html
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Как я могу позволить пользователю выбрать URI OneDrive или Google Drive?
    Anonymous » » в форуме Android
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Проверьте, можно ли записать файл в папку общего хранилища (в режиме хранилища с ограниченной областью действия).
    Anonymous » » в форуме Android
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • HTML - FILE PDF -файл из Dropbox с PDF Viewer (онлайн)
    Anonymous » » в форуме Html
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous

Вернуться в «IOS»