From f6b844c41fb95545fb69b0983ea846243a5865ee Mon Sep 17 00:00:00 2001 From: Muhammad Rehan Date: Tue, 30 Jun 2026 02:56:36 +0500 Subject: [PATCH 1/2] chore: update native SDKs to versions with geofence support iOS 4.6.0, Android 4.19.0. Co-Authored-By: Claude Opus 4.8 (1M context) --- android/gradle.properties | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/android/gradle.properties b/android/gradle.properties index d2df90ed..2a5fd691 100644 --- a/android/gradle.properties +++ b/android/gradle.properties @@ -2,4 +2,4 @@ customerio.reactnative.kotlinVersion=2.1.20 customerio.reactnative.compileSdkVersion=36 customerio.reactnative.targetSdkVersion=36 customerio.reactnative.minSdkVersion=21 -customerio.reactnative.cioSDKVersionAndroid=4.18.2 +customerio.reactnative.cioSDKVersionAndroid=4.19.0 diff --git a/package.json b/package.json index abd8b9c4..66bd4cab 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ }, "./package.json": "./package.json" }, - "cioNativeiOSSdkVersion": "= 4.5.3", + "cioNativeiOSSdkVersion": "= 4.6.0", "cioiOSFirebaseWrapperSdkVersion": "= 1.0.0", "files": [ "src", From e83e72061a26a3008e4ba0400ef329d7bac4fbb5 Mon Sep 17 00:00:00 2001 From: Muhammad Rehan Date: Tue, 30 Jun 2026 02:57:05 +0500 Subject: [PATCH 2/2] chore: TEMP build example against geofence feature builds Point the example at pre-release native builds so geofence can be tested before the native SDKs are released. Revert this commit once they ship. - Android: example uses the feature-branch snapshot + the central snapshot repo. - iOS: load the geofence-aware CocoaPods override from the feature branch, build against the customerio-ios feature branch, and pin the native iOS SDK back to 4.5.3 (the branch version) so pods resolve until 4.6.0 is released. Co-Authored-By: Claude Opus 4.8 (1M context) --- example/android/build.gradle | 2 +- example/android/gradle.properties | 4 +++- example/ios/Podfile | 8 ++++++-- package.json | 2 +- 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/example/android/build.gradle b/example/android/build.gradle index f646bcdd..07264749 100644 --- a/example/android/build.gradle +++ b/example/android/build.gradle @@ -23,7 +23,7 @@ allprojects { repositories { google() // Google's Maven repository mavenLocal() // Only required for using locally deployed versions of the SDK - maven { url 'https://s01.oss.sonatype.org/content/repositories/snapshots/' } // Only required for using SNAPSHOT versions of the SDK + maven { url 'https://central.sonatype.com/repository/maven-snapshots/' } // Only required for using SNAPSHOT versions of the SDK } } diff --git a/example/android/gradle.properties b/example/android/gradle.properties index bfc42d1e..c46f6d44 100644 --- a/example/android/gradle.properties +++ b/example/android/gradle.properties @@ -46,7 +46,9 @@ edgeToEdgeEnabled=false # Customer.io SDK allows overriding the default SDK version. # This is useful for testing new features or bug fixes before they are released. # Set to 'local' to use the local version of the SDK. -# cioSDKVersionAndroid=local +# TEMP: geofence is not yet released; point at the feature-branch snapshot so the +# example can be built and tested. Revert once the native SDKs ship. +cioSDKVersionAndroid=feature-geofence-on-device-SNAPSHOT # Enable Customer.io Location module for the example app (used to verify location wiring). customerio_location_enabled=true diff --git a/example/ios/Podfile b/example/ios/Podfile index 48c69741..324dd8fa 100644 --- a/example/ios/Podfile +++ b/example/ios/Podfile @@ -1,7 +1,7 @@ # ------------- # This code only used internally for Customer.io testing require 'open-uri' -IO.copy_stream(URI.open('https://raw.githubusercontent.com/customerio/customerio-ios/main/scripts/cocoapods_override_sdk.rb'), "/tmp/override_cio_sdk.rb") +IO.copy_stream(URI.open('https://raw.githubusercontent.com/customerio/customerio-ios/feature/geofence-on-device/scripts/cocoapods_override_sdk.rb'), "/tmp/override_cio_sdk.rb") load "/tmp/override_cio_sdk.rb" # end of internal Customer.io testing code # ------------- @@ -63,7 +63,11 @@ target app_target_name do ) pod "customerio-reactnative", :path => cio_package_path, :subspecs => [push_provider, "location", "geofence"] # install_non_production_ios_sdk_local_path(local_path: '~/code/customerio-ios/', is_app_extension: false, push_service: push_provider) - # install_non_production_ios_sdk_git_branch(branch_name: 'feature/wrappers-inline-support', is_app_extension: false, push_service: push_provider) + # TEMP: geofence is not yet released; build against the feature branch. Revert once the native SDK ships. + install_non_production_ios_sdk_git_branch(branch_name: 'feature/geofence-on-device', is_app_extension: false, push_service: push_provider) + # TEMP: the umbrella CustomerIO/LocationGeofence subspec isn't on the released trunk spec yet, + # so resolve it from the feature branch's podspec explicitly. Revert once the native SDK ships. + pod 'CustomerIO/LocationGeofence', :git => 'https://github.com/customerio/customerio-ios.git', :branch => 'feature/geofence-on-device' post_install do |installer| react_native_post_install( diff --git a/package.json b/package.json index 66bd4cab..abd8b9c4 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ }, "./package.json": "./package.json" }, - "cioNativeiOSSdkVersion": "= 4.6.0", + "cioNativeiOSSdkVersion": "= 4.5.3", "cioiOSFirebaseWrapperSdkVersion": "= 1.0.0", "files": [ "src",