Skip to content

Commit cdf0f35

Browse files
authored
Merge pull request #33 from w3connext/migrate/gradle
Bump version to jdk 17, android 8.6.0, kotlin 2.1.0
2 parents 434c9de + f42f072 commit cdf0f35

File tree

5 files changed

+66
-19
lines changed

5 files changed

+66
-19
lines changed

.github/workflows/flutter_plugin.yml

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: Flutter Plugin CI
22

33
on:
44
push:
5-
branches: [main, config/ci]
5+
branches: [main, migrate/gradle]
66
pull_request:
77
branches: [main]
88

@@ -13,6 +13,12 @@ jobs:
1313
- name: Checkout source
1414
uses: actions/checkout@v4
1515

16+
- name: Set up JDK 17
17+
uses: actions/setup-java@v4
18+
with:
19+
distribution: temurin
20+
java-version: "17"
21+
1622
- name: Set up Flutter
1723
uses: subosito/flutter-action@v2
1824
with:
@@ -32,6 +38,29 @@ jobs:
3238
working-directory: example
3339
run: flutter build apk --debug
3440

41+
- name: List .so 16KB page-size compatibility
42+
shell: bash
43+
run: |
44+
APK="example/build/app/outputs/flutter-apk/app-debug.apk"
45+
unzip -o "$APK" -d output_apk >/dev/null
46+
47+
while IFS= read -r -d '' so; do
48+
aligns=$(readelf -Wl "$so" | awk '/Program Headers/{ph=1} ph && /LOAD/ {for (i=1;i<=NF;i++) if ($i=="Align") print $(i+1)}')
49+
ok=true
50+
for a in $aligns; do
51+
if [[ "$a" =~ ^0x ]]; then val=$((a)); else val=$a; fi
52+
if [ "$val" -lt 16384 ]; then
53+
ok=false
54+
break
55+
fi
56+
done
57+
if $ok; then
58+
echo "[OK] $so (16KB SAFE)"
59+
else
60+
echo "[FAIL] $so (NOT 16KB SAFE)"
61+
fi
62+
done < <(find output_apk -name "*.so" -print0)
63+
3564
build_ios:
3665
runs-on: macos-latest
3766
steps:

android/build.gradle

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,12 @@ group 'com.w3conext.jailbreak_root_detection'
22
version '1.0-SNAPSHOT'
33

44
buildscript {
5-
ext.kotlin_version = '1.9.10'
6-
repositories {
7-
google()
8-
mavenCentral()
9-
}
10-
11-
dependencies {
12-
classpath 'com.android.tools.build:gradle:8.7.3'
13-
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
14-
}
5+
ext.kotlin_version = '2.2.0'
156
}
167

178
allprojects {
189
repositories {
10+
gradlePluginPortal()
1911
google()
2012
mavenCentral()
2113
}
@@ -29,13 +21,15 @@ android {
2921
namespace 'com.w3conext.jailbreak_root_detection'
3022
}
3123

24+
compileSdkVersion 36
25+
3226
compileOptions {
3327
sourceCompatibility JavaVersion.VERSION_17
3428
targetCompatibility JavaVersion.VERSION_17
3529
}
3630

3731
kotlinOptions {
38-
jvmTarget = '17'
32+
jvmTarget = "17"
3933
}
4034

4135
sourceSets {
@@ -44,13 +38,16 @@ android {
4438

4539
defaultConfig {
4640
minSdkVersion 21
47-
compileSdk 33
4841
}
49-
42+
43+
lintOptions {
44+
disable 'InvalidPackage'
45+
}
46+
5047
}
5148

5249
dependencies {
5350
implementation "androidx.annotation:annotation:1.9.1"
5451
implementation 'com.scottyab:rootbeer-lib:0.1.1'
55-
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3"
56-
}
52+
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.10.2"
53+
}

android/settings.gradle

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,22 @@
1+
pluginManagement {
2+
repositories {
3+
google()
4+
mavenCentral()
5+
gradlePluginPortal()
6+
}
7+
}
8+
9+
plugins {
10+
id "com.android.library" version "8.6.0" apply false
11+
id "org.jetbrains.kotlin.android" version "2.1.0" apply false
12+
}
13+
14+
dependencyResolutionManagement {
15+
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
16+
repositories {
17+
google()
18+
mavenCentral()
19+
}
20+
}
21+
122
rootProject.name = 'jailbreak_root_detection'

example/android/gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
33
zipStoreBase=GRADLE_USER_HOME
44
zipStorePath=wrapper/dists
5-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-all.zip
5+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip

example/android/settings.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ pluginManagement {
1818

1919
plugins {
2020
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
21-
id "com.android.application" version "8.1.0" apply false
22-
id "org.jetbrains.kotlin.android" version "1.8.22" apply false
21+
id "com.android.application" version "8.6.0" apply false
22+
id 'org.jetbrains.kotlin.android' version "2.1.0" apply false
2323
}
2424

2525
include ":app"

0 commit comments

Comments
 (0)