Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
efb6101
feat: added the api, and fixed the tyes
lposen Aug 1, 2025
0588f0d
refactor: updated codegen config to properly
lposen Aug 1, 2025
13aaf54
refactor: enhance ReactIterableAPI so that the functions are accessib…
lposen Aug 1, 2025
2c25245
refactor: integrate Swift-based ReactIterableAPI into RNIterableAPI f…
lposen Aug 1, 2025
4145f1e
feat: add Swift formatting configuration and formatted swift files
lposen Aug 2, 2025
144b5ea
chore: add .clang-format configuration and update Swift/cpp files for…
lposen Aug 2, 2025
5debd41
Merge branch 'new-arch/MOB-11833-format-files' into new-arch/MOB-1182…
lposen Aug 2, 2025
47a7485
fix: update Podfile to use dynamic linking for Iterable-iOS-SDK in RN…
lposen Aug 2, 2025
7ff28f2
feat: configure code to support new and legacy architecture
lposen Aug 2, 2025
8126d28
refactor: update RNIterableAPI.mm to improve code clarity and remove …
lposen Aug 2, 2025
5f8fd9f
refactor: remove legacy architecture code to reduce PR bloat
lposen Aug 2, 2025
1b93af4
refactor: adjust RNIterableAPI to expose methods for both new and leg…
lposen Aug 2, 2025
077a3a6
refactor: remove unused methods and logging from ReactIterableAPI.swi…
lposen Aug 2, 2025
a4800ea
Merge branch 'new-arch/MOB-11827-add-new-architecture-support' into n…
lposen Aug 2, 2025
fd99e15
feat: add test environment check to NativeRNIterableAPI export to fix…
lposen Aug 6, 2025
bc476b9
Merge branch 'new-arch/MOB-11826-make-frontend-api-and-codegen' into …
lposen Aug 6, 2025
e65d66c
Merge branch 'new-arch/MOB-11833-format-files' into new-arch/MOB-1182…
lposen Aug 6, 2025
9e1fcdf
Merge branch 'new-arch/MOB-11827-add-new-architecture-support' into n…
lposen Aug 6, 2025
57dcf59
feat: add iOS module configuration for RNIterableAPI and ReactIterabl…
lposen Aug 6, 2025
1731f83
Merge pull request #685 from Iterable/new-arch/MOB-11826-make-fronten…
lposen Aug 12, 2025
a6245be
Merge pull request #686 from Iterable/new-arch/MOB-11833-format-files
lposen Aug 20, 2025
f7be0fa
Merge branch 'new-arch/master' into new-arch/MOB-11827-add-new-archit…
lposen Aug 20, 2025
61b759d
Merge branch 'new-arch/MOB-11827-add-new-architecture-support' into n…
lposen Aug 20, 2025
9a1e16d
refactor: update podspec for Iterable-React-Native-SDK to support Swi…
lposen Aug 21, 2025
288c158
Merge branch 'new-arch/MOB-11827-add-new-architecture-support' into n…
lposen Aug 21, 2025
75dccb3
Merge pull request #688 from Iterable/new-arch/MOB-11828-add-backward…
lposen Aug 21, 2025
29ba514
Update ios/RNIterableAPI/ReactIterableAPI.swift
lposen Aug 21, 2025
6dbead4
refactor: update ios/RNIterableAPI/ReactIterableAPI.swift with copilo…
lposen Aug 21, 2025
c3e1389
refactor: update ios/RNIterableAPI/ReactIterableAPI.swift with copilo…
lposen Aug 21, 2025
de47698
Merge pull request #687 from Iterable/new-arch/MOB-11827-add-new-arch…
lposen Aug 21, 2025
a7b0577
refactor: restructure RNIterableAPIModule to delegate functionality t…
lposen Aug 21, 2025
b96c217
refactor: update RNIterableAPIModuleImpl to clarify API endpoint over…
lposen Aug 21, 2025
1086a77
refactor: remove unnecessary access modifiers in RNIterableAPIModule …
lposen Aug 21, 2025
d00e31d
refactor: split packages between old and new architecture
lposen Aug 21, 2025
0b1ed47
chore: update Android Gradle properties for Kotlin and SDK versions
lposen Aug 21, 2025
b33941c
refactor: enhance Android build configuration for new architecture su…
lposen Aug 21, 2025
6acab23
refactor: remove deprecated imports in RNIterableAPIPackage for clean…
lposen Aug 21, 2025
f45c778
refactor: made newarch and oldarch structure more closely represent i…
lposen Aug 21, 2025
32c7eb8
refactor: update ios interfaces to enforce non-nullable parameters fo…
lposen Aug 22, 2025
5d8c543
refactor: update parameter types in RNIterableAPI to use Double to ma…
lposen Aug 22, 2025
b6e4488
refactor: update parameter types in RNIterableAPI to reflect automati…
lposen Aug 27, 2025
3e252ee
Update ios/RNIterableAPI/ReactIterableAPI.swift
lposen Aug 27, 2025
e0d026e
refactor: simplify attribution info handling and improve error report…
lposen Aug 27, 2025
dfb4934
refactor: update templateId parameter type to Double in RNIterableAPI…
lposen Aug 27, 2025
5a946b2
refactor: remove redundant error handling in RNIterableAPI to streaml…
lposen Aug 27, 2025
c009a1e
refactor: update templateId type to double in trackPushOpenWithCampai…
lposen Aug 28, 2025
f9aa273
refactor: update templateId parameter type to nullable in trackPushOp…
lposen Aug 28, 2025
560a8c5
refactor: update parameter types to nullable in RNIterableAPI for con…
lposen Aug 28, 2025
c7c4957
refactor: fixed guard statements
lposen Aug 28, 2025
91062db
Merge branch 'new-arch/master' into new-arch/MOB-11957-ios-crashes-wh…
lposen Aug 28, 2025
d3578f6
Merge branch 'new-arch/master' into new-arch/MOB-11954-extract-rniter…
lposen Aug 28, 2025
0bb7151
Merge branch 'new-arch/MOB-11954-extract-rniterableapimodule-so-that-…
lposen Aug 28, 2025
5b7870a
Merge branch 'new-arch/MOB-11955-configure-new-architecture' into new…
lposen Aug 28, 2025
4cc665f
refactor: add wakeApp placeholder method
lposen Aug 28, 2025
95053bb
chore: update dependencies for React Navigation and related packages
lposen Aug 29, 2025
7336f84
refactor: transition RNIterableAPIPackage to extend BaseReactPackage
lposen Aug 29, 2025
9a75762
chore: set group ID and modify example AndroidManifest.xml for notifi…
lposen Aug 29, 2025
ac23ec2
refactor: removed unused dependencies
lposen Aug 29, 2025
fa2b756
2.0.3-alpha.0
lposen Aug 29, 2025
53b12c3
2.0.3-alpha.1
lposen Aug 29, 2025
61ec865
chore: downgrade version from 2.0.3-alpha.1 to 2.0.2
lposen Aug 29, 2025
e7eec5d
Merge pull request #693 from Iterable/new-arch/MOB-11954-extract-rnit…
lposen Sep 3, 2025
b042322
Merge branch 'new-arch/master' into new-arch/MOB-11955-configure-new-…
lposen Sep 3, 2025
3d8cffc
Merge pull request #696 from Iterable/new-arch/MOB-11994-align-depend…
lposen Sep 5, 2025
d01ba5a
Merge pull request #694 from Iterable/new-arch/MOB-11955-configure-ne…
lposen Sep 5, 2025
7664ace
Merge branch 'new-arch/master' into new-arch/MOB-11957-ios-crashes-wh…
lposen Sep 5, 2025
18bd0af
refactor: update initialize2WithApiKey so that parameters are always …
lposen Sep 5, 2025
26fa44b
fix: update clickedUrl parameter type to allow null values in trackIn…
lposen Sep 11, 2025
ceb969a
Merge pull request #695 from Iterable/new-arch/MOB-11957-ios-crashes-…
lposen Sep 11, 2025
b615521
chore: update CHANGELOG for 2.1.0-alpha.0 release and fix documentati…
lposen Sep 27, 2025
78dc602
chore: update build scripts and version to 2.1.0-alpha.0
lposen Sep 27, 2025
0d4e621
chore: release 2.1.0-alpha.0
lposen Sep 27, 2025
76ec9a7
chore: adding precommit hook to update version info
lposen Sep 27, 2025
8d110ab
chore: remove empty object from bug fixes section in package.json
lposen Sep 27, 2025
cc29010
chore: update dependencies in package.json and yarn.lock, including r…
lposen Sep 27, 2025
4dee006
chore: update release-it and conventional-changelog for compatibility
lposen Sep 27, 2025
65b5904
chore: downgrade release-it and conventional-changelog versions for c…
lposen Sep 27, 2025
14ed12b
chore: update dependencies in yarn.lock
lposen Sep 27, 2025
80554bb
chore: comment out version-check in lefthook configuration
lposen Sep 27, 2025
dc7ff75
docs: update README to reflect full support for React Native's New Ar…
lposen Sep 29, 2025
f3d711e
Merge branch 'master' into new-arch/master
lposen Sep 30, 2025
289c065
chore: add Iterable-iOS-SDK dependency for temporary hotfix
lposen Oct 3, 2025
5233767
docs: update README and Podfile with dynamic linkage configuration fo…
lposen Oct 3, 2025
b9715e5
Merge branch 'master' into new-arch/master
lposen Oct 3, 2025
18e2396
Merge branch 'master' into new-arch/master
lposen Oct 6, 2025
1d9a92b
chore: updated references for beta release
lposen Oct 6, 2025
31b77d7
chore: enhance release-it configuration to enable tagging, committing…
lposen Oct 7, 2025
73849f1
chore: remove temporary fix for Iterable-iOS-SDK from Podfile
lposen Oct 7, 2025
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
30 changes: 30 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
BasedOnStyle: LLVM
Language: Cpp
AllowAllArgumentsOnNextLine: false
AllowAllParametersOfDeclarationOnNextLine: false
BinPackArguments: false
BinPackParameters: false
BreakBeforeBinaryOperators: None
BreakBeforeBraces: Attach
BreakBeforeTernaryOperators: true
BreakConstructorInitializers: AfterColon
BreakInheritanceList: AfterColon
ColumnLimit: 80
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: true
IndentCaseLabels: true
IndentPPDirectives: BeforeHash
IndentWidth: 2
IndentWrappedFunctionNames: true
KeepEmptyLinesAtTheStartOfBlocks: false
MaxEmptyLinesToKeep: 1
NamespaceIndentation: All
ObjCBinPackProtocolList: Never
ReflowComments: true
SortIncludes: false
SpaceBeforeParens: Never
SpaceInEmptyParentheses: false
UseTab: Never

...
79 changes: 79 additions & 0 deletions .swift-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
{
"fileScopedDeclarationPrivacy" : {
"accessLevel" : "private"
},
"indentConditionalCompilationBlocks" : true,
"indentSwitchCaseLabels" : false,
"indentation" : {
"spaces" : 2
},
"lineBreakAroundMultilineExpressionChainComponents" : false,
"lineBreakBeforeControlFlowKeywords" : false,
"lineBreakBeforeEachArgument" : false,
"lineBreakBeforeEachGenericRequirement" : false,
"lineBreakBetweenDeclarationAttributes" : false,
"lineLength" : 100,
"maximumBlankLines" : 1,
"multiElementCollectionTrailingCommas" : true,
"noAssignmentInExpressions" : {
"allowedFunctions" : [
"XCTAssertNoThrow"
]
},
"prioritizeKeepingFunctionOutputTogether" : false,
"reflowMultilineStringLiterals" : {
"never" : {

}
},
"respectsExistingLineBreaks" : true,
"rules" : {
"AllPublicDeclarationsHaveDocumentation" : false,
"AlwaysUseLiteralForEmptyCollectionInit" : false,
"AlwaysUseLowerCamelCase" : true,
"AmbiguousTrailingClosureOverload" : true,
"AvoidRetroactiveConformances" : true,
"BeginDocumentationCommentWithOneLineSummary" : false,
"DoNotUseSemicolons" : true,
"DontRepeatTypeInStaticProperties" : true,
"FileScopedDeclarationPrivacy" : true,
"FullyIndirectEnum" : true,
"GroupNumericLiterals" : true,
"IdentifiersMustBeASCII" : true,
"NeverForceUnwrap" : false,
"NeverUseForceTry" : false,
"NeverUseImplicitlyUnwrappedOptionals" : false,
"NoAccessLevelOnExtensionDeclaration" : true,
"NoAssignmentInExpressions" : true,
"NoBlockComments" : true,
"NoCasesWithOnlyFallthrough" : true,
"NoEmptyLinesOpeningClosingBraces" : false,
"NoEmptyTrailingClosureParentheses" : true,
"NoLabelsInCasePatterns" : true,
"NoLeadingUnderscores" : false,
"NoParensAroundConditions" : true,
"NoPlaygroundLiterals" : true,
"NoVoidReturnOnFunctionSignature" : true,
"OmitExplicitReturns" : false,
"OneCasePerLine" : true,
"OneVariableDeclarationPerLine" : true,
"OnlyOneTrailingClosureArgument" : true,
"OrderedImports" : true,
"ReplaceForEachWithForLoop" : true,
"ReturnVoidInsteadOfEmptyTuple" : true,
"TypeNamesShouldBeCapitalized" : true,
"UseEarlyExits" : false,
"UseExplicitNilCheckInConditions" : true,
"UseLetInEveryBoundCaseVariable" : true,
"UseShorthandTypeNames" : true,
"UseSingleLinePropertyGetter" : true,
"UseSynthesizedInitializer" : true,
"UseTripleSlashForDocumentationComments" : true,
"UseWhereClausesInForLoops" : false,
"ValidateDocumentationComments" : false
},
"spacesAroundRangeFormationOperators" : false,
"spacesBeforeEndOfLineComments" : 2,
"tabWidth" : 8,
"version" : 1
}
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,12 @@
## 2.1.0-beta.0

