@@ -16,16 +16,16 @@ export const DEFAULT_ANDROID_GRADLE_PLUGIN_VERSION = '7.0.4';
1616export const DEFAULT_RN_GRADLE_PLUGIN_VERSION = '0.0.6' ;
1717export const DEFAULT_ANDROIDX_APPCOMPACT_VERSION = '1.1.0' ;
1818export const DEFAULT_ANDROIDX_LIFECYCLE_EXTENSIONS_VERSION = '2.1.0' ;
19- export const DEFAULT_BUILD_TOOLS_VERSION = '35 .0.0' ;
20- export const DEFAULT_COMPILE_SDK_VERSION = '35 ' ;
21- export const DEFAULT_GRADLE_DISTRIBUTION_VERSION = '8.11.1 ' ;
19+ export const DEFAULT_BUILD_TOOLS_VERSION = '36 .0.0' ;
20+ export const DEFAULT_COMPILE_SDK_VERSION = '36 ' ;
21+ export const DEFAULT_GRADLE_DISTRIBUTION_VERSION = '8.14.3 ' ;
2222export const DEFAULT_JSC_VARIANT = 'android-jsc' ;
23- export const DEFAULT_KOTLIN_VERSION = '2.0.21 ' ;
23+ export const DEFAULT_KOTLIN_VERSION = '2.1.20 ' ;
2424export const DEFAULT_MIN_SDK_VERSION_PRE_RN64 = '19' ;
2525export const DEFAULT_MIN_SDK_VERSION_POST_RN64 = '21' ;
2626export const DEFAULT_MIN_SDK_VERSION_POST_RN77 = '24' ;
2727export const DEFAULT_SUPPORT_LIBRARY_VERSION = '28.0.0' ;
28- export const DEFAULT_TARGET_SDK_VERSION = '35 ' ;
28+ export const DEFAULT_TARGET_SDK_VERSION = '36 ' ;
2929export const DEFAULT_SOURCE_COMPATIBILITY = 'VERSION_17' ;
3030export const DEFAULT_TARGET_COMPATIBILITY = 'VERSION_17' ;
3131const ANDROID_DEVICE_INFO = `
@@ -54,16 +54,16 @@ export function resolveAndroidVersions({
5454 androidGradlePlugin,
5555 androidxAppcompactVersion = DEFAULT_ANDROIDX_APPCOMPACT_VERSION ,
5656 androidxLifecycleExtrnsionsVersion = DEFAULT_ANDROIDX_LIFECYCLE_EXTENSIONS_VERSION ,
57- buildToolsVersion = DEFAULT_BUILD_TOOLS_VERSION ,
58- compileSdkVersion = DEFAULT_COMPILE_SDK_VERSION ,
59- gradleDistributionVersion = DEFAULT_GRADLE_DISTRIBUTION_VERSION ,
60- kotlinVersion = DEFAULT_KOTLIN_VERSION ,
57+ buildToolsVersion,
58+ compileSdkVersion,
59+ gradleDistributionVersion,
60+ kotlinVersion,
6161 minSdkVersion,
6262 reactNativeAarVersion,
6363 sourceCompatibility = DEFAULT_SOURCE_COMPATIBILITY ,
6464 supportLibraryVersion = DEFAULT_SUPPORT_LIBRARY_VERSION ,
6565 targetCompatibility = DEFAULT_TARGET_COMPATIBILITY ,
66- targetSdkVersion = DEFAULT_TARGET_SDK_VERSION ,
66+ targetSdkVersion,
6767 reactNativeVersion,
6868} : {
6969 rnGradlePlugin ?: string ;
@@ -95,22 +95,33 @@ export function resolveAndroidVersions({
9595 rnGradlePlugin ?? getReactNativeGradlePluginVersion ( reactNativeVersion ! ) ;
9696 const resolvedAndroidGradlePlugin =
9797 androidGradlePlugin ?? getGradlePluginVersion ( reactNativeVersion ! ) ;
98+ const resolvedBuildToolsVersion =
99+ buildToolsVersion ?? getDefaultBuildToolsVersion ( reactNativeVersion ! ) ;
100+ const resolvedCompileSdkVersion =
101+ compileSdkVersion ?? getDefaultCompileSdkVersion ( reactNativeVersion ! ) ;
102+ const resolvedGradleDistributionVersion =
103+ gradleDistributionVersion ??
104+ getDefaultGradleDistributionVersion ( reactNativeVersion ! ) ;
105+ const resolvedKotlinVersion =
106+ kotlinVersion ?? getDefaultKotlinVersion ( reactNativeVersion ! ) ;
107+ const resolvedTargetSdkVersion =
108+ targetSdkVersion ?? getDefaultTargetSdkVersion ( reactNativeVersion ! ) ;
98109
99110 return {
100111 rnGradlePlugin : resolvedRNGradlePlugin ,
101112 androidGradlePlugin : resolvedAndroidGradlePlugin ,
102113 androidxAppcompactVersion,
103114 androidxLifecycleExtrnsionsVersion,
104- buildToolsVersion,
105- compileSdkVersion,
106- gradleDistributionVersion,
107- kotlinVersion,
115+ buildToolsVersion : resolvedBuildToolsVersion ,
116+ compileSdkVersion : resolvedCompileSdkVersion ,
117+ gradleDistributionVersion : resolvedGradleDistributionVersion ,
118+ kotlinVersion : resolvedKotlinVersion ,
108119 minSdkVersion : resolvedMinSdkVersion ,
109120 reactNativeAarVersion,
110121 sourceCompatibility,
111122 supportLibraryVersion,
112123 targetCompatibility,
113- targetSdkVersion,
124+ targetSdkVersion : resolvedTargetSdkVersion ,
114125 } ;
115126}
116127
@@ -470,9 +481,48 @@ export function androidEmulatorPath(): string {
470481 return 'emulator' ;
471482}
472483
484+ function getDefaultBuildToolsVersion ( reactNativeVersion : string ) : string {
485+ if ( semver . gte ( reactNativeVersion , '0.81.0' ) ) {
486+ return '36.0.0' ;
487+ }
488+ return '35.0.0' ;
489+ }
490+
491+ function getDefaultCompileSdkVersion ( reactNativeVersion : string ) : string {
492+ if ( semver . gte ( reactNativeVersion , '0.81.0' ) ) {
493+ return '36' ;
494+ }
495+ return '35' ;
496+ }
497+
498+ function getDefaultGradleDistributionVersion (
499+ reactNativeVersion : string ,
500+ ) : string {
501+ if ( semver . gte ( reactNativeVersion , '0.81.0' ) ) {
502+ return '8.14.3' ;
503+ }
504+ return '8.11.1' ;
505+ }
506+
507+ function getDefaultKotlinVersion ( reactNativeVersion : string ) : string {
508+ if ( semver . gte ( reactNativeVersion , '0.81.0' ) ) {
509+ return '2.1.20' ;
510+ }
511+ return '2.0.21' ;
512+ }
513+
514+ function getDefaultTargetSdkVersion ( reactNativeVersion : string ) : string {
515+ if ( semver . gte ( reactNativeVersion , '0.81.0' ) ) {
516+ return '36' ;
517+ }
518+ return '35' ;
519+ }
520+
473521// ERN Android plugins supports backward compatibility until react native version 68.
474522function getGradlePluginVersion ( reactNativeVersion : string ) : string | never {
475- if ( semver . gte ( reactNativeVersion , '0.77.0' ) ) {
523+ if ( semver . gte ( reactNativeVersion , '0.81.0' ) ) {
524+ return '8.11.0' ;
525+ } else if ( semver . gte ( reactNativeVersion , '0.77.0' ) ) {
476526 return '8.7.2' ;
477527 } else if ( semver . gte ( reactNativeVersion , '0.72.0' ) ) {
478528 return '7.4.2' ;
@@ -490,7 +540,9 @@ function getGradlePluginVersion(reactNativeVersion: string): string | never {
490540function getReactNativeGradlePluginVersion (
491541 reactNativeVersion : string ,
492542) : string | never {
493- if ( semver . gte ( reactNativeVersion , '0.77.0' ) ) {
543+ if ( semver . gte ( reactNativeVersion , '0.81.0' ) ) {
544+ return '0.81.5' ;
545+ } else if ( semver . gte ( reactNativeVersion , '0.77.0' ) ) {
494546 return '0.77.2' ;
495547 } else if ( semver . gte ( reactNativeVersion , '0.72.0' ) ) {
496548 return '0.72.11' ;
0 commit comments