34 lines
1.2 KiB
Swift
34 lines
1.2 KiB
Swift
import UIKit
|
|
import Flutter
|
|
import flutter_downloader
|
|
|
|
@main
|
|
@objc class AppDelegate: FlutterAppDelegate {
|
|
override func application(
|
|
_ application: UIApplication,
|
|
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
|
|
) -> Bool {
|
|
GeneratedPluginRegistrant.register(with: self)
|
|
FlutterDownloaderPlugin.setPluginRegistrantCallback(registerPlugins)
|
|
|
|
// Exclude the documents folder from iCloud backup since we keep songs there.
|
|
try! setExcludeFromiCloudBackup(isExcluded: true)
|
|
|
|
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
|
|
}
|
|
}
|
|
|
|
private func setExcludeFromiCloudBackup(isExcluded: Bool) throws {
|
|
var fileOrDirectoryURL = try! FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true)
|
|
var values = URLResourceValues()
|
|
values.isExcludedFromBackup = isExcluded
|
|
try fileOrDirectoryURL.setResourceValues(values)
|
|
}
|
|
|
|
|
|
private func registerPlugins(registry: FlutterPluginRegistry) {
|
|
if (!registry.hasPlugin("FlutterDownloaderPlugin")) {
|
|
FlutterDownloaderPlugin.register(with: registry.registrar(forPlugin: "FlutterDownloaderPlugin")!)
|
|
}
|
|
}
|