This commit is contained in:
Your Name
2024-03-03 22:28:29 -06:00
parent 5cfcd2c3c7
commit 74ff304e40
6 changed files with 41 additions and 32 deletions

18
.gitignore vendored
View File

@@ -1,9 +1,9 @@
*.iml *.iml
.gradle .gradle
/local.properties /local.properties
/.idea /.idea
.DS_Store .DS_Store
/build /build
/captures /captures
.externalNativeBuild .externalNativeBuild
release/vpnhotspotmod.apk release/vpnhotspotmod.apk

View File

@@ -1,13 +1,14 @@
plugins { plugins {
id("com.android.application") version "8.0.2" apply false id("com.android.application") version "8.2.0" apply false
id("com.github.ben-manes.versions") version "0.47.0" id("com.github.ben-manes.versions") version "0.49.0"
id("org.jetbrains.kotlin.android") version "1.8.21" apply false id("com.google.devtools.ksp") version "1.9.10-1.0.13" apply false
id("org.jetbrains.kotlin.android") version "1.9.10" apply false
} }
buildscript { buildscript {
dependencies { dependencies {
classpath("com.google.firebase:firebase-crashlytics-gradle:2.9.5") classpath("com.google.firebase:firebase-crashlytics-gradle:2.9.9")
classpath("com.google.android.gms:oss-licenses-plugin:0.10.6") classpath("com.google.android.gms:oss-licenses-plugin:0.10.6")
classpath("com.google.gms:google-services:4.3.15") classpath("com.google.gms:google-services:4.4.0")
} }
} }

View File

@@ -1,6 +1,7 @@
#Thu Dec 21 01:34:39 CST 2023
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-rc-2-bin.zip
networkTimeout=10000 networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists

View File

