Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .github/workflows/build-sample-app.yml
Original file line number Diff line number Diff line change
Expand Up @@ -96,13 +96,18 @@ jobs:
PUBLIC_BUILDS_GROUP: public
# Input variables
CURRENT_BRANCH: ${{ github.ref }}
PR_HEAD_BRANCH: ${{ github.head_ref }}
run: |
# Initialize with the default distribution group
distribution_groups=("$ALL_BUILDS_GROUP")

# Append distribution groups based on branch and context if the app is primary
if [[ "$IS_PRIMARY_APP" == "true" ]]; then
[[ "$CURRENT_BRANCH" == "refs/heads/feature/"* ]] && distribution_groups+=("$FEATURE_BUILDS_GROUP")
# TEMP (geofence pre-release): also publish this PR's builds to the feature-branch
# channel so peers can test geofence before native iOS 4.7.0 / Android 4.20.0 ship.
# Reverted with the rest of the geofence test wiring once native goes live.
[[ "$PR_HEAD_BRANCH" == "mbl-1785-geofence-final" ]] && distribution_groups+=("$FEATURE_BUILDS_GROUP")
[[ "$CURRENT_BRANCH" == "refs/heads/main" ]] && distribution_groups+=("$NEXT_BUILDS_GROUP")
[[ -n "${{ inputs.sdk_version }}" ]] && distribution_groups+=("$PUBLIC_BUILDS_GROUP")
fi
Expand Down
2 changes: 1 addition & 1 deletion android/gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -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.20.0
2 changes: 1 addition & 1 deletion example/android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -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
}
}

Expand Down
4 changes: 3 additions & 1 deletion example/android/gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -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

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Android snapshot property not applied

High Severity

The example app sets cioSDKVersionAndroid to the geofence snapshot, but the React Native Android module resolves the native SDK via getExtOrDefault('cioSDKVersionAndroid'), which only reads rootProject.ext.cioSDKVersionAndroid or customerio.reactnative.cioSDKVersionAndroid. The snapshot line is ignored, so Gradle keeps resolving 4.20.0 from the library defaults even though that artifact is not released yet.

Additional Locations (1)
Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit be8acc3. Configure here.


# Enable Customer.io Location module for the example app (used to verify location wiring).
customerio_location_enabled=true
Expand Down
8 changes: 6 additions & 2 deletions example/ios/Podfile
Original file line number Diff line number Diff line change
@@ -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
# -------------
Expand Down Expand Up @@ -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(
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
},
"./package.json": "./package.json"
},
"cioNativeiOSSdkVersion": "= 4.5.3",
"cioNativeiOSSdkVersion": "= 4.6.0",
"cioiOSFirebaseWrapperSdkVersion": "= 1.0.0",
"files": [
"src",
Expand Down
Loading