1
我正在嘗試將Firebase整合到iMessage擴展中。Firebase存儲無法在iMessage擴展上工作
作爲一項測試,我設置了Firebase並嘗試將本地文件保存到viewDidAppear
方法中的Firebase存儲中。 Firebase實時數據庫在下面的代碼中工作正常,只有存儲部分沒有。
完全相同的代碼在正常的應用程序中完成(,即不是iMessage擴展)。
我收到以下錯誤信息:
Error Domain=FIRStorageErrorDomain Code=-13000
"An unknown error occurred, please check the server response."
UserInfo={ResponseErrorDomain=NSURLErrorDomain, object=test.jpg,
bucket=myapp.appspot.com, ResponseErrorCode=-995,
`NSLocalizedDescription=An unknown error occurred, please check the server response.
我做了以下內容:
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
FIRApp.configure()
FIRAuth.auth()?.signInAnonymously { (user, error) in
guard let fileURL = Bundle.main.url(forResource: "test", withExtension:"jpg") else { return }
let storageRef = FIRStorage.storage().reference().child("test.jpg")
storageRef.putFile(fileURL, metadata: nil) { (metaData, error) in //produces error
if error != nil {
print(error.debugDescription)
}
}
FIRDatabase.database().reference().updateChildValues(["someKey" : "someValue"]) // works fine
}
}
你可以試試'putData'而不是'putFile'嗎?我懷疑iMessage擴展可能會限制對文件系統的訪問(因爲它們位於與普通應用程序不同的沙盒中),並且獲取文件不起作用。 –
感謝您的快速回答!你懷疑是對的,putData完美無缺。非常感謝!如果你寫一個答案,我可以接受它。 – Nilsymbol