improve(ios): add container urls

pull/7184/head
charlie 2022-11-04 15:51:29 +08:00
parent f19bbc77b0
commit 8713ef84a8
5 changed files with 105 additions and 91 deletions

View File

@ -29,8 +29,8 @@ public class FileContainer: CAPPlugin, UIDocumentPickerDelegate {
validateDocuments(at: self.localContainerUrl!)
}
call.resolve(["path": [self.iCloudContainerUrl?.absoluteString as Any,
self.localContainerUrl?.absoluteString as Any]])
call.resolve(["iCloudContainerUrl": self.iCloudContainerUrl?.absoluteString as Any,
"localContainerUrl": self.localContainerUrl?.absoluteString as Any])
}
func validateDocuments(at url: URL) {

View File

@ -32,14 +32,19 @@ public class FolderPicker: CAPPlugin, UIDocumentPickerDelegate {
// return
// }
guard let documentDirectory = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first else { return }
guard let documentDirectory = FileManager.default.urls(
for: .documentDirectory,
in: .userDomainMask
).first
else {
return
}
let url = documentDirectory.appendingPathComponent(path)
print("picked folder url = " + url.path)
documentPicker.directoryURL = url
}
documentPicker.allowsMultipleSelection = false
@ -66,6 +71,8 @@ public class FolderPicker: CAPPlugin, UIDocumentPickerDelegate {
items.append(url.absoluteString)
}
print(items.first as Any)
self._call?.resolve([
"path": items.first as Any,
"localDocumentsPath": documentsPath[0] as Any

View File

@ -10,7 +10,8 @@
[frontend.mobile.intent :as intent]
[frontend.mobile.util :as mobile-util]
[frontend.state :as state]
[frontend.util :as util]))
[frontend.util :as util]
[cljs-bean.core :as bean]))
(def *url (atom nil))
@ -23,8 +24,13 @@
(defn- ios-init
"Initialize iOS-specified event listeners"
[]
(p/let [path (capacitor-fs/ios-ensure-documents!)]
(println "iOS container path: " (js->clj path)))
(p/let [^js path (capacitor-fs/ios-ensure-documents!)]
(when-let [path' (bean/->clj path)]
(state/set-state! :mobile/container-urls
(update-vals path' #(cond-> %
string?
(js/decodeURIComponent))))
(println "iOS container path: " path')))
(state/pub-event! [:validate-appId])

View File

@ -158,6 +158,7 @@
:assets/alias-dirs (or (storage/get :assets/alias-dirs) [])
;; mobile
:mobile/container-urls nil
:mobile/show-action-bar? false
:mobile/actioned-block nil
:mobile/show-toolbar? false