diff --git a/.circleci/config.yml b/.circleci/config.yml index 714e09c..64bd600 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -3,7 +3,7 @@ jobs: build: working_directory: ~/code docker: - - image: shadowsocks/shadowsocks-android:circleci + - image: shadowsocks/android-ndk-go environment: JVM_OPTS: -Xmx3500m GRADLE_OPTS: -Dorg.gradle.workers.max=1 -Dorg.gradle.daemon=false -Dkotlin.compiler.execution.strategy="in-process" diff --git a/app/build.gradle b/app/build.gradle index 19d89bf..24cd046 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -18,7 +18,6 @@ def getCurrentFlavor() { } android { - buildToolsVersion "28.0.3" compileSdkVersion 28 defaultConfig { applicationId "com.github.shadowsocks.plugin.v2ray" @@ -55,15 +54,6 @@ task goBuild(type: Exec) { } } -task goClean(type: Exec) { - if (Os.isFamily(Os.FAMILY_WINDOWS)) { - println "Warning: Building on Windows is not supported" - } else { - executable "sh" - args "-c", "src/clean.bash" - } -} - tasks.whenTaskAdded { task -> if ((task.name == 'javaPreCompileDebug' || task.name == 'javaPreCompileRelease')) { @@ -73,13 +63,13 @@ tasks.whenTaskAdded { task -> dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation "androidx.preference:preference:1.1.0-alpha03" - implementation 'com.github.shadowsocks:plugin:1.1.0' + implementation "androidx.preference:preference:1.1.0-beta01" + implementation 'com.github.shadowsocks:plugin:1.2.0' implementation 'com.takisoft.preferencex:preferencex-simplemenu:1.0.0' - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion" + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlinVersion" testImplementation 'junit:junit:4.12' - androidTestImplementation 'androidx.test:runner:1.1.1' - androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1' + androidTestImplementation 'androidx.test:runner:1.2.0' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' } ext.abiCodes = ['armeabi-v7a': 1, 'arm64-v8a': 2, x86: 3, x86_64: 4] diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 7c75d70..4a79bc6 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -22,6 +22,8 @@ + diff --git a/app/src/main/go/v2ray-plugin b/app/src/main/go/v2ray-plugin index d3c1201..e5ada30 160000 --- a/app/src/main/go/v2ray-plugin +++ b/app/src/main/go/v2ray-plugin @@ -1 +1 @@ -Subproject commit d3c12013b948ed7177cb1cde41e23d50256e3ae4 +Subproject commit e5ada302d39b0aef8e167701c94596e41e805ec1 diff --git a/app/src/main/java/com/github/shadowsocks/plugin/v2ray/ConfigFragment.kt b/app/src/main/java/com/github/shadowsocks/plugin/v2ray/ConfigFragment.kt index e3a7d02..a921081 100644 --- a/app/src/main/java/com/github/shadowsocks/plugin/v2ray/ConfigFragment.kt +++ b/app/src/main/java/com/github/shadowsocks/plugin/v2ray/ConfigFragment.kt @@ -39,12 +39,12 @@ class ConfigFragment : PreferenceFragmentCompat(), Preference.OnPreferenceChange const val REQUEST_BROWSE_CERTIFICATE = 1 } - private val mode by lazy { findPreference("mode") } - private val host by lazy { findPreference("host") } - private val path by lazy { findPreference("path") } - private val mux by lazy { findPreference("mux") } - private val certRaw by lazy { findPreference("certRaw") } - private val loglevel by lazy { findPreference("loglevel") } + private val mode by lazy { findPreference("mode")!! } + private val host by lazy { findPreference("host")!! } + private val path by lazy { findPreference("path")!! } + private val mux by lazy { findPreference("mux")!! } + private val certRaw by lazy { findPreference("certRaw")!! } + private val loglevel by lazy { findPreference("loglevel")!! } private fun readMode(value: String = mode.value) = when (value) { "websocket-http" -> Pair(null, false) diff --git a/build.gradle b/build.gradle index 84f7511..c76c0ad 100644 --- a/build.gradle +++ b/build.gradle @@ -4,7 +4,7 @@ apply plugin: 'com.github.ben-manes.versions' buildscript { ext { - kotlinVersion = '1.3.21' + kotlinVersion = '1.3.31' minSdkVersion = 21 } repositories { @@ -12,8 +12,8 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.3.1' - classpath 'com.github.ben-manes:gradle-versions-plugin:0.20.0' + classpath 'com.android.tools.build:gradle:3.5.0-beta04' + classpath 'com.github.ben-manes:gradle-versions-plugin:0.21.0' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion" } } diff --git a/gradle.properties b/gradle.properties index 0c83f54..23c9085 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,7 +7,6 @@ # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. android.enableJetifier=true -android.enableR8=true android.enableR8.fullMode=true android.useAndroidX=true org.gradle.jvmargs=-Xmx1536m diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index a5e6c5b..cc1bb20 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.2.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip