You've already forked KernelSU-Next
mirror of
https://github.com/KernelSU-Next/KernelSU-Next.git
synced 2025-08-27 23:46:34 +00:00
manager: add eruda console (v3.4.3) to webui-next
This commit is contained in:
9
manager/app/src/main/assets/eruda.min.js
vendored
Normal file
9
manager/app/src/main/assets/eruda.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
@@ -25,6 +25,10 @@ class WebUIActivity : ComponentActivity() {
|
|||||||
|
|
||||||
private var rootShell: Shell? = null
|
private var rootShell: Shell? = null
|
||||||
|
|
||||||
|
fun erudaConsole(context: android.content.Context): String {
|
||||||
|
return context.assets.open("eruda.min.js").bufferedReader().use { it.readText() }
|
||||||
|
}
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
|
|
||||||
// Enable edge to edge
|
// Enable edge to edge
|
||||||
@@ -46,7 +50,10 @@ class WebUIActivity : ComponentActivity() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
val prefs = getSharedPreferences("settings", MODE_PRIVATE)
|
val prefs = getSharedPreferences("settings", MODE_PRIVATE)
|
||||||
WebView.setWebContentsDebuggingEnabled(prefs.getBoolean("enable_web_debugging", false))
|
val developerOptionsEnabled = prefs.getBoolean("enable_developer_options", false)
|
||||||
|
val enableWebDebugging = prefs.getBoolean("enable_web_debugging", false)
|
||||||
|
|
||||||
|
WebView.setWebContentsDebuggingEnabled(developerOptionsEnabled && enableWebDebugging)
|
||||||
|
|
||||||
val moduleDir = "/data/adb/modules/${moduleId}"
|
val moduleDir = "/data/adb/modules/${moduleId}"
|
||||||
val webRoot = File("${moduleDir}/webroot")
|
val webRoot = File("${moduleDir}/webroot")
|
||||||
@@ -84,7 +91,24 @@ class WebUIActivity : ComponentActivity() {
|
|||||||
settings.allowFileAccess = false
|
settings.allowFileAccess = false
|
||||||
webviewInterface = WebViewInterface(this@WebUIActivity, this, moduleDir)
|
webviewInterface = WebViewInterface(this@WebUIActivity, this, moduleDir)
|
||||||
addJavascriptInterface(webviewInterface, "ksu")
|
addJavascriptInterface(webviewInterface, "ksu")
|
||||||
setWebViewClient(webViewClient)
|
setWebViewClient(object : WebViewClient() {
|
||||||
|
override fun shouldInterceptRequest(
|
||||||
|
view: WebView,
|
||||||
|
request: WebResourceRequest
|
||||||
|
): WebResourceResponse? {
|
||||||
|
return webViewAssetLoader.shouldInterceptRequest(request.url)
|
||||||
|
}
|
||||||
|
override fun onPageFinished(view: WebView?, url: String?) {
|
||||||
|
super.onPageFinished(view, url)
|
||||||
|
if (developerOptionsEnabled && enableWebDebugging) {
|
||||||
|
view?.evaluateJavascript(
|
||||||
|
erudaConsole(this@WebUIActivity),
|
||||||
|
null
|
||||||
|
)
|
||||||
|
view?.evaluateJavascript("eruda.init();", null)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
loadUrl("https://mui.kernelsu.org/index.html")
|
loadUrl("https://mui.kernelsu.org/index.html")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user