### Updates
- Update SDK so that it has full support for [React Native New Architecture](https://reactnative.dev/architecture/landing-page)

### Chores
- Update dependencies for React Navigation and related packages ([95053bb](https://github.com/Iterable/react-native-sdk/commit/95053bb))


## 2.0.3

### Updates
Expand Down
38 changes: 13 additions & 25 deletions Iterable-React-Native-SDK.podspec
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
require "json"

package = JSON.parse(File.read(File.join(__dir__, "package.json")))
folly_compiler_flags = '-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1 -Wno-comma -Wno-shorten-64-to-32'

Pod::Spec.new do |s|
s.name = "Iterable-React-Native-SDK"
Expand All @@ -14,31 +13,20 @@ Pod::Spec.new do |s|
s.platforms = { :ios => min_ios_version_supported }
s.source = { :git => "https://github.com/Iterable/react-native-sdk.git", :tag => "#{s.version}" }

s.source_files = "ios/**/*.{h,m,mm,swift}"

# Use install_modules_dependencies helper to install the dependencies if React Native version >=0.71.0.
# See https://github.com/facebook/react-native/blob/febf6b7f33fdb4904669f99d795eba4c0f95d7bf/scripts/cocoapods/new_architecture.rb#L79.
if respond_to?(:install_modules_dependencies, true)
install_modules_dependencies(s)
else
s.dependency "React-Core"

# Don't install the dependencies when we run `pod install` in the old architecture.
if ENV['RCT_NEW_ARCH_ENABLED'] == '1' then
s.compiler_flags = folly_compiler_flags + " -DRCT_NEW_ARCH_ENABLED=1"
s.pod_target_xcconfig = {
"HEADER_SEARCH_PATHS" => "\"$(PODS_ROOT)/boost\"",
"OTHER_CPLUSPLUSFLAGS" => "-DFOLLY_NO_CONFIG -DFOLLY_MOBILE=1 -DFOLLY_USE_LIBCPP=1",
"CLANG_CXX_LANGUAGE_STANDARD" => "c++17"
}
s.dependency "React-Codegen"
s.dependency "RCT-Folly"
s.dependency "RCTRequired"
s.dependency "RCTTypeSafety"
s.dependency "ReactCommon/turbomodule/core"
end
end
s.source_files = "ios/**/*.{h,m,mm,cpp,swift}"
s.private_header_files = "ios/**/*.h"

# Load Iterables iOS SDK as a dependency
s.dependency "Iterable-iOS-SDK", "6.5.4.1"

# Basic Swift support
s.pod_target_xcconfig = {
'DEFINES_MODULE' => 'YES',
'CLANG_ENABLE_MODULES' => 'YES',
'SWIFT_VERSION' => '5.0',
"CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard(),
}

install_modules_dependencies(s)

end
34 changes: 29 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ Iterable. It supports JavaScript and TypeScript.
- [Requirements](#requirements)
- [Architecture Support](#architecture-support)
- [Installation](#installation)
- [Beta Versions](#beta-versions)
- [Features](#features)
- [Sample projects](#sample-projects)
- [Version mapping](#version-mapping)
Expand Down Expand Up @@ -48,23 +49,45 @@ Iterable's React Native SDK relies on:
- Xcode 12+
- [Deployment target 13.4+](https://help.apple.com/xcode/mac/current/#/deve69552ee5)
- [Iterable's iOS SDK](https://github.com/Iterable/iterable-swift-sdk)
- **Podfile Configuration**: The linkage must be set to dynamic in your Podfile to load Swift modules that the SDK depends on. Add the following to your Podfile:
```ruby
use_frameworks! :linkage => :dynamic
```

- **Android**
- [`minSdkVersion` 21+, `compileSdkVersion` 31+](https://medium.com/androiddevelopers/picking-your-compilesdkversion-minsdkversion-targetsdkversion-a098a0341ebd)
- [Iterable's Android SDK](https://github.com/Iterable/iterable-android-sdk)

## Architecture Support

**Important**: Iterable's React Native SDK has limited support for [React
Native's New Architecture](https://reactnative.dev/architecture/landing-page)
through interop. We are in the process of updating the SDK to fully support the New
Architecture, and suggest using the legacy architecture in the meantime. *TLDR;* Use the New Architecture at your own risk --
you may encounter significant issues.
Iterable's React Native SDK now fully supports [React Native's New Architecture](https://reactnative.dev/architecture/landing-page), including TurboModules and Fabric. You can use the SDK with either the legacy architecture or the New Architecture.

Notes:

- Ensure your app is configured for New Architecture per the React Native docs.
- The example app in this repository is configured with New Architecture enabled.

## Installation

For installation instructions, read [Installing Iterable's React Native SDK](https://support.iterable.com/hc/articles/360045714132).

## Beta Versions

To opt into beta versions of the SDK, you can install the latest beta version by using the `beta` tag:

```bash
# Install the latest beta version
npm install @iterable/react-native-sdk@beta

# Or using yarn
yarn add @iterable/react-native-sdk@beta
```

**Note:** Beta versions may contain experimental features and could have
breaking changes. We recommend testing beta versions in development environments
before using them in production. Please report any issues found in beta
releases to [Customer Support](https://support.iterable.com/hc/en-us/requests/new).

## Features

To learn more about the SDK, read:
Expand All @@ -91,6 +114,7 @@ For quick reference, the following table lists the versions of the [Android SDK]

| RN SDK Version | Android SDK Version | iOS SDK Version |
| --------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | --------------- |
| [2.1.0-beta.0](https://www.npmjs.com/package/@iterable/react-native-sdk/v/2.1.0-beta.0) | [3.5.2](https://github.com/Iterable/iterable-android-sdk/releases/tag/3.5.2) | [6.5.4](https://github.com/Iterable/swift-sdk/releases/tag/6.5.4)
| [2.0.3](https://www.npmjs.com/package/@iterable/react-native-sdk/v/2.0.3) | [3.5.2](https://github.com/Iterable/iterable-android-sdk/releases/tag/3.5.2) | [6.5.4](https://github.com/Iterable/swift-sdk/releases/tag/6.5.4)
| [2.0.2](https://www.npmjs.com/package/@iterable/react-native-sdk/v/2.0.2) | [3.5.2](https://github.com/Iterable/iterable-android-sdk/releases/tag/3.5.2) | [6.5.4](https://github.com/Iterable/swift-sdk/releases/tag/6.5.4)
| [2.0.1](https://www.npmjs.com/package/@iterable/react-native-sdk/v/2.0.1) | [3.5.2](https://github.com/Iterable/iterable-android-sdk/releases/tag/3.5.2) | [6.5.4](https://github.com/Iterable/swift-sdk/releases/tag/6.5.4)
Expand Down
36 changes: 23 additions & 13 deletions android/build.gradle
Original file line number Diff line number Diff line change
@@ -1,24 +1,20 @@
buildscript {
// Buildscript is evaluated before everything else so we can't use getExtOrDefault
def kotlin_version = rootProject.ext.has("kotlinVersion") ? rootProject.ext.get("kotlinVersion") : project.properties["RNIterable_kotlinVersion"]
ext.getExtOrDefault = {name ->
return rootProject.ext.has(name) ? rootProject.ext.get(name) : project.properties['RNIterable_' + name]
}

repositories {
google()
mavenCentral()
}

dependencies {
classpath "com.android.tools.build:gradle:7.2.1"
classpath "com.android.tools.build:gradle:8.7.2"
// noinspection DifferentKotlinGradleVersion
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${getExtOrDefault('kotlinVersion')}"
}
}

def reactNativeArchitectures() {
def value = rootProject.getProperties().get("reactNativeArchitectures")
return value ? value.split(",") : ["armeabi-v7a", "x86", "x86_64", "arm64-v8a"]
}

def isNewArchitectureEnabled() {
return rootProject.hasProperty("newArchEnabled") && rootProject.getProperty("newArchEnabled") == "true"
}
Expand Down Expand Up @@ -63,7 +59,11 @@ android {
defaultConfig {
minSdkVersion getExtOrIntegerDefault("minSdkVersion")
targetSdkVersion getExtOrIntegerDefault("targetSdkVersion")
buildConfigField("boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString())
}

buildFeatures {
buildConfig true
}

buildTypes {
Expand All @@ -80,6 +80,19 @@ android {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}

sourceSets {
main {
if (isNewArchitectureEnabled()) {
java.srcDirs += ['src/newarch']
} else {
java.srcDirs += ['src/oldarch']
}
}
}

// Add this to match the Iterable SDK group ID
group = "com.iterable"
}

repositories {
Expand All @@ -90,10 +103,7 @@ repositories {
def kotlin_version = getExtOrDefault("kotlinVersion")

dependencies {
// For < 0.71, this will be from the local maven repo
// For > 0.71, this will be replaced by `com.facebook.react:react-android:$version` by react gradle plugin
//noinspection GradleDynamicVersion
implementation "com.facebook.react:react-native:+"
implementation "com.facebook.react:react-android"
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
api "com.iterable:iterableapi:3.5.2"
// api project(":iterableapi") // links to local android SDK repo rather than by release
Expand Down
12 changes: 6 additions & 6 deletions android/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
RNIterable_kotlinVersion=1.7.0
RNIterable_minSdkVersion=21
RNIterable_targetSdkVersion=31
RNIterable_compileSdkVersion=31
RNIterable_ndkversion=21.4.7075529
RNIterable_kotlinVersion=2.0.21
RNIterable_minSdkVersion=24
RNIterable_targetSdkVersion=35
RNIterable_compileSdkVersion=35
RNIterable_ndkversion=27.1.12297006
android.useAndroidX=true
android.enableJetifier=true
android.enableJetifier=true
Loading