Remove dependency on useless getSystemContext from librootjava
This commit is contained in:
@@ -1,6 +1,9 @@
|
|||||||
|
@file:JvmName("Utils")
|
||||||
|
|
||||||
package be.mygod.librootkotlinx
|
package be.mygod.librootkotlinx
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
|
import android.content.Context
|
||||||
import android.os.Parcel
|
import android.os.Parcel
|
||||||
import android.os.Parcelable
|
import android.os.Parcelable
|
||||||
import android.util.*
|
import android.util.*
|
||||||
@@ -8,6 +11,12 @@ import kotlinx.android.parcel.Parcelize
|
|||||||
|
|
||||||
class NoShellException(cause: Throwable) : Exception("Root missing", cause)
|
class NoShellException(cause: Throwable) : Exception("Root missing", cause)
|
||||||
|
|
||||||
|
val systemContext by lazy {
|
||||||
|
val classActivityThread = Class.forName("android.app.ActivityThread")
|
||||||
|
val activityThread = classActivityThread.getMethod("systemMain").invoke(null)
|
||||||
|
classActivityThread.getMethod("getSystemContext").invoke(activityThread) as Context
|
||||||
|
}
|
||||||
|
|
||||||
@Parcelize
|
@Parcelize
|
||||||
data class ParcelableByte(val value: Byte) : Parcelable
|
data class ParcelableByte(val value: Byte) : Parcelable
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,6 @@ import be.mygod.vpnhotspot.net.wifi.WifiP2pManagerHelper.requestDeviceAddress
|
|||||||
import be.mygod.vpnhotspot.net.wifi.WifiP2pManagerHelper.requestPersistentGroupInfo
|
import be.mygod.vpnhotspot.net.wifi.WifiP2pManagerHelper.requestPersistentGroupInfo
|
||||||
import be.mygod.vpnhotspot.net.wifi.WifiP2pManagerHelper.setWifiP2pChannels
|
import be.mygod.vpnhotspot.net.wifi.WifiP2pManagerHelper.setWifiP2pChannels
|
||||||
import be.mygod.vpnhotspot.util.Services
|
import be.mygod.vpnhotspot.util.Services
|
||||||
import eu.chainfire.librootjava.RootJava
|
|
||||||
import kotlinx.android.parcel.Parcelize
|
import kotlinx.android.parcel.Parcelize
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
@@ -99,7 +98,7 @@ object RepeaterCommands {
|
|||||||
if (target == channel) channel = null
|
if (target == channel) channel = null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return initialize(RootJava.getSystemContext(), Looper.getMainLooper(), uninitializer).also {
|
return initialize(systemContext, Looper.getMainLooper(), uninitializer).also {
|
||||||
uninitializer.target = it
|
uninitializer.target = it
|
||||||
channel = it // cache the instance until invalidated
|
channel = it // cache the instance until invalidated
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ import android.util.Log
|
|||||||
import be.mygod.librootkotlinx.RootCommandNoResult
|
import be.mygod.librootkotlinx.RootCommandNoResult
|
||||||
import be.mygod.librootkotlinx.RootServer
|
import be.mygod.librootkotlinx.RootServer
|
||||||
import be.mygod.librootkotlinx.RootSession
|
import be.mygod.librootkotlinx.RootSession
|
||||||
|
import be.mygod.librootkotlinx.systemContext
|
||||||
import be.mygod.vpnhotspot.App.Companion.app
|
import be.mygod.vpnhotspot.App.Companion.app
|
||||||
import be.mygod.vpnhotspot.BuildConfig
|
import be.mygod.vpnhotspot.BuildConfig
|
||||||
import be.mygod.vpnhotspot.util.Services
|
import be.mygod.vpnhotspot.util.Services
|
||||||
import eu.chainfire.librootjava.RootJava
|
|
||||||
import kotlinx.android.parcel.Parcelize
|
import kotlinx.android.parcel.Parcelize
|
||||||
import timber.log.Timber
|
import timber.log.Timber
|
||||||
|
|
||||||
@@ -29,7 +29,7 @@ object RootManager : RootSession() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
Services.init(RootJava.getSystemContext())
|
Services.init(systemContext)
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user