diff --git a/.metadata b/.metadata index 22257e4..566a7de 100644 --- a/.metadata +++ b/.metadata @@ -4,7 +4,7 @@ # This file should be version controlled and should not be manually edited. version: - revision: "78666c8dc57e9f7548ca9f8dd0740fbf0c658dc9" + revision: "17025dd88227cd9532c33fa78f5250d548d87e9a" channel: "stable" project_type: plugin @@ -13,14 +13,14 @@ project_type: plugin migration: platforms: - platform: root - create_revision: 78666c8dc57e9f7548ca9f8dd0740fbf0c658dc9 - base_revision: 78666c8dc57e9f7548ca9f8dd0740fbf0c658dc9 + create_revision: 17025dd88227cd9532c33fa78f5250d548d87e9a + base_revision: 17025dd88227cd9532c33fa78f5250d548d87e9a - platform: android - create_revision: 78666c8dc57e9f7548ca9f8dd0740fbf0c658dc9 - base_revision: 78666c8dc57e9f7548ca9f8dd0740fbf0c658dc9 + create_revision: 17025dd88227cd9532c33fa78f5250d548d87e9a + base_revision: 17025dd88227cd9532c33fa78f5250d548d87e9a - platform: ios - create_revision: 78666c8dc57e9f7548ca9f8dd0740fbf0c658dc9 - base_revision: 78666c8dc57e9f7548ca9f8dd0740fbf0c658dc9 + create_revision: 17025dd88227cd9532c33fa78f5250d548d87e9a + base_revision: 17025dd88227cd9532c33fa78f5250d548d87e9a # User provided section diff --git a/android/build.gradle b/android/build.gradle index cfbc4c4..a277241 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -1,16 +1,16 @@ -group 'com.flutter_live_activities' -version '1.0-SNAPSHOT' +group = "com.example.live_activities" +version = "1.0-SNAPSHOT" buildscript { - ext.kotlin_version = '1.7.10' + ext.kotlin_version = "1.8.22" repositories { google() mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.3.0' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" + classpath("com.android.tools.build:gradle:8.1.0") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version") } } @@ -21,37 +21,35 @@ allprojects { } } -apply plugin: 'com.android.library' -apply plugin: 'kotlin-android' +apply plugin: "com.android.library" +apply plugin: "kotlin-android" android { - if (project.android.hasProperty("namespace")) { - namespace 'com.flutter_live_activities' - } + namespace = "com.example.live_activities" - compileSdkVersion 33 + compileSdk = 35 compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 } kotlinOptions { - jvmTarget = '1.8' + jvmTarget = JavaVersion.VERSION_11 } sourceSets { - main.java.srcDirs += 'src/main/kotlin' - test.java.srcDirs += 'src/test/kotlin' + main.java.srcDirs += "src/main/kotlin" + test.java.srcDirs += "src/test/kotlin" } defaultConfig { - minSdkVersion 19 + minSdk = 21 } dependencies { - testImplementation 'org.jetbrains.kotlin:kotlin-test' - testImplementation 'org.mockito:mockito-core:5.0.0' + testImplementation("org.jetbrains.kotlin:kotlin-test") + testImplementation("org.mockito:mockito-core:5.0.0") } testOptions { diff --git a/android/settings.gradle b/android/settings.gradle index 731a298..9f3d6f4 100644 --- a/android/settings.gradle +++ b/android/settings.gradle @@ -1 +1 @@ -rootProject.name = 'flutter_live_activities' +rootProject.name = 'live_activities' diff --git a/android/src/main/AndroidManifest.xml b/android/src/main/AndroidManifest.xml index 7b62aac..2b71f25 100644 --- a/android/src/main/AndroidManifest.xml +++ b/android/src/main/AndroidManifest.xml @@ -1,2 +1,3 @@ - + diff --git a/android/src/main/kotlin/com/flutter_live_activities/FlutterLiveActivitiesPlugin.kt b/android/src/main/kotlin/com/example/live_activities/LiveActivitiesPlugin.kt similarity index 89% rename from android/src/main/kotlin/com/flutter_live_activities/FlutterLiveActivitiesPlugin.kt rename to android/src/main/kotlin/com/example/live_activities/LiveActivitiesPlugin.kt index 73cf6d2..8e73649 100644 --- a/android/src/main/kotlin/com/flutter_live_activities/FlutterLiveActivitiesPlugin.kt +++ b/android/src/main/kotlin/com/example/live_activities/LiveActivitiesPlugin.kt @@ -1,4 +1,4 @@ -package com.flutter_live_activities +package com.example.live_activities import androidx.annotation.NonNull @@ -8,8 +8,8 @@ import io.flutter.plugin.common.MethodChannel import io.flutter.plugin.common.MethodChannel.MethodCallHandler import io.flutter.plugin.common.MethodChannel.Result -/** FlutterLiveActivitiesPlugin */ -class FlutterLiveActivitiesPlugin: FlutterPlugin, MethodCallHandler { +/** LiveActivitiesPlugin */ +class LiveActivitiesPlugin: FlutterPlugin, MethodCallHandler { /// The MethodChannel that will the communication between Flutter and native Android /// /// This local reference serves to register the plugin with the Flutter Engine and unregister it diff --git a/android/src/test/kotlin/com/example/flutter_live_activities/FlutterLiveActivitiesPluginTest.kt b/android/src/test/kotlin/com/example/live_activities/LiveActivitiesPluginTest.kt similarity index 86% rename from android/src/test/kotlin/com/example/flutter_live_activities/FlutterLiveActivitiesPluginTest.kt rename to android/src/test/kotlin/com/example/live_activities/LiveActivitiesPluginTest.kt index 03c10aa..bc499e4 100644 --- a/android/src/test/kotlin/com/example/flutter_live_activities/FlutterLiveActivitiesPluginTest.kt +++ b/android/src/test/kotlin/com/example/live_activities/LiveActivitiesPluginTest.kt @@ -1,4 +1,4 @@ -package com.example.flutter_live_activities +package com.example.live_activities import io.flutter.plugin.common.MethodCall import io.flutter.plugin.common.MethodChannel @@ -13,10 +13,10 @@ import org.mockito.Mockito * you can run them directly from IDEs that support JUnit such as Android Studio. */ -internal class FlutterLiveActivitiesPluginTest { +internal class LiveActivitiesPluginTest { @Test fun onMethodCall_getPlatformVersion_returnsExpectedValue() { - val plugin = FlutterLiveActivitiesPlugin() + val plugin = LiveActivitiesPlugin() val call = MethodCall("getPlatformVersion", null) val mockResult: MethodChannel.Result = Mockito.mock(MethodChannel.Result::class.java) diff --git a/ios/.gitignore b/ios/.gitignore index 0c88507..034771f 100644 --- a/ios/.gitignore +++ b/ios/.gitignore @@ -35,4 +35,4 @@ Icon? /Flutter/Generated.xcconfig /Flutter/ephemeral/ -/Flutter/flutter_export_environment.sh \ No newline at end of file +/Flutter/flutter_export_environment.sh diff --git a/ios/Assets/.gitkeep b/ios/Assets/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/ios/Classes/LiveActivitiesPlugin.h b/ios/Classes/LiveActivitiesPlugin.h deleted file mode 100644 index 0a3e511..0000000 --- a/ios/Classes/LiveActivitiesPlugin.h +++ /dev/null @@ -1,4 +0,0 @@ -#import - -@interface LiveActivitiesPlugin : NSObject -@end diff --git a/ios/Classes/LiveActivitiesPlugin.m b/ios/Classes/LiveActivitiesPlugin.m deleted file mode 100644 index 467eab3..0000000 --- a/ios/Classes/LiveActivitiesPlugin.m +++ /dev/null @@ -1,15 +0,0 @@ -#import "LiveActivitiesPlugin.h" -#if __has_include() -#import -#else -// Support project import fallback if the generated compatibility header -// is not copied when this plugin is created as a library. -// https://forums.swift.org/t/swift-static-libraries-dont-copy-generated-objective-c-header/19816 -#import "live_activities-Swift.h" -#endif - -@implementation LiveActivitiesPlugin -+ (void)registerWithRegistrar:(NSObject*)registrar { - [SwiftLiveActivitiesPlugin registerWithRegistrar:registrar]; -} -@end diff --git a/ios/live_activities.podspec b/ios/live_activities.podspec index dff3662..c0856f2 100644 --- a/ios/live_activities.podspec +++ b/ios/live_activities.podspec @@ -13,11 +13,17 @@ A new Flutter plugin project. s.license = { :file => '../LICENSE' } s.author = { 'Your Company' => 'email@example.com' } s.source = { :path => '.' } - s.source_files = 'Classes/**/*' + s.source_files = 'live_activities/Sources/live_activities/**/*' s.dependency 'Flutter' - s.platform = :ios, '9.0' + s.platform = :ios, '12.0' # Flutter.framework does not contain a i386 slice. s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' } s.swift_version = '5.0' + + # If your plugin requires a privacy manifest, for example if it uses any + # required reason APIs, update the PrivacyInfo.xcprivacy file to describe your + # plugin's privacy impact, and then uncomment this line. For more information, + # see https://developer.apple.com/documentation/bundleresources/privacy_manifest_files + # s.resource_bundles = {'live_activities_privacy' => ['live_activities/Sources/live_activities/PrivacyInfo.xcprivacy']} end diff --git a/ios/live_activities/Package.swift b/ios/live_activities/Package.swift new file mode 100644 index 0000000..27ff5c1 --- /dev/null +++ b/ios/live_activities/Package.swift @@ -0,0 +1,32 @@ +// swift-tools-version: 5.9 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "live_activities", + platforms: [ + .iOS("12.0") + ], + products: [ + .library(name: "live-activities", targets: ["live_activities"]) + ], + dependencies: [], + targets: [ + .target( + name: "live_activities", + dependencies: [], + resources: [ + // If your plugin requires a privacy manifest, for example if it uses any required + // reason APIs, update the PrivacyInfo.xcprivacy file to describe your plugin's + // privacy impact, and then uncomment these lines. For more information, see + // https://developer.apple.com/documentation/bundleresources/privacy_manifest_files + // .process("PrivacyInfo.xcprivacy"), + + // If you have other resources that need to be bundled with your plugin, refer to + // the following instructions to add them: + // https://developer.apple.com/documentation/xcode/bundling-resources-with-a-swift-package + ] + ) + ] +) diff --git a/ios/Classes/SwiftLiveActivitiesPlugin.swift b/ios/live_activities/Sources/live_activities/LiveActivitiesPlugin.swift similarity index 99% rename from ios/Classes/SwiftLiveActivitiesPlugin.swift rename to ios/live_activities/Sources/live_activities/LiveActivitiesPlugin.swift index a10db64..4960fad 100644 --- a/ios/Classes/SwiftLiveActivitiesPlugin.swift +++ b/ios/live_activities/Sources/live_activities/LiveActivitiesPlugin.swift @@ -19,7 +19,7 @@ class FlutterAlertConfig { } } -public class SwiftLiveActivitiesPlugin: NSObject, FlutterPlugin, FlutterStreamHandler { +public class LiveActivitiesPlugin: NSObject, FlutterPlugin, FlutterStreamHandler { private var urlSchemeSink: FlutterEventSink? private var appGroupId: String? private var urlScheme: String? @@ -32,7 +32,7 @@ public class SwiftLiveActivitiesPlugin: NSObject, FlutterPlugin, FlutterStreamHa let urlSchemeChannel = FlutterEventChannel(name: "live_activities/url_scheme", binaryMessenger: registrar.messenger()) let activityStatusChannel = FlutterEventChannel(name: "live_activities/activity_status", binaryMessenger: registrar.messenger()) - let instance = SwiftLiveActivitiesPlugin() + let instance = LiveActivitiesPlugin() registrar.addMethodCallDelegate(instance, channel: channel) urlSchemeChannel.setStreamHandler(instance) diff --git a/ios/live_activities/Sources/live_activities/PrivacyInfo.xcprivacy b/ios/live_activities/Sources/live_activities/PrivacyInfo.xcprivacy new file mode 100644 index 0000000..a34b7e2 --- /dev/null +++ b/ios/live_activities/Sources/live_activities/PrivacyInfo.xcprivacy @@ -0,0 +1,14 @@ + + + + + NSPrivacyTrackingDomains + + NSPrivacyAccessedAPITypes + + NSPrivacyCollectedDataTypes + + NSPrivacyTracking + + + diff --git a/pubspec.yaml b/pubspec.yaml index d611f72..80938b9 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -24,7 +24,7 @@ dependencies: flutter: sdk: flutter plugin_platform_interface: ^2.1.8 - flutter_app_group_directory: ^1.0.2+2 + flutter_app_group_directory: ^1.1.0 path_provider: ^2.1.5 image: ^4.3.0 @@ -39,5 +39,5 @@ flutter: ios: pluginClass: LiveActivitiesPlugin android: - package: com.flutter_live_activities - pluginClass: FlutterLiveActivitiesPlugin \ No newline at end of file + package: com.example.live_activities + pluginClass: LiveActivitiesPlugin \ No newline at end of file