Hello,
I am running my app written using SwiftUI on iOS 14 and the app crashes because of unexpectedly nil while unwrapping optional.
This occurs when I try to share an image using its local URL in the Share Sheet.
The puzzling part is that that it works perfectly on iOS 13.
I am still new to development, so any help will be appreciated! Thanks in advance.
I am running my app written using SwiftUI on iOS 14 and the app crashes because of unexpectedly nil while unwrapping optional.
This occurs when I try to share an image using its local URL in the Share Sheet.
The puzzling part is that that it works perfectly on iOS 13.
I am still new to development, so any help will be appreciated! Thanks in advance.
Code Block struct ContentView: View { @State private var imageURL: URL? @State private var isShareSheetPresented = false var body: some View { ScrollView(.vertical) { VStack{ Text("Test") } .navigationBarItems(trailing: Button(action: { writeImageToDisk() isShareSheetPresented.toggle() }) { Image(systemName: "square.and.arrow.up") }.sheet(isPresented: self.$isShareSheetPresented) { ShareSheet(photo: imageURL!) }) } func writeImageToDisk() { imageURL = (UIApplication.shared.windows[0].rootViewController?.view!.getImage())! print(imageURL!) } } // getImage is a function that returns an URL // imageURL is always getting printed successfully // Here is a sample of print(imageURL!) from console: file:///var/mobile/Containers/Data/Application/740E2665-8D68-4864-9E48-99E4E25D2985/Documents/Test%20Image.png //
Code Block struct ShareSheet: UIViewControllerRepresentable { let photo: URL func makeUIViewController(context: Context) -> UIActivityViewController { let activityItems: [Any] = [photo] let controller = UIActivityViewController( activityItems: activityItems, applicationActivities: nil) return controller } func updateUIViewController(_ vc: UIActivityViewController, context: Context) { } }