@@ -25,7 +25,7 @@ android {
compileSdk = 34 compileSdk = 34
defaultConfig { defaultConfig {
minSdk = 28 minSdk = 28
targetSdk = 34 targetSdk = 33
resourceConfigurations.addAll(arrayOf("it", "pt-rBR", "ru", "zh-rCN", "zh-rTW")) resourceConfigurations.addAll(arrayOf("it", "pt-rBR", "ru", "zh-rCN", "zh-rTW"))
versionCode = 1005 versionCode = 1005
versionName = "2.16.5" versionName = "2.16.5"
@@ -71,34 +71,34 @@ android {
} }
dependencies { dependencies {
val lifecycleVersion = "2.6.1" val lifecycleVersion = "2.6.2"
val roomVersion = "2.5.1" val roomVersion = "2.6.1"
coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.0.3") coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.0.4")
kapt("androidx.room:room-compiler:$roomVersion") kapt("androidx.room:room-compiler:$roomVersion")
implementation(kotlin("stdlib-jdk8")) implementation(kotlin("stdlib-jdk8"))
implementation("androidx.browser:browser:1.5.0") implementation("androidx.browser:browser:1.7.0")
implementation("androidx.core:core-ktx:1.11.0-beta02") implementation("androidx.core:core-ktx:1.12.0")
implementation("androidx.fragment:fragment-ktx:1.6.0") implementation("androidx.fragment:fragment-ktx:1.6.2")
implementation("androidx.lifecycle:lifecycle-livedata-ktx:$lifecycleVersion") implementation("androidx.lifecycle:lifecycle-livedata-ktx:$lifecycleVersion")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:$lifecycleVersion") implementation("androidx.lifecycle:lifecycle-runtime-ktx:$lifecycleVersion")
implementation("androidx.preference:preference:1.2.0") implementation("androidx.preference:preference:1.2.1")
implementation("androidx.room:room-ktx:$roomVersion") implementation("androidx.room:room-ktx:$roomVersion")
implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0") implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0")
implementation("be.mygod.librootkotlinx:librootkotlinx:1.0.5") implementation("be.mygod.librootkotlinx:librootkotlinx:1.1.1")
implementation("com.android.billingclient:billing-ktx:6.0.0") implementation("com.android.billingclient:billing-ktx:6.1.0")
implementation("com.google.android.gms:play-services-base:18.2.0") // fix for GoogleApiActivity crash @ 18.1.0+ implementation("com.google.android.gms:play-services-base:18.2.0") // fix for GoogleApiActivity crash @ 18.1.0+
implementation("com.google.android.gms:play-services-oss-licenses:17.0.1") implementation("com.google.android.gms:play-services-oss-licenses:17.0.1")
implementation("com.google.android.material:material:1.9.0") implementation("com.google.android.material:material:1.11.0")
implementation("com.google.firebase:firebase-analytics-ktx:21.3.0") implementation("com.google.firebase:firebase-analytics-ktx:21.5.0")
implementation("com.google.firebase:firebase-crashlytics:18.3.7") implementation("com.google.firebase:firebase-crashlytics:18.6.0")
implementation("com.google.zxing:core:3.5.1") implementation("com.google.zxing:core:3.5.2")
implementation("com.jakewharton.timber:timber:5.0.1") implementation("com.jakewharton.timber:timber:5.0.1")
implementation("com.linkedin.dexmaker:dexmaker:2.28.3") implementation("com.linkedin.dexmaker:dexmaker:2.28.3")
implementation("com.takisoft.preferencex:preferencex-simplemenu:1.1.0") implementation("com.takisoft.preferencex:preferencex-simplemenu:1.1.0")
implementation("org.lsposed.hiddenapibypass:hiddenapibypass:4.3") implementation("org.lsposed.hiddenapibypass:hiddenapibypass:4.3")
implementation("org.jetbrains.kotlinx:kotlinx-collections-immutable:0.3.5") implementation("org.jetbrains.kotlinx:kotlinx-collections-immutable:0.3.7")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.1") implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3")
add("googleImplementation", "com.google.android.play:app-update-ktx:2.1.0") add("googleImplementation", "com.google.android.play:app-update-ktx:2.1.0")
testImplementation("junit:junit:4.13.2") testImplementation("junit:junit:4.13.2")
androidTestImplementation("androidx.room:room-testing:$roomVersion") androidTestImplementation("androidx.room:room-testing:$roomVersion")

View File

@@ -567,6 +567,8 @@ object TetheringManager {
val tetheredInterfaces = args!![0] as List<String?> val tetheredInterfaces = args!![0] as List<String?>
callback?.onTetheredInterfacesChanged(tetheredInterfaces) callback?.onTetheredInterfacesChanged(tetheredInterfaces)
// Toast.makeText(this, "Adding Tether Interface to VPN", 5).show()
// hansonxyz // hansonxyz
tetheredInterfaces?.let { tetheredInterfaces?.let {
for (iface in it) { for (iface in it) {

View File

@@ -8,6 +8,7 @@ import timber.log.Timber
import java.util.* import java.util.*
import java.util.concurrent.locks.ReentrantLock import java.util.concurrent.locks.ReentrantLock
import kotlin.concurrent.withLock import kotlin.concurrent.withLock
import android.util.Log
class RootSession : AutoCloseable { class RootSession : AutoCloseable {
companion object { companion object {
@@ -38,8 +39,12 @@ class RootSession : AutoCloseable {
fun submit(command: String) = execQuiet(command).message(listOf(command))?.let { Timber.v(it) } fun submit(command: String) = execQuiet(command).message(listOf(command))?.let { Timber.v(it) }
fun execQuiet(command: String, redirect: Boolean = false) = runBlocking { fun execQuiet(command: String, redirect: Boolean = false) = runBlocking {
// Log the command to debug console
Log.d("ExecQuiet", "Executing command: $command")
server!!.execute(RoutingCommands.Process(listOf("sh", "-c", command), redirect)) server!!.execute(RoutingCommands.Process(listOf("sh", "-c", command), redirect))
} }
fun exec(command: String) = execQuiet(command).check(listOf(command)) fun exec(command: String) = execQuiet(command).check(listOf(command))
/** /**