Skip to content

Commit

Permalink
improve sharedDataUrl handling
Browse files Browse the repository at this point in the history
  • Loading branch information
MaxAst committed Jun 6, 2024
1 parent 962013d commit 4942524
Showing 1 changed file with 23 additions and 12 deletions.
35 changes: 23 additions & 12 deletions plugin/swift/ShareExtensionViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -262,9 +262,9 @@ class ShareExtensionViewController: UIViewController {

let sharedDataUrl = containerUrl.deletingLastPathComponent().appendingPathComponent("sharedData")

if !fileManager.fileExists(atPath: sharedDataUrl.absoluteString) {
if !fileManager.fileExists(atPath: sharedDataUrl.path) {
do {
try fileManager.createDirectory(at: containerUrl.deletingLastPathComponent().appendingPathComponent("sharedData"), withIntermediateDirectories: true)
try fileManager.createDirectory(at: sharedDataUrl, withIntermediateDirectories: true)
} catch {
print("Failed to create sharedData directory: \(error)")
}
Expand All @@ -289,9 +289,9 @@ class ShareExtensionViewController: UIViewController {

let sharedDataUrl = containerUrl.deletingLastPathComponent().appendingPathComponent("sharedData")

if !fileManager.fileExists(atPath: sharedDataUrl.absoluteString) {
if !fileManager.fileExists(atPath: sharedDataUrl.path) {
do {
try fileManager.createDirectory(at: containerUrl.deletingLastPathComponent().appendingPathComponent("sharedData"), withIntermediateDirectories: true)
try fileManager.createDirectory(at: sharedDataUrl, withIntermediateDirectories: true)
} catch {
print("Failed to create sharedData directory: \(error)")
}
Expand Down Expand Up @@ -344,9 +344,9 @@ class ShareExtensionViewController: UIViewController {

let sharedDataUrl = containerUrl.deletingLastPathComponent().appendingPathComponent("sharedData")

if !fileManager.fileExists(atPath: sharedDataUrl.absoluteString) {
if !fileManager.fileExists(atPath: sharedDataUrl.path) {
do {
try fileManager.createDirectory(at: containerUrl.deletingLastPathComponent().appendingPathComponent("sharedData"), withIntermediateDirectories: true)
try fileManager.createDirectory(at: sharedDataUrl, withIntermediateDirectories: true)
} catch {
print("Failed to create sharedData directory: \(error)")
}
Expand All @@ -357,7 +357,7 @@ class ShareExtensionViewController: UIViewController {
do {
try fileManager.copyItem(atPath: tempFilePath, toPath: persistentURL.path)
if var videoArray = sharedItems["videos"] as? [String] {
videoArray.append(persistentURL.absoluteString)
videoArray.append(persistentURL.path)
sharedItems["videos"] = videoArray
}
} catch {
Expand All @@ -369,12 +369,23 @@ class ShareExtensionViewController: UIViewController {
else if let videoData = videoItem as? NSData {
let fileExtension = "mov" // Using mov as default type extension
let fileName = UUID().uuidString + "." + fileExtension
let persistentURL = containerUrl.appendingPathComponent(fileName)


let sharedDataUrl = containerUrl.deletingLastPathComponent().appendingPathComponent("sharedData")

if !fileManager.fileExists(atPath: sharedDataUrl.path) {
do {
try fileManager.createDirectory(at: sharedDataUrl, withIntermediateDirectories: true)
} catch {
print("Failed to create sharedData directory: \(error)")
}
}

let persistentURL = sharedDataUrl.appendingPathComponent(fileName)

do {
try videoData.write(to: persistentURL)
if var videoArray = sharedItems["videos"] as? [String] {
videoArray.append(persistentURL.absoluteString)
videoArray.append(persistentURL.path)
sharedItems["videos"] = videoArray
}
} catch {
Expand All @@ -390,9 +401,9 @@ class ShareExtensionViewController: UIViewController {

let sharedDataUrl = containerUrl.deletingLastPathComponent().appendingPathComponent("sharedData")

if !fileManager.fileExists(atPath: sharedDataUrl.absoluteString) {
if !fileManager.fileExists(atPath: sharedDataUrl.path) {
do {
try fileManager.createDirectory(at: containerUrl.deletingLastPathComponent().appendingPathComponent("sharedData"), withIntermediateDirectories: true)
try fileManager.createDirectory(at: sharedDataUrl, withIntermediateDirectories: true)
} catch {
print("Failed to create sharedData directory: \(error)")
}
Expand Down

0 comments on commit 4942524

Please sign in to comment.