diff --git a/CHANGELOG.md b/CHANGELOG.md
index 0fede0b..3be0914 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,6 @@
+## 1.23.36 (18.11.2024)
+* Updated native iOS SDK to fix an issue with opening notifications with action buttons
+
## 1.23.35 (16.11.2024)
* Some futures were resolved too early, this has been fixed.
* Updated native iOS + Android SDKs
diff --git a/android/build.gradle b/android/build.gradle
index f30bd35..4831d2c 100755
--- a/android/build.gradle
+++ b/android/build.gradle
@@ -1,5 +1,5 @@
group 'com.cleverpush.flutter'
-version '1.23.35'
+version '1.23.36'
buildscript {
repositories {
diff --git a/example/ios/Flutter/AppFrameworkInfo.plist b/example/ios/Flutter/AppFrameworkInfo.plist
index 9367d48..7c56964 100644
--- a/example/ios/Flutter/AppFrameworkInfo.plist
+++ b/example/ios/Flutter/AppFrameworkInfo.plist
@@ -21,6 +21,6 @@
CFBundleVersion
1.0
MinimumOSVersion
- 8.0
+ 12.0
diff --git a/example/ios/Flutter/Flutter.podspec b/example/ios/Flutter/Flutter.podspec
index 29758b7..98e1633 100644
--- a/example/ios/Flutter/Flutter.podspec
+++ b/example/ios/Flutter/Flutter.podspec
@@ -11,7 +11,7 @@ Pod::Spec.new do |s|
s.license = { :type => 'BSD' }
s.author = { 'Flutter Dev Team' => 'flutter-dev@googlegroups.com' }
s.source = { :git => 'https://github.com/flutter/engine', :tag => s.version.to_s }
- s.ios.deployment_target = '11.0'
+ s.ios.deployment_target = '12.0'
# Framework linking is handled by Flutter tooling, not CocoaPods.
# Add a placeholder to satisfy `s.dependency 'Flutter'` plugin podspecs.
s.vendored_frameworks = 'path/to/nothing'
diff --git a/example/ios/Podfile b/example/ios/Podfile
index b9cb4af..25d5b3d 100644
--- a/example/ios/Podfile
+++ b/example/ios/Podfile
@@ -2,7 +2,7 @@
# source 'https://github.com/CocoaPods/Specs.git'
# Uncomment this line to define a global platform for your project
-platform :ios, '11.0'
+platform :ios, '12.0'
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock
index a449ab1..7d25197 100644
--- a/example/ios/Podfile.lock
+++ b/example/ios/Podfile.lock
@@ -1,7 +1,7 @@
PODS:
- - CleverPush (1.30.4)
- - cleverpush_flutter (1.23.16):
- - CleverPush (= 1.30.4)
+ - CleverPush (1.31.19)
+ - cleverpush_flutter (1.23.36):
+ - CleverPush (= 1.31.19)
- Flutter
- Flutter (1.0.0)
@@ -11,7 +11,7 @@ DEPENDENCIES:
- Flutter (from `Flutter`)
SPEC REPOS:
- trunk:
+ https://github.com/CocoaPods/Specs.git:
- CleverPush
EXTERNAL SOURCES:
@@ -21,10 +21,10 @@ EXTERNAL SOURCES:
:path: Flutter
SPEC CHECKSUMS:
- CleverPush: 63cfd1b9e49850af2acc5647b9ac641dd4fbfff1
- cleverpush_flutter: 38e95abcc7a6edc63b994dbeabb45db9b4f639a9
- Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
+ CleverPush: ef4c4034546a9d99f639df8793be5eeca9f9b3fc
+ cleverpush_flutter: bab9b1ba4e55667246fc591f0753207bbf793201
+ Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
-PODFILE CHECKSUM: 94b15b543645465f0de57fcffaa649e0ce5860d8
+PODFILE CHECKSUM: 01be41a8c8a5032e06a3944c7867cff11715991f
-COCOAPODS: 1.13.0
+COCOAPODS: 1.16.2
diff --git a/example/ios/Runner.xcodeproj/project.pbxproj b/example/ios/Runner.xcodeproj/project.pbxproj
index ad9961b..d42e6b9 100644
--- a/example/ios/Runner.xcodeproj/project.pbxproj
+++ b/example/ios/Runner.xcodeproj/project.pbxproj
@@ -217,11 +217,11 @@
97C146EA1CF9000F007C117D /* Sources */,
97C146EB1CF9000F007C117D /* Frameworks */,
97C146EC1CF9000F007C117D /* Resources */,
+ 291CB2332982B39300F62F24 /* Embed Foundation Extensions */,
9705A1C41CF9048500538489 /* Embed Frameworks */,
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
0173D6A6822EC0BA3C6CBC7D /* [CP] Embed Pods Frameworks */,
1E3B8961EC2B69E0443B1028 /* [CP] Copy Pods Resources */,
- 291CB2332982B39300F62F24 /* Embed Foundation Extensions */,
);
buildRules = (
);
@@ -239,7 +239,7 @@
97C146E61CF9000F007C117D /* Project object */ = {
isa = PBXProject;
attributes = {
- LastUpgradeCheck = 1020;
+ LastUpgradeCheck = 1510;
ORGANIZATIONNAME = "";
TargetAttributes = {
291CB2292982B39300F62F24 = {
@@ -350,10 +350,12 @@
};
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
isa = PBXShellScriptBuildPhase;
+ alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
+ "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
);
name = "Thin Binary";
outputPaths = (
@@ -506,7 +508,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 12.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SUPPORTED_PLATFORMS = iphoneos;
@@ -688,7 +690,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 12.0;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
@@ -802,7 +804,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 12.0;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
@@ -851,7 +853,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 12.0;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SUPPORTED_PLATFORMS = iphoneos;
diff --git a/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
index fb2dffc..5e31d3d 100644
--- a/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
+++ b/example/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
@@ -1,6 +1,6 @@
UIViewControllerBasedStatusBarAppearance
+ CADisableMinimumFrameDurationOnPhone
+
+ UIApplicationSupportsIndirectInputEvents
+
diff --git a/example/lib/main.dart b/example/lib/main.dart
index 9b7a132..d3a9689 100755
--- a/example/lib/main.dart
+++ b/example/lib/main.dart
@@ -25,6 +25,9 @@ class _MyAppState extends State {
CleverPush.shared.setShowNotificationsInForeground(false);
CleverPush.shared.enableDevelopmentMode();
+ // CleverPush Channel ID
+ await CleverPush.shared.init("CHANNEL_ID", true);
+
CleverPush.shared
.setNotificationReceivedHandler((CPNotificationReceivedResult result) {
this.setState(() {
@@ -59,9 +62,6 @@ class _MyAppState extends State {
CleverPush.shared.setBrandingColor("#ff0000");
- // CleverPush Channel ID
- await CleverPush.shared.init("CHANNEL_ID", true);
-
CleverPush.shared.setChatUrlOpenedHandler((url) {
Widget continueButton = TextButton(
child: Text("Ok"),
@@ -243,6 +243,17 @@ class _MyAppState extends State {
child: SingleChildScrollView(
child: new Table(
children: [
+ new TableRow(children: [
+ new Container(
+ child: new Text(_debugLabelString),
+ alignment: Alignment.center,
+ )
+ ]),
+ new TableRow(children: [
+ Container(
+ height: 8.0,
+ )
+ ]),
new TableRow(children: [
new CleverPushButton( "Show Chat View", () {
Navigator.pushNamed(context, '/chat');
@@ -331,17 +342,6 @@ class _MyAppState extends State {
new CleverPushButton(
"Pull Subscription Attribute Value", _pullSubscriptionAttributeValue, true)
]),
- new TableRow(children: [
- Container(
- height: 8.0,
- )
- ]),
- new TableRow(children: [
- new Container(
- child: new Text(_debugLabelString),
- alignment: Alignment.center,
- )
- ]),
],
),
),
diff --git a/ios/Classes/CleverPushPlugin.m b/ios/Classes/CleverPushPlugin.m
index b76b8ce..678cbb2 100755
--- a/ios/Classes/CleverPushPlugin.m
+++ b/ios/Classes/CleverPushPlugin.m
@@ -33,6 +33,14 @@ + (void)registerWithRegistrar:(NSObject*)registrar {
CPChatViewFlutterFactory* factory = [[CPChatViewFlutterFactory alloc] initWithMessenger:registrar.messenger];
[registrar registerViewFactory:factory withId:@"cleverpush-chat-view"];
+
+ [registrar addApplicationDelegate:CleverPushPlugin.sharedInstance];
+}
+
+- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions {
+ CleverPushPlugin.sharedInstance.launchOptions = launchOptions;
+
+ return YES;
}
- (void)handleMethodCall:(FlutterMethodCall*)call result:(FlutterResult)result {
diff --git a/ios/Classes/UIApplication+CleverPushFlutterPlugin.m b/ios/Classes/UIApplication+CleverPushFlutterPlugin.m
deleted file mode 100755
index 2711adf..0000000
--- a/ios/Classes/UIApplication+CleverPushFlutterPlugin.m
+++ /dev/null
@@ -1,57 +0,0 @@
-#import
-#import
-#import
-
-@interface CleverPushPlugin : NSObject
-
-+ (instancetype)sharedInstance;
-@property (strong, nonatomic) NSDictionary *launchOptions;
-
-@end
-
-@implementation UIApplication(CleverPushFlutterPlugin)
-
-static void injectSelector(Class newClass, SEL newSel, Class addToClass, SEL makeLikeSel) {
- Method newMeth = class_getInstanceMethod(newClass, newSel);
- IMP imp = method_getImplementation(newMeth);
- const char* methodTypeEncoding = method_getTypeEncoding(newMeth);
-
- BOOL successful = class_addMethod(addToClass, makeLikeSel, imp, methodTypeEncoding);
- if (!successful) {
- class_addMethod(addToClass, newSel, imp, methodTypeEncoding);
- newMeth = class_getInstanceMethod(addToClass, newSel);
-
- Method orgMeth = class_getInstanceMethod(addToClass, makeLikeSel);
-
- method_exchangeImplementations(orgMeth, newMeth);
- }
-}
-
-+ (void)load {
- static dispatch_once_t onceToken;
- dispatch_once(&onceToken, ^{
- method_exchangeImplementations(class_getInstanceMethod(self, @selector(setDelegate:)), class_getInstanceMethod(self, @selector(setCleverPushFlutterDelegate:)));
- });
-}
-
-- (void)setCleverPushFlutterDelegate:(id)delegate {
- static dispatch_once_t onceToken;
- dispatch_once(&onceToken, ^{
- Class delegateClass = [delegate class];
-
- injectSelector(self.class, @selector(cleverPushApplication:didFinishLaunchingWithOptions:),
- delegateClass, @selector(application:didFinishLaunchingWithOptions:));
- [self setCleverPushFlutterDelegate:delegate];
- });
-}
-
-- (BOOL)cleverPushApplication:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions {
- CleverPushPlugin.sharedInstance.launchOptions = launchOptions;
-
- if ([self respondsToSelector:@selector(cleverPushApplication:didFinishLaunchingWithOptions:)]) {
- return [self cleverPushApplication:application didFinishLaunchingWithOptions:launchOptions];
- }
- return YES;
-}
-
-@end
diff --git a/ios/cleverpush_flutter.podspec b/ios/cleverpush_flutter.podspec
index f763df7..c86fd50 100755
--- a/ios/cleverpush_flutter.podspec
+++ b/ios/cleverpush_flutter.podspec
@@ -1,6 +1,6 @@
Pod::Spec.new do |s|
s.name = 'cleverpush_flutter'
- s.version = '1.23.35'
+ s.version = '1.23.36'
s.summary = 'CleverPush Flutter SDK'
s.description = 'CleverPush'
s.homepage = 'https://cleverpush.com'
@@ -10,7 +10,7 @@ Pod::Spec.new do |s|
s.source_files = 'Classes/**/*'
s.public_header_files = 'Classes/**/*.h'
s.dependency 'Flutter'
- s.dependency 'CleverPush', '1.31.18'
+ s.dependency 'CleverPush', '1.31.19'
s.static_framework = true
s.ios.deployment_target = '8.0'
end
diff --git a/pubspec.yaml b/pubspec.yaml
index 4e125bd..ce5327e 100755
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,6 +1,6 @@
name: cleverpush_flutter
description: CleverPush
-version: 1.23.35
+version: 1.23.36
homepage: https://github.com/cleverpush/cleverpush-flutter-sdk
flutter: