diff --git a/packages/noise_meter/CHANGELOG.md b/packages/noise_meter/CHANGELOG.md
index a915464c4..a711b9e15 100644
--- a/packages/noise_meter/CHANGELOG.md
+++ b/packages/noise_meter/CHANGELOG.md
@@ -1,3 +1,11 @@
+## 6.0.0
+
+- **Breaking:** requires Flutter `>=3.44.0`
+- Updated the example app to AGP 9.0.1, Kotlin 2.3.20, Gradle 9.1.0, Java 17 and `compileSdk 37`
+- Updated the example app to `permission_handler: ^13.0.1`
+- Updated to `audio_streamer: ^5.0.0`
+- Updated documentation
+
## 5.1.0
- update to `audio_streamer: ^4.2.0`
diff --git a/packages/noise_meter/README.md b/packages/noise_meter/README.md
index 75e99c37b..c5e42e91f 100644
--- a/packages/noise_meter/README.md
+++ b/packages/noise_meter/README.md
@@ -7,18 +7,29 @@ A noise meter plugin for iOS and Android.
Add `noise_meter` as a dependency in `pubspec.yaml`.
For help on adding as a dependency, view the [documentation](https://flutter.io/using-packages/).
-On **Android** you need to add a permission to `AndroidManifest.xml`:
+### Requirements
+
+This plugin builds on [`audio_streamer`](https://pub.dev/packages/audio_streamer) and inherits its
+platform requirements: Flutter 3.44 or later, iOS 16.0 or later, and Android `minSdk` 24 or later.
+
+### Android
+
+Add the microphone permission to `AndroidManifest.xml`:
```xml
-
```
-On **iOS** enable the following in XCode:
+### iOS
+
+Enable the following in Xcode:
- Capabilities > Background Modes > _Audio, AirPlay and Picture in Picture_
- In the Runner Xcode project edit the _Info.plist_ file. Add an entry for _'Privacy - Microphone Usage Description'_
-- Edit the `Podfile` to include the permission for the microphone:
+
+If your app requests the permission with [`permission_handler`](https://pub.dev/packages/permission_handler)
+**and still integrates iOS dependencies with CocoaPods**, edit the `Podfile` to enable the
+microphone permission:
```ruby
post_install do |installer|
@@ -34,6 +45,17 @@ post_install do |installer|
end
```
+This step is not needed with Swift Package Manager — `permission_handler_apple` enables the
+microphone permission automatically when `NSMicrophoneUsageDescription` is present in
+`Info.plist`.
+
+## Swift Package Manager
+
+iOS dependencies are resolved with
+[Swift Package Manager](https://docs.flutter.dev/packages-and-plugins/swift-package-manager/for-app-developers)
+on Flutter 3.44 and later; no configuration is needed. CocoaPods remains supported for apps that
+have not migrated. The example app is integrated with SPM only and has no `Podfile`.
+
## Usage
See the example app for how to use the plugin. This app also illustrated how to obtain permission to access the microphone.
diff --git a/packages/noise_meter/example/android/app/build.gradle b/packages/noise_meter/example/android/app/build.gradle
deleted file mode 100644
index 61c61ca50..000000000
--- a/packages/noise_meter/example/android/app/build.gradle
+++ /dev/null
@@ -1,68 +0,0 @@
-plugins {
- id "com.android.application"
- id "kotlin-android"
- id "dev.flutter.flutter-gradle-plugin"
-}
-
-def localProperties = new Properties()
-def localPropertiesFile = rootProject.file('local.properties')
-if (localPropertiesFile.exists()) {
- localPropertiesFile.withReader('UTF-8') { reader ->
- localProperties.load(reader)
- }
-}
-
-def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
-if (flutterVersionCode == null) {
- flutterVersionCode = '1'
-}
-
-def flutterVersionName = localProperties.getProperty('flutter.versionName')
-if (flutterVersionName == null) {
- flutterVersionName = '1.0'
-}
-
-android {
- compileSdkVersion flutter.compileSdkVersion
- namespace "com.noise_meter.example"
-
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_8
- targetCompatibility JavaVersion.VERSION_1_8
- }
-
- sourceSets {
- main.java.srcDirs += 'src/main/kotlin'
- }
-
- kotlinOptions {
- jvmTarget = '1.8'
- }
-
- lintOptions {
- disable 'InvalidPackage'
- }
-
- defaultConfig {
- // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
- applicationId "com.noise_meter.example"
- minSdkVersion flutter.minSdkVersion
- targetSdkVersion flutter.targetSdkVersion
- versionCode flutterVersionCode.toInteger()
- versionName flutterVersionName
- testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
- }
-
- buildTypes {
- release {
- // TODO: Add your own signing config for the release build.
- // Signing with the debug keys for now, so `flutter run --release` works.
- signingConfig signingConfigs.debug
- }
- }
-}
-
-flutter {
- source '../..'
-}
-
diff --git a/packages/noise_meter/example/android/app/build.gradle.kts b/packages/noise_meter/example/android/app/build.gradle.kts
new file mode 100644
index 000000000..be823be5e
--- /dev/null
+++ b/packages/noise_meter/example/android/app/build.gradle.kts
@@ -0,0 +1,44 @@
+plugins {
+ id("com.android.application")
+ // The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
+ id("dev.flutter.flutter-gradle-plugin")
+}
+
+android {
+ namespace = "com.noise_meter.example"
+ // permission_handler_android 14 requires compiling against API 37, which is
+ // ahead of Flutter's default (flutter.compileSdkVersion == 36).
+ compileSdk = 37
+ ndkVersion = flutter.ndkVersion
+
+ compileOptions {
+ sourceCompatibility = JavaVersion.VERSION_17
+ targetCompatibility = JavaVersion.VERSION_17
+ }
+
+ defaultConfig {
+ applicationId = "com.noise_meter.example"
+ minSdk = flutter.minSdkVersion
+ targetSdk = flutter.targetSdkVersion
+ versionCode = flutter.versionCode
+ versionName = flutter.versionName
+ }
+
+ buildTypes {
+ release {
+ // TODO: Add your own signing config for the release build.
+ // Signing with the debug keys for now, so `flutter run --release` works.
+ signingConfig = signingConfigs.getByName("debug")
+ }
+ }
+}
+
+kotlin {
+ compilerOptions {
+ jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17
+ }
+}
+
+flutter {
+ source = "../.."
+}
diff --git a/packages/noise_meter/example/android/app/src/debug/AndroidManifest.xml b/packages/noise_meter/example/android/app/src/debug/AndroidManifest.xml
index c3baaa2d6..f880684a6 100644
--- a/packages/noise_meter/example/android/app/src/debug/AndroidManifest.xml
+++ b/packages/noise_meter/example/android/app/src/debug/AndroidManifest.xml
@@ -1,7 +1,6 @@
-
+
-
diff --git a/packages/noise_meter/example/android/app/src/main/AndroidManifest.xml b/packages/noise_meter/example/android/app/src/main/AndroidManifest.xml
index efdfded9f..5d6b54bf3 100644
--- a/packages/noise_meter/example/android/app/src/main/AndroidManifest.xml
+++ b/packages/noise_meter/example/android/app/src/main/AndroidManifest.xml
@@ -1,4 +1,5 @@
-
+
+
("clean") {
+ delete(rootProject.layout.buildDirectory)
+}
diff --git a/packages/noise_meter/example/android/gradle.properties b/packages/noise_meter/example/android/gradle.properties
index 94adc3a3f..e96108cfe 100644
--- a/packages/noise_meter/example/android/gradle.properties
+++ b/packages/noise_meter/example/android/gradle.properties
@@ -1,3 +1,6 @@
-org.gradle.jvmargs=-Xmx1536M
+org.gradle.jvmargs=-Xmx8G -XX:MaxMetaspaceSize=4G -XX:ReservedCodeCacheSize=512m -XX:+HeapDumpOnOutOfMemoryError
android.useAndroidX=true
-android.enableJetifier=true
+# This newDsl flag was added by the Flutter template
+android.newDsl=false
+# This builtInKotlin flag was added by the Flutter template
+android.builtInKotlin=false
diff --git a/packages/noise_meter/example/android/gradle/wrapper/gradle-wrapper.properties b/packages/noise_meter/example/android/gradle/wrapper/gradle-wrapper.properties
index 8f3239ab6..2d428bfb1 100644
--- a/packages/noise_meter/example/android/gradle/wrapper/gradle-wrapper.properties
+++ b/packages/noise_meter/example/android/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,5 @@
-#Fri Jun 23 08:50:38 CEST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-9.1.0-all.zip
diff --git a/packages/noise_meter/example/android/settings.gradle b/packages/noise_meter/example/android/settings.gradle
deleted file mode 100644
index 73700565f..000000000
--- a/packages/noise_meter/example/android/settings.gradle
+++ /dev/null
@@ -1,25 +0,0 @@
-pluginManagement {
- def flutterSdkPath = {
- def properties = new Properties()
- file("local.properties").withInputStream { properties.load(it) }
- def flutterSdkPath = properties.getProperty("flutter.sdk")
- assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
- return flutterSdkPath
- }()
-
- includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
-
- repositories {
- google()
- mavenCentral()
- gradlePluginPortal()
- }
-}
-
-plugins {
- id "dev.flutter.flutter-plugin-loader" version "1.0.2"
- id "com.android.application" version "8.12.0" apply false
- id "org.jetbrains.kotlin.android" version "2.2.10" apply false
-}
-
-include ":app"
\ No newline at end of file
diff --git a/packages/noise_meter/example/android/settings.gradle.kts b/packages/noise_meter/example/android/settings.gradle.kts
new file mode 100644
index 000000000..c21f0c5b4
--- /dev/null
+++ b/packages/noise_meter/example/android/settings.gradle.kts
@@ -0,0 +1,26 @@
+pluginManagement {
+ val flutterSdkPath =
+ run {
+ val properties = java.util.Properties()
+ file("local.properties").inputStream().use { properties.load(it) }
+ val flutterSdkPath = properties.getProperty("flutter.sdk")
+ require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" }
+ flutterSdkPath
+ }
+
+ includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
+
+ repositories {
+ google()
+ mavenCentral()
+ gradlePluginPortal()
+ }
+}
+
+plugins {
+ id("dev.flutter.flutter-plugin-loader") version "1.0.0"
+ id("com.android.application") version "9.0.1" apply false
+ id("org.jetbrains.kotlin.android") version "2.3.20" apply false
+}
+
+include(":app")
diff --git a/packages/noise_meter/example/ios/Flutter/AppFrameworkInfo.plist b/packages/noise_meter/example/ios/Flutter/AppFrameworkInfo.plist
index d57061dd6..ab8e063fe 100644
--- a/packages/noise_meter/example/ios/Flutter/AppFrameworkInfo.plist
+++ b/packages/noise_meter/example/ios/Flutter/AppFrameworkInfo.plist
@@ -20,7 +20,5 @@
????
CFBundleVersion
1.0
- MinimumOSVersion
- 13.0
diff --git a/packages/noise_meter/example/ios/Flutter/Debug.xcconfig b/packages/noise_meter/example/ios/Flutter/Debug.xcconfig
index e8efba114..592ceee85 100644
--- a/packages/noise_meter/example/ios/Flutter/Debug.xcconfig
+++ b/packages/noise_meter/example/ios/Flutter/Debug.xcconfig
@@ -1,2 +1 @@
-#include "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
#include "Generated.xcconfig"
diff --git a/packages/noise_meter/example/ios/Flutter/Release.xcconfig b/packages/noise_meter/example/ios/Flutter/Release.xcconfig
index 399e9340e..592ceee85 100644
--- a/packages/noise_meter/example/ios/Flutter/Release.xcconfig
+++ b/packages/noise_meter/example/ios/Flutter/Release.xcconfig
@@ -1,2 +1 @@
-#include "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
#include "Generated.xcconfig"
diff --git a/packages/noise_meter/example/ios/Podfile b/packages/noise_meter/example/ios/Podfile
deleted file mode 100644
index b7aaa0894..000000000
--- a/packages/noise_meter/example/ios/Podfile
+++ /dev/null
@@ -1,47 +0,0 @@
-# Uncomment this line to define a global platform for your project
-# platform :ios, '13.0'
-
-# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
-ENV['COCOAPODS_DISABLE_STATS'] = 'true'
-
-project 'Runner', {
- 'Debug' => :debug,
- 'Profile' => :release,
- 'Release' => :release,
-}
-
-def flutter_root
- generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__)
- unless File.exist?(generated_xcode_build_settings_path)
- raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first"
- end
-
- File.foreach(generated_xcode_build_settings_path) do |line|
- matches = line.match(/FLUTTER_ROOT\=(.*)/)
- return matches[1].strip if matches
- end
- raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get"
-end
-
-require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root)
-
-flutter_ios_podfile_setup
-
-target 'Runner' do
- use_frameworks!
- use_modular_headers!
-
- flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
-end
-
-post_install do |installer|
- installer.pods_project.targets.each do |target|
- flutter_additional_ios_build_settings(target)
- target.build_configurations.each do |config|
- # for more infomation: https://github.com/BaseflowIT/flutter-permission-handler/blob/master/permission_handler/ios/Classes/PermissionHandlerEnums.h
- config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= [
- '$(inherited)',
- 'PERMISSION_MICROPHONE=1',]
- end
- end
-end
diff --git a/packages/noise_meter/example/ios/Runner.xcodeproj/project.pbxproj b/packages/noise_meter/example/ios/Runner.xcodeproj/project.pbxproj
index d19eb491f..058aa7921 100644
--- a/packages/noise_meter/example/ios/Runner.xcodeproj/project.pbxproj
+++ b/packages/noise_meter/example/ios/Runner.xcodeproj/project.pbxproj
@@ -8,12 +8,12 @@
/* Begin PBXBuildFile section */
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
- 210F07AC63A28DD3B399AEE8 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4651416B7DEF900CBB70EA38 /* Pods_Runner.framework */; };
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; };
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; };
+ 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */; };
/* End PBXBuildFile section */
/* Begin PBXCopyFilesBuildPhase section */
@@ -33,9 +33,6 @@
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; };
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; };
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; };
- 419DD3CAB863A8EED78E0628 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; };
- 4651416B7DEF900CBB70EA38 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
- 6B861D0571DFE85EBC634E99 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; };
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; };
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; };
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; };
@@ -46,7 +43,7 @@
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; };
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; };
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
- D00A1EEC27E8DE1D4B28BA37 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; };
+ 78E0A7A72DC9AD7400C4905E /* FlutterGeneratedPluginSwiftPackage */ = {isa = PBXFileReference; lastKnownFileType = wrapper; name = FlutterGeneratedPluginSwiftPackage; path = Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage; sourceTree = ""; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@@ -54,24 +51,17 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 210F07AC63A28DD3B399AEE8 /* Pods_Runner.framework in Frameworks */,
+ 78A318202AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
- 8493370A2DC0A21EAF2EB288 /* Frameworks */ = {
- isa = PBXGroup;
- children = (
- 4651416B7DEF900CBB70EA38 /* Pods_Runner.framework */,
- );
- name = Frameworks;
- sourceTree = "";
- };
9740EEB11CF90186004384FC /* Flutter */ = {
isa = PBXGroup;
children = (
+ 78E0A7A72DC9AD7400C4905E /* FlutterGeneratedPluginSwiftPackage */,
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */,
9740EEB21CF90195004384FC /* Debug.xcconfig */,
7AFA3C8E1D35360C0083082E /* Release.xcconfig */,
@@ -86,8 +76,6 @@
9740EEB11CF90186004384FC /* Flutter */,
97C146F01CF9000F007C117D /* Runner */,
97C146EF1CF9000F007C117D /* Products */,
- BFD471C1DF1D7CDA4616B4AB /* Pods */,
- 8493370A2DC0A21EAF2EB288 /* Frameworks */,
);
sourceTree = "";
};
@@ -122,32 +110,22 @@
name = "Supporting Files";
sourceTree = "";
};
- BFD471C1DF1D7CDA4616B4AB /* Pods */ = {
- isa = PBXGroup;
- children = (
- 6B861D0571DFE85EBC634E99 /* Pods-Runner.debug.xcconfig */,
- D00A1EEC27E8DE1D4B28BA37 /* Pods-Runner.release.xcconfig */,
- 419DD3CAB863A8EED78E0628 /* Pods-Runner.profile.xcconfig */,
- );
- path = Pods;
- sourceTree = "";
- };
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
97C146ED1CF9000F007C117D /* Runner */ = {
+ packageProductDependencies = (
+ 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */,
+ );
isa = PBXNativeTarget;
buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */;
buildPhases = (
- 40E4D1A59D758D708FE113A9 /* [CP] Check Pods Manifest.lock */,
9740EEB61CF901F6004384FC /* Run Script */,
97C146EA1CF9000F007C117D /* Sources */,
97C146EB1CF9000F007C117D /* Frameworks */,
97C146EC1CF9000F007C117D /* Resources */,
9705A1C41CF9048500538489 /* Embed Frameworks */,
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
- 6C7EA70D0E2897CE334C0174 /* [CP] Embed Pods Frameworks */,
- 9AB51CF4346838C124BECF9D /* [CP] Copy Pods Resources */,
);
buildRules = (
);
@@ -162,6 +140,9 @@
/* Begin PBXProject section */
97C146E61CF9000F007C117D /* Project object */ = {
+ packageReferences = (
+ 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage" */,
+ );
isa = PBXProject;
attributes = {
LastUpgradeCheck = 1510;
@@ -222,45 +203,6 @@
shellPath = /bin/sh;
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
};
- 40E4D1A59D758D708FE113A9 /* [CP] Check Pods Manifest.lock */ = {
- isa = PBXShellScriptBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- inputFileListPaths = (
- );
- inputPaths = (
- "${PODS_PODFILE_DIR_PATH}/Podfile.lock",
- "${PODS_ROOT}/Manifest.lock",
- );
- name = "[CP] Check Pods Manifest.lock";
- outputFileListPaths = (
- );
- outputPaths = (
- "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt",
- );
- runOnlyForDeploymentPostprocessing = 0;
- shellPath = /bin/sh;
- shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
- showEnvVarsInLog = 0;
- };
- 6C7EA70D0E2897CE334C0174 /* [CP] Embed Pods Frameworks */ = {
- isa = PBXShellScriptBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- inputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist",
- );
- name = "[CP] Embed Pods Frameworks";
- outputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist",
- );
- runOnlyForDeploymentPostprocessing = 0;
- shellPath = /bin/sh;
- shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
- showEnvVarsInLog = 0;
- };
9740EEB61CF901F6004384FC /* Run Script */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
@@ -276,23 +218,6 @@
shellPath = /bin/sh;
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
};
- 9AB51CF4346838C124BECF9D /* [CP] Copy Pods Resources */ = {
- isa = PBXShellScriptBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- inputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
- );
- name = "[CP] Copy Pods Resources";
- outputFileListPaths = (
- "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
- );
- runOnlyForDeploymentPostprocessing = 0;
- shellPath = /bin/sh;
- shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
- showEnvVarsInLog = 0;
- };
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
@@ -368,7 +293,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 13.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 16.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SUPPORTED_PLATFORMS = iphoneos;
@@ -454,7 +379,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 13.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 16.0;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
@@ -503,7 +428,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 13.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 16.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SUPPORTED_PLATFORMS = iphoneos;
@@ -598,6 +523,18 @@
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
+/* Begin XCLocalSwiftPackageReference section */
+ 781AD8BC2B33823900A9FFBB /* XCLocalSwiftPackageReference "Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage" */ = {
+ isa = XCLocalSwiftPackageReference;
+ relativePath = Flutter/ephemeral/Packages/FlutterGeneratedPluginSwiftPackage;
+ };
+/* End XCLocalSwiftPackageReference section */
+/* Begin XCSwiftPackageProductDependency section */
+ 78A3181F2AECB46A00862997 /* FlutterGeneratedPluginSwiftPackage */ = {
+ isa = XCSwiftPackageProductDependency;
+ productName = FlutterGeneratedPluginSwiftPackage;
+ };
+/* End XCSwiftPackageProductDependency section */
};
rootObject = 97C146E61CF9000F007C117D /* Project object */;
}
diff --git a/packages/noise_meter/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/packages/noise_meter/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
index fc5ae0316..0bd6d4227 100644
--- a/packages/noise_meter/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
+++ b/packages/noise_meter/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
@@ -5,6 +5,24 @@
+
+
+
+
+
+
+
+
+
+
-
-
diff --git a/packages/noise_meter/example/ios/Runner/AppDelegate.swift b/packages/noise_meter/example/ios/Runner/AppDelegate.swift
index b63630348..c30b367ec 100644
--- a/packages/noise_meter/example/ios/Runner/AppDelegate.swift
+++ b/packages/noise_meter/example/ios/Runner/AppDelegate.swift
@@ -1,13 +1,16 @@
-import UIKit
import Flutter
+import UIKit
@main
-@objc class AppDelegate: FlutterAppDelegate {
+@objc class AppDelegate: FlutterAppDelegate, FlutterImplicitEngineDelegate {
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
- GeneratedPluginRegistrant.register(with: self)
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}
+
+ func didInitializeImplicitFlutterEngine(_ engineBridge: FlutterImplicitEngineBridge) {
+ GeneratedPluginRegistrant.register(with: engineBridge.pluginRegistry)
+ }
}
diff --git a/packages/noise_meter/example/ios/Runner/Info.plist b/packages/noise_meter/example/ios/Runner/Info.plist
index b4a1edbf7..af5845a9c 100644
--- a/packages/noise_meter/example/ios/Runner/Info.plist
+++ b/packages/noise_meter/example/ios/Runner/Info.plist
@@ -13,7 +13,7 @@
CFBundleInfoDictionaryVersion
6.0
CFBundleName
- example
+ noise_meter_example
CFBundlePackageType
APPL
CFBundleShortVersionString
@@ -26,6 +26,27 @@
NSMicrophoneUsageDescription
Records audio noise detection
+ UIApplicationSceneManifest
+
+ UIApplicationSupportsMultipleScenes
+
+ UISceneConfigurations
+
+ UIWindowSceneSessionRoleApplication
+
+
+ UISceneClassName
+ UIWindowScene
+ UISceneConfigurationName
+ flutter
+ UISceneDelegateClassName
+ FlutterSceneDelegate
+ UISceneStoryboardFile
+ Main
+
+
+
+
UIApplicationSupportsIndirectInputEvents
UIBackgroundModes
diff --git a/packages/noise_meter/example/pubspec.yaml b/packages/noise_meter/example/pubspec.yaml
index 417b0d591..459960614 100644
--- a/packages/noise_meter/example/pubspec.yaml
+++ b/packages/noise_meter/example/pubspec.yaml
@@ -1,11 +1,11 @@
name: noise_meter_example
description: Example app for the noise_meter package.
publish_to: none
-version: 5.2.0
+version: 6.0.0
environment:
sdk: ">=3.8.1 <4.0.0"
- flutter: ">=3.0.0"
+ flutter: ">=3.44.0"
dependencies:
flutter:
@@ -14,7 +14,7 @@ dependencies:
path: ../
cupertino_icons: ^1.0.2
- permission_handler: ^12.0.0
+ permission_handler: ^13.0.1
dev_dependencies:
flutter_test:
diff --git a/packages/noise_meter/pubspec.yaml b/packages/noise_meter/pubspec.yaml
index 3b7f4cb6d..2effc3fb4 100644
--- a/packages/noise_meter/pubspec.yaml
+++ b/packages/noise_meter/pubspec.yaml
@@ -1,11 +1,11 @@
name: noise_meter
description: A Flutter plugin for collecting noise from the phone's microphone.
-version: 5.1.0
+version: 6.0.0
homepage: https://github.com/cph-cachet/flutter-plugins/tree/master/packages/noise_meter
environment:
sdk: ">=3.8.1 <4.0.0"
- flutter: ">=3.0.0"
+ flutter: ">=3.44.0"
dependencies:
flutter:
@@ -16,3 +16,7 @@ dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: any
+
+flutter:
+ config:
+ enable-swift-package-manager: true