忙于工作与生活,可能不会太关注 issues,自由时间更新
如果你觉得我的项目有用,欢迎给个 star
ViewEditor/视图编辑器
Home Page: https://github.com/gitofleonardo/AnyDebug
License: GNU General Public License v3.0
空指针
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.hhvvg.anydebug/com.hhvvg.anydebug.ui.MainActivity}: android.view.InflateException: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Error inflating class androidx.fragment.app.FragmentContainerView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3817)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3963)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:101)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2381)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:210)
at android.os.Looper.loop(Looper.java:299)
at android.app.ActivityThread.main(ActivityThread.java:8234)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:559)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:954)
Caused by: android.view.InflateException: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Error inflating class androidx.fragment.app.FragmentContainerView
Caused by: android.view.InflateException: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Error inflating class androidx.fragment.app.FragmentContainerView
Caused by: java.lang.NullPointerException: (...) must not be null
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.getConfService(SettingsFragment.kt:23)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.onCreatePreferences(SettingsFragment.kt:47)
at androidx.preference.PreferenceFragmentCompat.onCreate(PreferenceFragmentCompat.java:161)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.onCreate(SettingsFragment.kt:36)
at androidx.fragment.app.Fragment.performCreate(Fragment.java:2981)
at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:474)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1840)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1764)
at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1701)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2849)
at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:2773)
at androidx.fragment.app.Fragment.onCreate(Fragment.java:1913)
at androidx.navigation.fragment.NavHostFragment.onCreate(NavHostFragment.kt:169)
at androidx.fragment.app.Fragment.performCreate(Fragment.java:2981)
at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:474)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1840)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1764)
at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1670)
at androidx.fragment.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:323)
at androidx.fragment.app.FragmentContainerView.(FragmentContainerView.kt:158)
at androidx.fragment.app.FragmentLayoutInflaterFactory.onCreateView(FragmentLayoutInflaterFactory.java:53)
at androidx.fragment.app.FragmentController.onCreateView(FragmentController.java:135)
at androidx.fragment.app.FragmentActivity.dispatchFragmentsOnCreateView(FragmentActivity.java:295)
at androidx.fragment.app.FragmentActivity.onCreateView(FragmentActivity.java:274)
at android.view.LayoutInflater.tryCreateView(LayoutInflater.java:1098)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1026)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:990)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1152)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1113)
at android.view.LayoutInflater.inflate(LayoutInflater.java:711)
at android.view.LayoutInflater.inflate(LayoutInflater.java:548)
at com.hhvvg.anydebug.databinding.ActivityMainBinding.inflate(ActivityMainBinding.java:61)
at com.hhvvg.anydebug.databinding.ActivityMainBinding.inflate(ActivityMainBinding.java:55)
at com.hhvvg.anydebug.ui.MainActivity$binding$2.invoke(MainActivity.kt:11)
at com.hhvvg.anydebug.ui.MainActivity$binding$2.invoke(MainActivity.kt:11)
at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74)
at com.hhvvg.anydebug.ui.MainActivity.getBinding(MainActivity.kt:11)
at com.hhvvg.anydebug.ui.MainActivity.onCreate(MainActivity.kt:15)
at android.app.Activity.performCreate(Activity.java:8516)
at android.app.Activity.performCreate(Activity.java:8480)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1418)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3798)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3963)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:101)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2381)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:210)
at android.os.Looper.loop(Looper.java:299)
at android.app.ActivityThread.main(ActivityThread.java:8234)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:559)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:954)
I am very interested in how you will radically change AnyDebug and therefore I ask you to create it ".github/workflows" so that the debug V2 version could be tried right now.
You can see an example of a ready-made workflows file here
设备 pixel3
anydebug版本 v2.0.6
系统 Pixel Experience plus 13
lsposed勾选系统界面和tim,打开tim测试点击文本闪退,无法打开模块设置界面,依旧闪退
当我改变平衡时,文字很小。如何解决?
修改桌面桌面内多个应用名称时会混乱修改后的名称不对位。
可以添加下修改开关吗?修改的数据不能保存吗?重启失效!
勾选了网易云音乐并启用全局编辑后,在网易云音乐中任何一次点击都会造成网易云音乐崩溃。
设备:Redmi K40s
系统版本:MIUI 13.0.7 (Android 12)
LSPosed版本:1.8.6 (6712)
AnyDebug版本:2.0.6
网易云音乐版本:8.10.30
[Display]: SKQ1.211006.001 test-keys
[Android Version]: 12
[API Version]: 31
[Package Name]: com.hhvvg.anydebug
[Error Type]: Jvm
[Crash Time]: 2 Jul 2022 21.46.45
[Stack Trace]:
java.lang.NullPointerException: Attempt to invoke interface method 'boolean com.hhvvg.anydebug.IConfigurationService.isEditEnabled()' on a null object reference
at com.hhvvg.anydebug.service.TileControlService.onTileAdded(TileControlService.kt:42)
at android.service.quicksettings.TileService$H.handleMessage(TileService.java:425)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:210)
at android.os.Looper.loop(Looper.java:299)
at android.app.ActivityThread.main(ActivityThread.java:8085)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:556)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1045)
Is it possible to put the permanent edit feature back in (even if unstable)?
Or is there another way to make the edits stick after app restarts and reboots?
比如说view的名称,还有界面能提供一些当前界面的相关信息?比如activity的名称
开发者你好,我刚才无意间注意到是,在手机开发者选项里有“显示布局及边界”这个功能,不知是否可以为修改view的文本数据提供一些帮助呢
主流的RecyclerView不就是View复用吗,控件id是唯一的。对于一些固定列表,如果我们能找出这个View项在RecyclerView的position,那么下次应该就可以恢复,但是这种方式不能适用于动态变化的列表。
催更催更,很需要这种插件,希望加上编辑开关和存储。奥利给
添加XServiceManager.debug(true)
异常位置:XServiceManager.getService报null
com.hhvvg.anydebug.ui.fragment.SettingsFragment 第24行
val binder = XServiceManager.getService(CONFIGURATION_SERVICE)
获取binder为null
错误日志
2022-11-28 16:56:42.777 24149-24149 XServiceManager com.hhvvg.anydebug E get CONFIGURATION_MANAGER_SERVICE service error
java.lang.SecurityException: Binder invocation to an incorrect interface
at android.os.Parcel.createExceptionOrNull(Parcel.java:3011)
at android.os.Parcel.createException(Parcel.java:2995)
at android.os.Parcel.readException(Parcel.java:2978)
at android.os.Parcel.readException(Parcel.java:2920)
at com.kaisar.xservicemanager.XServiceManager.getService(XServiceManager.java:250)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment$confService$2.invoke(SettingsFragment.kt:25)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment$confService$2.invoke(SettingsFragment.kt:23)
at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.getConfService(SettingsFragment.kt:23)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.onCreatePreferences(SettingsFragment.kt:48)
at androidx.preference.PreferenceFragmentCompat.onCreate(PreferenceFragmentCompat.java:161)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.onCreate(SettingsFragment.kt:37)
at androidx.fragment.app.Fragment.performCreate(Fragment.java:2981)
at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:474)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1840)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1764)
at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1701)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2849)
at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:2773)
at androidx.fragment.app.Fragment.onCreate(Fragment.java:1913)
at androidx.navigation.fragment.NavHostFragment.onCreate(NavHostFragment.kt:169)
at androidx.fragment.app.Fragment.performCreate(Fragment.java:2981)
at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:474)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1840)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1764)
at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1670)
at androidx.fragment.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:323)
at androidx.fragment.app.FragmentContainerView.(FragmentContainerView.kt:158)
at androidx.fragment.app.FragmentLayoutInflaterFactory.onCreateView(FragmentLayoutInflaterFactory.java:53)
at androidx.fragment.app.FragmentController.onCreateView(FragmentController.java:135)
at androidx.fragment.app.FragmentActivity.dispatchFragmentsOnCreateView(FragmentActivity.java:295)
at androidx.fragment.app.FragmentActivity.onCreateView(FragmentActivity.java:274)
at android.view.LayoutInflater.tryCreateView(LayoutInflater.java:1098)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1026)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:990)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1152)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1113)
at android.view.LayoutInflater.inflate(LayoutInflater.java:711)
at android.view.LayoutInflater.inflate(LayoutInflater.java:548)
at com.hhvvg.anydebug.databinding.ActivityMainBinding.inflate(ActivityMainBinding.java:61)
at com.hhvvg.anydebug.databinding.ActivityMainBinding.inflate(ActivityMainBinding.java:55)
at com.hhvvg.anydebug.ui.MainActivity$binding$2.invoke(MainActivity.kt:11)
at com.hhvvg.anydebug.ui.MainActivity$binding$2.invoke(MainActivity.kt:11)
at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74)
at com.hhvvg.anydebug.ui.MainActivity.getBinding(MainActivity.kt:11)
at com.hhvvg.anydebug.ui.MainActivity.onCreate(MainActivity.kt:15)
2022-11-28 16:56:42.777 24149-24149 XServiceManager com.hhvvg.anydebug E at android.app.Activity.performCreate(Activity.java:8463)
at android.app.Activity.performCreate(Activity.java:8432)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1385)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3756)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3921)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:101)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2363)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:210)
at android.os.Looper.loop(Looper.java:299)
at android.app.ActivityThread.main(ActivityThread.java:8109)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:559)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
Caused by: android.os.RemoteException: Remote stack trace:
at android.os.Parcel.nativeEnforceInterface(Native Method)
at android.os.Parcel.enforceInterface(Parcel.java:918)
at android.content.IClipboard$Stub.onTransact(IClipboard.java:175)
at com.android.server.clipboard.ClipboardService$ClipboardImpl.onTransact(ClipboardService.java:355)
at android.os.Binder.transact(Binder.java:1169)
2022-11-28 16:56:42.778 24149-24149 AndroidRuntime com.hhvvg.anydebug D Shutting down VM
2022-11-28 16:56:42.779 24149-24149 AndroidRuntime com.hhvvg.anydebug E FATAL EXCEPTION: main
Process: com.hhvvg.anydebug, PID: 24149
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.hhvvg.anydebug/com.hhvvg.anydebug.ui.MainActivity}: android.view.InflateException: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Error inflating class androidx.fragment.app.FragmentContainerView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3775)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3921)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:101)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2363)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:210)
at android.os.Looper.loop(Looper.java:299)
at android.app.ActivityThread.main(ActivityThread.java:8109)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:559)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
Caused by: android.view.InflateException: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Error inflating class androidx.fragment.app.FragmentContainerView
Caused by: android.view.InflateException: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Error inflating class androidx.fragment.app.FragmentContainerView
Caused by: java.lang.NullPointerException: (...) must not be null
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.getConfService(SettingsFragment.kt:23)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.onCreatePreferences(SettingsFragment.kt:48)
at androidx.preference.PreferenceFragmentCompat.onCreate(PreferenceFragmentCompat.java:161)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.onCreate(SettingsFragment.kt:37)
at androidx.fragment.app.Fragment.performCreate(Fragment.java:2981)
at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:474)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1840)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1764)
at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1701)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2849)
at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:2773)
at androidx.fragment.app.Fragment.onCreate(Fragment.java:1913)
at androidx.navigation.fragment.NavHostFragment.onCreate(NavHostFragment.kt:169)
at androidx.fragment.app.Fragment.performCreate(Fragment.java:2981)
at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:474)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1840)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1764)
at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1670)
at androidx.fragment.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:323)
at androidx.fragment.app.FragmentContainerView.(FragmentContainerView.kt:158)
at androidx.fragment.app.FragmentLayoutInflaterFactory.onCreateView(FragmentLayoutInflaterFactory.java:53)
at androidx.fragment.app.FragmentController.onCreateView(FragmentController.java:135)
2022-11-28 16:56:42.779 24149-24149 AndroidRuntime com.hhvvg.anydebug E at androidx.fragment.app.FragmentActivity.dispatchFragmentsOnCreateView(FragmentActivity.java:295)
at androidx.fragment.app.FragmentActivity.onCreateView(FragmentActivity.java:274)
at android.view.LayoutInflater.tryCreateView(LayoutInflater.java:1098)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1026)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:990)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1152)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1113)
at android.view.LayoutInflater.inflate(LayoutInflater.java:711)
at android.view.LayoutInflater.inflate(LayoutInflater.java:548)
at com.hhvvg.anydebug.databinding.ActivityMainBinding.inflate(ActivityMainBinding.java:61)
at com.hhvvg.anydebug.databinding.ActivityMainBinding.inflate(ActivityMainBinding.java:55)
at com.hhvvg.anydebug.ui.MainActivity$binding$2.invoke(MainActivity.kt:11)
at com.hhvvg.anydebug.ui.MainActivity$binding$2.invoke(MainActivity.kt:11)
at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74)
at com.hhvvg.anydebug.ui.MainActivity.getBinding(MainActivity.kt:11)
at com.hhvvg.anydebug.ui.MainActivity.onCreate(MainActivity.kt:15)
at android.app.Activity.performCreate(Activity.java:8463)
at android.app.Activity.performCreate(Activity.java:8432)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1385)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3756)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3921)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:101)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2363)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:210)
at android.os.Looper.loop(Looper.java:299)
at android.app.ActivityThread.main(ActivityThread.java:8109)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:559)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
把一个控件隐藏后想把它恢复太难了, 没有提供规则列表可以编辑或恢复.
与上帝模式模块冲突, 上帝模式会显示没有激活. 如果二选一的话, 只能选择上帝模式了.
如果支持规则列表和布局导航(移动方向定位控件), 是可以替代上帝模式的.
hook掉View的dispatchTouchEvent后,经过简单的判定就可以直接触发弹窗编辑功能,
这样就不需要遍历每个View来包装或新设点击监听器
设置监听器还有一个BUG就是会取消父容器的点击事件,只能点到没文字的地方才能触发父容器的点击响应
具体代码因为涉及改动太多,而且我不怎么会ktolin,可以参考我项目TestApp中的HookEditText.java,核心类就两个,不超过200行代码
编译的APP经过测试功能全部正常
如题,想突出显示某些感兴趣的文本,能否支持正则匹配文本以应用相应颜色?
系统版本:android12
机型:Realme GT Neo
框架:lsposed 1.8.3
还有一个小问题,不知道为什么软件部分界面和文本都是白色的,根本看不清
2.0.5版本 设备为:小米9 Android9.0 MIUI版本 MIUI10 9.7.22开发版 LSPosed版本为1.8.3
对于大部分普通APP,试过了是可以改的。但是微信支付宝怎么就不行?已经在lsposed勾选生效应用为系统框架和微信支付宝,在Any debug内打开了那两个选项,还是不行
I don't think this type of thing exists (although the workaround I could find is disabling the enable persistent edit)
Used this to make some edits on WeChat, which caused a crash. Persistent option was checked.
Upon trying to open the AnyDebug app again, it keeps crashing whether edit mode is on or off. Uninstalling and reinstalling, wiping cache/dalvik all did not solve the issue
Where is the information on persistent settings stored? Seems like the app does not clear past history even when uninstalling the app
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.hhvvg.anydebug/com.hhvvg.anydebug.ui.MainActivity}: android.view.InflateException: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Error inflating class androidx.fragment.app.FragmentContainerView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3822)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3968)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:101)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2386)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:210)
at android.os.Looper.loop(Looper.java:299)
at android.app.ActivityThread.main(ActivityThread.java:8252)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:559)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:954)
Caused by: android.view.InflateException: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Error inflating class androidx.fragment.app.FragmentContainerView
Caused by: android.view.InflateException: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Error inflating class androidx.fragment.app.FragmentContainerView
Caused by: java.lang.NullPointerException: (...) must not be null
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.e0(Unknown Source:8)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.d0(SourceFile:15)
at androidx.preference.b.A(SourceFile:3)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.A(Unknown Source:0)
at androidx.fragment.app.d0.e(SourceFile:3)
at androidx.fragment.app.d0.k(SourceFile:9)
at androidx.fragment.app.x.D(SourceFile:23)
at androidx.fragment.app.x.X(Unknown Source:91)
at androidx.fragment.app.x.B(SourceFile:4)
at androidx.fragment.app.x.v(SourceFile:3)
at androidx.fragment.app.x.k(SourceFile:2)
at androidx.fragment.app.n.A(SourceFile:2)
at androidx.navigation.fragment.NavHostFragment.A(SourceFile:41)
at androidx.fragment.app.d0.e(SourceFile:3)
at androidx.fragment.app.d0.k(SourceFile:9)
at androidx.fragment.app.x.D(SourceFile:23)
at androidx.fragment.app.x.X(Unknown Source:91)
at androidx.fragment.app.x.C(Unknown Source:31)
at androidx.fragment.app.a.i(SourceFile:2)
at androidx.fragment.app.FragmentContainerView.(SourceFile:6)
at androidx.fragment.app.v.onCreateView(Unknown Source:16)
at androidx.fragment.app.q.onCreateView(SourceFile:4)
at android.view.LayoutInflater.tryCreateView(LayoutInflater.java:1098)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1026)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:990)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1152)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1113)
at android.view.LayoutInflater.inflate(LayoutInflater.java:711)
at android.view.LayoutInflater.inflate(LayoutInflater.java:548)
at com.hhvvg.anydebug.ui.MainActivity$a.c(SourceFile:2)
at q4.f.getValue(Unknown Source:20)
at com.hhvvg.anydebug.ui.MainActivity.onCreate(SourceFile:1)
at android.app.Activity.performCreate(Activity.java:8516)
at android.app.Activity.performCreate(Activity.java:8480)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1418)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3803)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3968)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:101)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2386)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:210)
at android.os.Looper.loop(Looper.java:299)
at android.app.ActivityThread.main(ActivityThread.java:8252)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:559)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:954)
realme 安卓12 桌面不能编辑 作用域加入系统桌面的
重新安装微信和这个软件,之前做的编辑仍然还在
例如目标应用内有“SVIP装扮免费穿”文本,而我需要将其更改为“个性装扮”,那么就可以直接通过查找替换实现。
感谢作者带来这个非常棒的应用,希望作者能开启捐赠渠道,想表达一些谢意。
我在使用中遇到了一些问题,来反馈一下。
我的手机:
Redmi K30 Pro Zoom Edition
MIUI 12.5 21.11.3
遇到的问题:
1.AnyDebug2.0.4只对部分程序生效,测试微信不生效,淘宝会卡启动页面,keep软件完美生效。
2.AnyDebug2.0.5版本在本机打不开,会直接闪退。
重启手机会卡米,有自动救砖模块问题不大。
作者的另一款软件AnyText1.0.2,可以在所有软件使用,但是有一些小问题。
遇到的问题:
1.软件本身没有开关,想启停必须去xp里手动开关作用域,较为不便,希望像AnyDebug一样加一个开关。
2.文本修改可以即时生效,但在部分软件中修改的文本长度有限制。
例如在淘宝中我修改“¥28.00”为“¥128.00”,显示效果为“¥128.”,而在keep中测试效果却可以完美显示。
作者您好,
不知您是否听过 Autojs 项目,它目前仍在维护的地址:https://github.com/kkevsekk1/AutoX
这个项目是一个基于Android无障碍的自动化工具,可以通过图形交互界面快速定位所有的 View ,并获取其信息。(虽然其还存在一些问题,比如位于下层的View无法被选取,但是可以通过代码找到UI,并且可以通过悬浮窗非常方便的控制开关。)
我一直想实现一个能够修改View信息(如text)的root版Autojs,但是一直没有找到能够修改View信息的开源项目。直到今天发现您的这个项目,我才发现到我的想法是可能可以实现的,非常感谢您无私的开源分享!
看到您的其他issues,您貌似有让本项目的使用更加人性化的想法,希望 Autojs 项目能够帮助到您。
有考虑加入api供外部程序自动化调用吗
[Display]: SKQ1.211006.001 test-keys
[Android Version]: 12
[API Version]: 31
[Package Name]: com.hhvvg.anydebug
[Error Type]: Jvm
[Crash Time]: 2 Jul 2022 21.53.07
[Stack Trace]:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.hhvvg.anydebug/com.hhvvg.anydebug.ui.MainActivity}: android.view.InflateException: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Error inflating class androidx.fragment.app.FragmentContainerView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3726)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3893)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2259)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:210)
at android.os.Looper.loop(Looper.java:299)
at android.app.ActivityThread.main(ActivityThread.java:8085)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:556)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1045)
Caused by: android.view.InflateException: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Error inflating class androidx.fragment.app.FragmentContainerView
Caused by: android.view.InflateException: Binary XML file line #34 in com.hhvvg.anydebug:layout/activity_main: Error inflating class androidx.fragment.app.FragmentContainerView
Caused by: java.lang.NullPointerException: (...) must not be null
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.getConfService(SettingsFragment.kt:23)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.onCreatePreferences(SettingsFragment.kt:47)
at androidx.preference.PreferenceFragmentCompat.onCreate(PreferenceFragmentCompat.java:161)
at com.hhvvg.anydebug.ui.fragment.SettingsFragment.onCreate(SettingsFragment.kt:36)
at androidx.fragment.app.Fragment.performCreate(Fragment.java:2981)
at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:474)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1840)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1764)
at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1701)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2849)
at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:2773)
at androidx.fragment.app.Fragment.onCreate(Fragment.java:1913)
at androidx.navigation.fragment.NavHostFragment.onCreate(NavHostFragment.kt:169)
at androidx.fragment.app.Fragment.performCreate(Fragment.java:2981)
at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:474)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:257)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1840)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1764)
at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1670)
at androidx.fragment.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:323)
at androidx.fragment.app.FragmentContainerView.(FragmentContainerView.kt:158)
at androidx.fragment.app.FragmentLayoutInflaterFactory.onCreateView(FragmentLayoutInflaterFactory.java:53)
at androidx.fragment.app.FragmentController.onCreateView(FragmentController.java:135)
at androidx.fragment.app.FragmentActivity.dispatchFragmentsOnCreateView(FragmentActivity.java:295)
at androidx.fragment.app.FragmentActivity.onCreateView(FragmentActivity.java:274)
at android.view.LayoutInflater.tryCreateView(LayoutInflater.java:1096)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1024)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:988)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:1150)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1111)
at android.view.LayoutInflater.inflate(LayoutInflater.java:709)
at android.view.LayoutInflater.inflate(LayoutInflater.java:547)
at com.hhvvg.anydebug.databinding.ActivityMainBinding.inflate(ActivityMainBinding.java:61)
at com.hhvvg.anydebug.databinding.ActivityMainBinding.inflate(ActivityMainBinding.java:55)
at com.hhvvg.anydebug.ui.MainActivity$binding$2.invoke(MainActivity.kt:11)
at com.hhvvg.anydebug.ui.MainActivity$binding$2.invoke(MainActivity.kt:11)
at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74)
at com.hhvvg.anydebug.ui.MainActivity.getBinding(MainActivity.kt:11)
at com.hhvvg.anydebug.ui.MainActivity.onCreate(MainActivity.kt:15)
at android.app.Activity.performCreate(Activity.java:8238)
at android.app.Activity.performCreate(Activity.java:8206)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1329)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3699)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3893)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2259)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:210)
at android.os.Looper.loop(Looper.java:299)
at android.app.ActivityThread.main(ActivityThread.java:8085)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:556)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1045)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.