mirror of
https://github.com/HighCapable/YukiHookAPI.git
synced 2025-09-06 02:35:40 +08:00
Update demo
This commit is contained in:
@@ -48,7 +48,7 @@ class MainActivity : ModuleAppCompatActivity() {
|
|||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
ActivityMainBinding.inflate(layoutInflater).apply {
|
ActivityMainBinding.inflate(layoutInflater).apply {
|
||||||
setContentView(root)
|
setContentView(root)
|
||||||
moduleEnvironment(isShowWarn = false) {
|
moduleEnvironment {
|
||||||
dataChannel(packageName = "com.highcapable.yukihookapi.demo_app").with {
|
dataChannel(packageName = "com.highcapable.yukihookapi.demo_app").with {
|
||||||
wait(DataConst.TEST_CN_DATA) {
|
wait(DataConst.TEST_CN_DATA) {
|
||||||
Toast.makeText(applicationContext, it, Toast.LENGTH_SHORT).show()
|
Toast.makeText(applicationContext, it, Toast.LENGTH_SHORT).show()
|
||||||
@@ -70,6 +70,10 @@ class MainActivity : ModuleAppCompatActivity() {
|
|||||||
moduleDemoResHookText.text = "Support Resources Hook:${YukiHookAPI.Status.isSupportResourcesHook}"
|
moduleDemoResHookText.text = "Support Resources Hook:${YukiHookAPI.Status.isSupportResourcesHook}"
|
||||||
moduleDemoResHookZhText.text = "资源钩子支持状态"
|
moduleDemoResHookZhText.text = "资源钩子支持状态"
|
||||||
moduleDemoEditText.also {
|
moduleDemoEditText.also {
|
||||||
|
hostEnvironment {
|
||||||
|
it.isEnabled = false
|
||||||
|
moduleDemoButton.isEnabled = false
|
||||||
|
}
|
||||||
it.setText(modulePrefs.get(DataConst.TEST_KV_DATA))
|
it.setText(modulePrefs.get(DataConst.TEST_KV_DATA))
|
||||||
moduleDemoButton.setOnClickListener { _ ->
|
moduleDemoButton.setOnClickListener { _ ->
|
||||||
moduleEnvironment {
|
moduleEnvironment {
|
||||||
@@ -80,21 +84,23 @@ class MainActivity : ModuleAppCompatActivity() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
moduleDemoFrgButton.setOnClickListener {
|
moduleDemoFrgButton.setOnClickListener { startActivity(Intent(this@MainActivity, PreferenceActivity::class.java)) }
|
||||||
moduleEnvironment { startActivity(Intent(this@MainActivity, PreferenceActivity::class.java)) }
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 仅在模块环境执行
|
* 仅在 (Xposed) 宿主环境执行
|
||||||
* @param isShowWarn 是否显示警告 - 默认是
|
|
||||||
* @param callback 在模块环境执行
|
* @param callback 在模块环境执行
|
||||||
*/
|
*/
|
||||||
private inline fun moduleEnvironment(isShowWarn: Boolean = true, callback: () -> Unit) {
|
private inline fun hostEnvironment(callback: () -> Unit) {
|
||||||
if (YukiHookAPI.Status.isXposedEnvironment)
|
if (YukiHookAPI.Status.isXposedEnvironment) callback()
|
||||||
(if (isShowWarn)
|
}
|
||||||
Toast.makeText(applicationContext, "This operation is not allowed in Xposed Environment", Toast.LENGTH_SHORT).show())
|
|
||||||
else callback()
|
/**
|
||||||
|
* 仅在模块环境执行
|
||||||
|
* @param callback 在模块环境执行
|
||||||
|
*/
|
||||||
|
private inline fun moduleEnvironment(callback: () -> Unit) {
|
||||||
|
if (YukiHookAPI.Status.isXposedEnvironment.not()) callback()
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -28,11 +28,15 @@
|
|||||||
package com.highcapable.yukihookapi.demo_module.ui
|
package com.highcapable.yukihookapi.demo_module.ui
|
||||||
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.preference.SwitchPreference
|
||||||
|
import com.highcapable.yukihookapi.YukiHookAPI
|
||||||
import com.highcapable.yukihookapi.demo_module.R
|
import com.highcapable.yukihookapi.demo_module.R
|
||||||
|
import com.highcapable.yukihookapi.hook.xposed.parasitic.activity.base.ModuleAppCompatActivity
|
||||||
import com.highcapable.yukihookapi.hook.xposed.prefs.ui.ModulePreferenceFragment
|
import com.highcapable.yukihookapi.hook.xposed.prefs.ui.ModulePreferenceFragment
|
||||||
|
|
||||||
class PreferenceActivity : AppCompatActivity() {
|
class PreferenceActivity : ModuleAppCompatActivity() {
|
||||||
|
|
||||||
|
override val moduleTheme get() = R.style.Theme_Default
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
@@ -47,13 +51,14 @@ class PreferenceActivity : AppCompatActivity() {
|
|||||||
|
|
||||||
override fun onSupportNavigateUp(): Boolean {
|
override fun onSupportNavigateUp(): Boolean {
|
||||||
onBackPressed()
|
onBackPressed()
|
||||||
return super.onSupportNavigateUp()
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
class SettingsFragment : ModulePreferenceFragment() {
|
class SettingsFragment : ModulePreferenceFragment() {
|
||||||
|
|
||||||
override fun onCreatePreferencesInModuleApp(savedInstanceState: Bundle?, rootKey: String?) {
|
override fun onCreatePreferencesInModuleApp(savedInstanceState: Bundle?, rootKey: String?) {
|
||||||
setPreferencesFromResource(R.xml.settings_preferences, rootKey)
|
setPreferencesFromResource(R.xml.settings_preferences, rootKey)
|
||||||
|
findPreference<SwitchPreference>("show_dialog_when_demo_app_opend")?.isEnabled = YukiHookAPI.Status.isXposedEnvironment.not()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
Reference in New Issue
Block a user