From 2d628dd13f67ff792b67b190bc86ca649934ca98 Mon Sep 17 00:00:00 2001 From: George Kutsurua Date: Sat, 24 Feb 2024 12:08:22 +0400 Subject: [PATCH] feat(connectivity): shared codebase for apple products Signed-off-by: George Kutsurua --- .../{ios => apple}/Assets/.gitkeep | 0 .../apple/Classes/ConnectivityPlugin.h | 8 ++ .../Classes/ConnectivityPlugin.m} | 6 +- .../Classes/ConnectivityProvider.swift | 0 .../PathMonitorConnectivityProvider.swift | 2 +- .../ReachabilityConnectivityProvider.swift | 0 .../Classes/SwiftConnectivityPlusPlugin.swift | 21 +++- .../{ios => apple}/PrivacyInfo.xcprivacy | 0 .../connectivity_plus/apple/README.md | 33 +++++++ .../{ios => apple}/connectivity_plus.podspec | 20 +++- .../connectivity_plus/connectivity_plus/ios | 1 + .../ios/Classes/ConnectivityPlusPlugin.h | 4 - .../connectivity_plus/connectivity_plus/macos | 1 + .../macos/Classes/ConnectivityPlugin.swift | 96 ------------------- .../macos/Classes/ConnectivityProvider.swift | 21 ---- .../PathMonitorConnectivityProvider.swift | 63 ------------ .../ReachabilityConnectivityProvider.swift | 65 ------------- .../macos/connectivity_plus.podspec | 22 ----- .../connectivity_plus/pubspec.yaml | 2 +- 19 files changed, 79 insertions(+), 286 deletions(-) rename packages/connectivity_plus/connectivity_plus/{ios => apple}/Assets/.gitkeep (100%) create mode 100644 packages/connectivity_plus/connectivity_plus/apple/Classes/ConnectivityPlugin.h rename packages/connectivity_plus/connectivity_plus/{ios/Classes/ConnectivityPlusPlugin.m => apple/Classes/ConnectivityPlugin.m} (77%) rename packages/connectivity_plus/connectivity_plus/{ios => apple}/Classes/ConnectivityProvider.swift (100%) rename packages/connectivity_plus/connectivity_plus/{ios => apple}/Classes/PathMonitorConnectivityProvider.swift (97%) rename packages/connectivity_plus/connectivity_plus/{ios => apple}/Classes/ReachabilityConnectivityProvider.swift (100%) rename packages/connectivity_plus/connectivity_plus/{ios => apple}/Classes/SwiftConnectivityPlusPlugin.swift (83%) rename packages/connectivity_plus/connectivity_plus/{ios => apple}/PrivacyInfo.xcprivacy (100%) create mode 100644 packages/connectivity_plus/connectivity_plus/apple/README.md rename packages/connectivity_plus/connectivity_plus/{ios => apple}/connectivity_plus.podspec (71%) create mode 120000 packages/connectivity_plus/connectivity_plus/ios delete mode 100644 packages/connectivity_plus/connectivity_plus/ios/Classes/ConnectivityPlusPlugin.h create mode 120000 packages/connectivity_plus/connectivity_plus/macos delete mode 100644 packages/connectivity_plus/connectivity_plus/macos/Classes/ConnectivityPlugin.swift delete mode 100644 packages/connectivity_plus/connectivity_plus/macos/Classes/ConnectivityProvider.swift delete mode 100644 packages/connectivity_plus/connectivity_plus/macos/Classes/PathMonitorConnectivityProvider.swift delete mode 100644 packages/connectivity_plus/connectivity_plus/macos/Classes/ReachabilityConnectivityProvider.swift delete mode 100644 packages/connectivity_plus/connectivity_plus/macos/connectivity_plus.podspec diff --git a/packages/connectivity_plus/connectivity_plus/ios/Assets/.gitkeep b/packages/connectivity_plus/connectivity_plus/apple/Assets/.gitkeep similarity index 100% rename from packages/connectivity_plus/connectivity_plus/ios/Assets/.gitkeep rename to packages/connectivity_plus/connectivity_plus/apple/Assets/.gitkeep diff --git a/packages/connectivity_plus/connectivity_plus/apple/Classes/ConnectivityPlugin.h b/packages/connectivity_plus/connectivity_plus/apple/Classes/ConnectivityPlugin.h new file mode 100644 index 00000000000..fa197242b43 --- /dev/null +++ b/packages/connectivity_plus/connectivity_plus/apple/Classes/ConnectivityPlugin.h @@ -0,0 +1,8 @@ +#if TARGET_OS_IOS +#import +#elif TARGET_OS_OSX +#import +#endif + +@interface ConnectivityPlugin : NSObject +@end diff --git a/packages/connectivity_plus/connectivity_plus/ios/Classes/ConnectivityPlusPlugin.m b/packages/connectivity_plus/connectivity_plus/apple/Classes/ConnectivityPlugin.m similarity index 77% rename from packages/connectivity_plus/connectivity_plus/ios/Classes/ConnectivityPlusPlugin.m rename to packages/connectivity_plus/connectivity_plus/apple/Classes/ConnectivityPlugin.m index 43af3800bc2..b7d72716a9d 100644 --- a/packages/connectivity_plus/connectivity_plus/ios/Classes/ConnectivityPlusPlugin.m +++ b/packages/connectivity_plus/connectivity_plus/apple/Classes/ConnectivityPlugin.m @@ -1,4 +1,4 @@ -#import "ConnectivityPlusPlugin.h" +#import "ConnectivityPlugin.h" #if __has_include() #import #else @@ -8,8 +8,8 @@ #import "connectivity_plus-Swift.h" #endif -@implementation ConnectivityPlusPlugin +@implementation ConnectivityPlugin + (void)registerWithRegistrar:(NSObject *)registrar { - [SwiftConnectivityPlusPlugin registerWithRegistrar:registrar]; + [SwiftConnectivityPlugin registerWithRegistrar:registrar]; } @end diff --git a/packages/connectivity_plus/connectivity_plus/ios/Classes/ConnectivityProvider.swift b/packages/connectivity_plus/connectivity_plus/apple/Classes/ConnectivityProvider.swift similarity index 100% rename from packages/connectivity_plus/connectivity_plus/ios/Classes/ConnectivityProvider.swift rename to packages/connectivity_plus/connectivity_plus/apple/Classes/ConnectivityProvider.swift diff --git a/packages/connectivity_plus/connectivity_plus/ios/Classes/PathMonitorConnectivityProvider.swift b/packages/connectivity_plus/connectivity_plus/apple/Classes/PathMonitorConnectivityProvider.swift similarity index 97% rename from packages/connectivity_plus/connectivity_plus/ios/Classes/PathMonitorConnectivityProvider.swift rename to packages/connectivity_plus/connectivity_plus/apple/Classes/PathMonitorConnectivityProvider.swift index 052c42f66ff..78f26f9a7bf 100644 --- a/packages/connectivity_plus/connectivity_plus/ios/Classes/PathMonitorConnectivityProvider.swift +++ b/packages/connectivity_plus/connectivity_plus/apple/Classes/PathMonitorConnectivityProvider.swift @@ -1,7 +1,7 @@ import Foundation import Network -@available(iOS 12, *) +@available(iOS 12, macOS 10.14, *) public class PathMonitorConnectivityProvider: NSObject, ConnectivityProvider { private let queue = DispatchQueue.global(qos: .background) diff --git a/packages/connectivity_plus/connectivity_plus/ios/Classes/ReachabilityConnectivityProvider.swift b/packages/connectivity_plus/connectivity_plus/apple/Classes/ReachabilityConnectivityProvider.swift similarity index 100% rename from packages/connectivity_plus/connectivity_plus/ios/Classes/ReachabilityConnectivityProvider.swift rename to packages/connectivity_plus/connectivity_plus/apple/Classes/ReachabilityConnectivityProvider.swift diff --git a/packages/connectivity_plus/connectivity_plus/ios/Classes/SwiftConnectivityPlusPlugin.swift b/packages/connectivity_plus/connectivity_plus/apple/Classes/SwiftConnectivityPlusPlugin.swift similarity index 83% rename from packages/connectivity_plus/connectivity_plus/ios/Classes/SwiftConnectivityPlusPlugin.swift rename to packages/connectivity_plus/connectivity_plus/apple/Classes/SwiftConnectivityPlusPlugin.swift index 105c752317b..b85d2869c54 100644 --- a/packages/connectivity_plus/connectivity_plus/ios/Classes/SwiftConnectivityPlusPlugin.swift +++ b/packages/connectivity_plus/connectivity_plus/apple/Classes/SwiftConnectivityPlusPlugin.swift @@ -2,9 +2,14 @@ // Use of this source is governed by a BSD-style license that can // be found in the LICENSE file. +#if os(iOS) import Flutter +#elseif os(macOS) +import Cocoa +import FlutterMacOS +#endif -public class SwiftConnectivityPlusPlugin: NSObject, FlutterPlugin, FlutterStreamHandler { +public class SwiftConnectivityPlugin: NSObject, FlutterPlugin, FlutterStreamHandler { private let connectivityProvider: ConnectivityProvider private var eventSink: FlutterEventSink? @@ -15,22 +20,28 @@ public class SwiftConnectivityPlusPlugin: NSObject, FlutterPlugin, FlutterStream } public static func register(with registrar: FlutterPluginRegistrar) { + #if os(iOS) + let binaryMessenger = registrar.messenger() + #elseif os(macOS) + let binaryMessenger = registrar.messenger + #endif + let channel = FlutterMethodChannel( name: "dev.fluttercommunity.plus/connectivity", - binaryMessenger: registrar.messenger()) + binaryMessenger: binaryMessenger) let streamChannel = FlutterEventChannel( name: "dev.fluttercommunity.plus/connectivity_status", - binaryMessenger: registrar.messenger()) + binaryMessenger: binaryMessenger) let connectivityProvider: ConnectivityProvider - if #available(iOS 12, *) { + if #available(iOS 12, macOS 10.14, *) { connectivityProvider = PathMonitorConnectivityProvider() } else { connectivityProvider = ReachabilityConnectivityProvider() } - let instance = SwiftConnectivityPlusPlugin(connectivityProvider: connectivityProvider) + let instance = SwiftConnectivityPlugin(connectivityProvider: connectivityProvider) streamChannel.setStreamHandler(instance) registrar.addMethodCallDelegate(instance, channel: channel) diff --git a/packages/connectivity_plus/connectivity_plus/ios/PrivacyInfo.xcprivacy b/packages/connectivity_plus/connectivity_plus/apple/PrivacyInfo.xcprivacy similarity index 100% rename from packages/connectivity_plus/connectivity_plus/ios/PrivacyInfo.xcprivacy rename to packages/connectivity_plus/connectivity_plus/apple/PrivacyInfo.xcprivacy diff --git a/packages/connectivity_plus/connectivity_plus/apple/README.md b/packages/connectivity_plus/connectivity_plus/apple/README.md new file mode 100644 index 00000000000..9d4fcc3efbe --- /dev/null +++ b/packages/connectivity_plus/connectivity_plus/apple/README.md @@ -0,0 +1,33 @@ +# Flutter Project Restructurization Guide + +## Overview + +This guide outlines the process of restructuring our Flutter project to improve code organization and maintainability. We are introducing a new directory structure to consolidate common classes used across Apple's operating systems (iOS, macOS, and potentially others in the future). This approach aims to keep similar code in one place, making our codebase cleaner and more manageable. + +## New Directory Structure + +We have created a new folder named `apple` within our project's directory. This folder will contain all the classes and code snippets that are common to Apple's operating systems. By centralizing this code, we can easily manage and update it without duplicating effort across multiple files. + +### Implementing the `apple` Folder + +- **Location:** The `apple` folder is located at the root of the project's directory structure. +- **Contents:** This folder will include any Dart files that contain code relevant to both iOS and macOS platforms. If the code is potentially applicable to other Apple operating systems in the future, it should also reside here. + +## Conditional Compilation + +To accommodate the differences between operating systems without needing to completely overwrite files, we will utilize conditional compilation statements. These statements allow us to compile code conditionally based on the target operating system. Examples include `#if os(macOS)` for macOS-specific code and `#if os(iOS)` for iOS-specific code. + +### Using Conditional Compilation + +1. **Identify Common Code:** First, identify code that is common across different Apple platforms but requires slight modifications based on the target OS. +2. **Apply Conditional Compilation:** Use conditional compilation statements to include or exclude code blocks based on the OS. This method ensures that only relevant code is compiled for each target platform, reducing bloat and improving performance. + +## Benefits + +- **Improved Code Organization:** By keeping similar code in one place, we make our codebase more organized and navigable. +- **Easier Maintenance:** Centralizing code for Apple's platforms simplifies updates and maintenance, as changes only need to be made in one location. +- **Efficient Development:** Conditional compilation allows for a more efficient development process, as it eliminates the need for completely separate codebases for each platform. + +## Conclusion + +The restructurization of our Flutter project, including the introduction of the `apple` folder and the use of conditional compilation, is a strategic move to improve our codebase's maintainability and efficiency. By following this guide, we can ensure a smooth transition to the new structure and a more streamlined development process moving forward. diff --git a/packages/connectivity_plus/connectivity_plus/ios/connectivity_plus.podspec b/packages/connectivity_plus/connectivity_plus/apple/connectivity_plus.podspec similarity index 71% rename from packages/connectivity_plus/connectivity_plus/ios/connectivity_plus.podspec rename to packages/connectivity_plus/connectivity_plus/apple/connectivity_plus.podspec index 7ec632b8646..b6a49e3a02f 100644 --- a/packages/connectivity_plus/connectivity_plus/ios/connectivity_plus.podspec +++ b/packages/connectivity_plus/connectivity_plus/apple/connectivity_plus.podspec @@ -14,12 +14,22 @@ Downloaded by pub (not CocoaPods). s.author = { 'Flutter Community Team' => 'authors@fluttercommunity.dev' } s.source = { :http => 'https://github.com/fluttercommunity/plus_plugins/tree/main/packages/connectivity_plus' } s.documentation_url = 'https://pub.dev/packages/connectivity_plus' - s.source_files = 'Classes/**/*' - s.public_header_files = 'Classes/**/*.h' - s.dependency 'Flutter' + s.source_files = [ + 'Classes/**/*' + ] + s.public_header_files = [ + 'Classes/**/*.h' + ] + s.ios.dependency 'Flutter' + s.osx.dependency 'FlutterMacOS' s.dependency 'ReachabilitySwift' - s.platform = :ios, '12.0' + s.platform = { + :ios => '12.0', + :osx => '10.14' + } + s.ios.deployment_target = '12.0' + s.osx.deployment_target = '10.14' s.swift_version = '5.0' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES' } - s.resource_bundles = {'connectivity_plus_privacy' => ['PrivacyInfo.xcprivacy']} + s.ios.resource_bundles = {'connectivity_plus_privacy' => ['PrivacyInfo.xcprivacy']} end diff --git a/packages/connectivity_plus/connectivity_plus/ios b/packages/connectivity_plus/connectivity_plus/ios new file mode 120000 index 00000000000..0e37c889704 --- /dev/null +++ b/packages/connectivity_plus/connectivity_plus/ios @@ -0,0 +1 @@ +apple \ No newline at end of file diff --git a/packages/connectivity_plus/connectivity_plus/ios/Classes/ConnectivityPlusPlugin.h b/packages/connectivity_plus/connectivity_plus/ios/Classes/ConnectivityPlusPlugin.h deleted file mode 100644 index e5d0ccbd1a0..00000000000 --- a/packages/connectivity_plus/connectivity_plus/ios/Classes/ConnectivityPlusPlugin.h +++ /dev/null @@ -1,4 +0,0 @@ -#import - -@interface ConnectivityPlusPlugin : NSObject -@end diff --git a/packages/connectivity_plus/connectivity_plus/macos b/packages/connectivity_plus/connectivity_plus/macos new file mode 120000 index 00000000000..0e37c889704 --- /dev/null +++ b/packages/connectivity_plus/connectivity_plus/macos @@ -0,0 +1 @@ +apple \ No newline at end of file diff --git a/packages/connectivity_plus/connectivity_plus/macos/Classes/ConnectivityPlugin.swift b/packages/connectivity_plus/connectivity_plus/macos/Classes/ConnectivityPlugin.swift deleted file mode 100644 index b9035e52e9a..00000000000 --- a/packages/connectivity_plus/connectivity_plus/macos/Classes/ConnectivityPlugin.swift +++ /dev/null @@ -1,96 +0,0 @@ -// Copyright 2019 The Chromium Authors. All rights reserved. -// Use of this source is governed by a BSD-style license that can -// be found in the LICENSE file. - -import Cocoa -import FlutterMacOS - -public class ConnectivityPlugin: NSObject, FlutterPlugin, FlutterStreamHandler { - private let connectivityProvider: ConnectivityProvider - private var eventSink: FlutterEventSink? - - init(connectivityProvider: ConnectivityProvider) { - self.connectivityProvider = connectivityProvider - super.init() - self.connectivityProvider.connectivityUpdateHandler = connectivityUpdateHandler - } - - public static func register(with registrar: FlutterPluginRegistrar) { - let channel = FlutterMethodChannel( - name: "dev.fluttercommunity.plus/connectivity", - binaryMessenger: registrar.messenger) - - let streamChannel = FlutterEventChannel( - name: "dev.fluttercommunity.plus/connectivity_status", - binaryMessenger: registrar.messenger) - - let connectivityProvider: ConnectivityProvider - if #available(macOS 10.14, *) { - connectivityProvider = PathMonitorConnectivityProvider() - } else { - connectivityProvider = ReachabilityConnectivityProvider() - } - - let instance = ConnectivityPlugin(connectivityProvider: connectivityProvider) - streamChannel.setStreamHandler(instance) - - registrar.addMethodCallDelegate(instance, channel: channel) - } - - public func detachFromEngine(for registrar: FlutterPluginRegistrar) { - eventSink = nil - connectivityProvider.stop() - } - - public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) { - switch call.method { - case "check": - result(statusFrom(connectivityTypes: connectivityProvider.currentConnectivityTypes)) - default: - result(FlutterMethodNotImplemented) - } - } - - private func statusFrom(connectivityType: ConnectivityType) -> String { - switch connectivityType { - case .wifi: - return "wifi" - case .cellular: - return "mobile" - case .wiredEthernet: - return "ethernet" - case .other: - return "other" - case .none: - return "none" - } - } - - private func statusFrom(connectivityTypes: [ConnectivityType]) -> [String] { - return connectivityTypes.map { - self.statusFrom(connectivityType: $0) - } - } - - public func onListen( - withArguments _: Any?, - eventSink events: @escaping FlutterEventSink - ) -> FlutterError? { - eventSink = events - connectivityProvider.start() - connectivityUpdateHandler(connectivityTypes: connectivityProvider.currentConnectivityTypes) - return nil - } - - private func connectivityUpdateHandler(connectivityTypes: [ConnectivityType]) { - DispatchQueue.main.async { - self.eventSink?(self.statusFrom(connectivityTypes: connectivityTypes)) - } - } - - public func onCancel(withArguments _: Any?) -> FlutterError? { - connectivityProvider.stop() - eventSink = nil - return nil - } -} diff --git a/packages/connectivity_plus/connectivity_plus/macos/Classes/ConnectivityProvider.swift b/packages/connectivity_plus/connectivity_plus/macos/Classes/ConnectivityProvider.swift deleted file mode 100644 index ad2cbc1e16c..00000000000 --- a/packages/connectivity_plus/connectivity_plus/macos/Classes/ConnectivityProvider.swift +++ /dev/null @@ -1,21 +0,0 @@ -import Foundation - -public enum ConnectivityType { - case none - case wiredEthernet - case wifi - case cellular - case other -} - -public protocol ConnectivityProvider: NSObjectProtocol { - typealias ConnectivityUpdateHandler = ([ConnectivityType]) -> Void - - var currentConnectivityTypes: [ConnectivityType] { get } - - var connectivityUpdateHandler: ConnectivityUpdateHandler? { get set } - - func start() - - func stop() -} diff --git a/packages/connectivity_plus/connectivity_plus/macos/Classes/PathMonitorConnectivityProvider.swift b/packages/connectivity_plus/connectivity_plus/macos/Classes/PathMonitorConnectivityProvider.swift deleted file mode 100644 index cc9d9ec1a62..00000000000 --- a/packages/connectivity_plus/connectivity_plus/macos/Classes/PathMonitorConnectivityProvider.swift +++ /dev/null @@ -1,63 +0,0 @@ -import Foundation -import Network - -@available(macOS 10.14, *) -public class PathMonitorConnectivityProvider: NSObject, ConnectivityProvider { - - private let queue = DispatchQueue.global(qos: .background) - - private var pathMonitor: NWPathMonitor? - - public var currentConnectivityTypes: [ConnectivityType] { - let path = ensurePathMonitor().currentPath - var types: [ConnectivityType] = [] - - // Check for connectivity and append to types array as necessary - if path.status == .satisfied { - if path.usesInterfaceType(.wifi) { - types.append(.wifi) - } - if path.usesInterfaceType(.cellular) { - types.append(.cellular) - } - if path.usesInterfaceType(.wiredEthernet) { - types.append(.wiredEthernet) - } - if path.usesInterfaceType(.other) { - types.append(.other) - } - } - - return types.isEmpty ? [.none] : types - } - - public var connectivityUpdateHandler: ConnectivityUpdateHandler? - - override init() { - super.init() - _ = ensurePathMonitor() - } - - public func start() { - _ = ensurePathMonitor() - } - - public func stop() { - pathMonitor?.cancel() - pathMonitor = nil - } - - private func ensurePathMonitor() -> NWPathMonitor { - if (pathMonitor == nil) { - let pathMonitor = NWPathMonitor() - pathMonitor.start(queue: queue) - pathMonitor.pathUpdateHandler = pathUpdateHandler - self.pathMonitor = pathMonitor - } - return self.pathMonitor! - } - - private func pathUpdateHandler(path: NWPath) { - connectivityUpdateHandler?(currentConnectivityTypes) - } -} diff --git a/packages/connectivity_plus/connectivity_plus/macos/Classes/ReachabilityConnectivityProvider.swift b/packages/connectivity_plus/connectivity_plus/macos/Classes/ReachabilityConnectivityProvider.swift deleted file mode 100644 index 749132bcbc7..00000000000 --- a/packages/connectivity_plus/connectivity_plus/macos/Classes/ReachabilityConnectivityProvider.swift +++ /dev/null @@ -1,65 +0,0 @@ -import Foundation -import Reachability - -public class ReachabilityConnectivityProvider: NSObject, ConnectivityProvider { - private var reachability: Reachability? - - public var currentConnectivityTypes: [ConnectivityType] { - guard let reachability = reachability else { - return [.none] - } - - switch reachability.connection { - case .wifi: - return [.wifi] - case .cellular: - return [.cellular] - default: - return [.none] - } - } - - public var connectivityUpdateHandler: ConnectivityUpdateHandler? - - override init() { - super.init() - _ = ensureReachability() - } - - public func start() { - let reachability = ensureReachability() - - NotificationCenter.default.addObserver( - self, - selector: #selector(reachabilityChanged), - name: .reachabilityChanged, - object: reachability) - - try? reachability.startNotifier() - } - - public func stop() { - NotificationCenter.default.removeObserver( - self, - name: .reachabilityChanged, - object: reachability) - - reachability?.stopNotifier() - reachability = nil - } - - private func ensureReachability() -> Reachability { - if (reachability == nil) { - let reachability = try? Reachability() - self.reachability = reachability - } - return self.reachability! - } - - @objc private func reachabilityChanged(notification: NSNotification) { - if let reachability = notification.object as? Reachability { - self.reachability = reachability - connectivityUpdateHandler?(currentConnectivityTypes) - } - } -} diff --git a/packages/connectivity_plus/connectivity_plus/macos/connectivity_plus.podspec b/packages/connectivity_plus/connectivity_plus/macos/connectivity_plus.podspec deleted file mode 100644 index fdba5bd7456..00000000000 --- a/packages/connectivity_plus/connectivity_plus/macos/connectivity_plus.podspec +++ /dev/null @@ -1,22 +0,0 @@ -# -# To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html -# -Pod::Spec.new do |s| - s.name = 'connectivity_plus' - s.version = '0.0.1' - s.summary = 'Flutter plugin for checking connectivity' - s.description = <<-DESC - Desktop implementation of the connectivity plugin - DESC - s.homepage = 'https://plus.fluttercommunity.dev/' - s.license = { :type => 'BSD', :file => '../LICENSE' } - s.author = { 'Flutter Community Team' => 'authors@fluttercommunity.dev' } - s.source = { :http => 'https://github.com/fluttercommunity/plus_plugins' } - s.documentation_url = 'https://pub.dev/packages/connectivity_plus' - s.source_files = 'Classes/**/*' - s.dependency 'FlutterMacOS' - s.dependency 'ReachabilitySwift' - - s.platform = :osx - s.osx.deployment_target = '10.14' -end diff --git a/packages/connectivity_plus/connectivity_plus/pubspec.yaml b/packages/connectivity_plus/connectivity_plus/pubspec.yaml index 8e04c8569a8..298683f4713 100644 --- a/packages/connectivity_plus/connectivity_plus/pubspec.yaml +++ b/packages/connectivity_plus/connectivity_plus/pubspec.yaml @@ -16,7 +16,7 @@ flutter: package: dev.fluttercommunity.plus.connectivity pluginClass: ConnectivityPlugin ios: - pluginClass: ConnectivityPlusPlugin + pluginClass: ConnectivityPlugin linux: dartPluginClass: ConnectivityPlusLinuxPlugin macos: