System UI force stop
Closed this issue · 17 comments
When I Enter correct code , System UI crash immediately.
Below is System Log and Xposed Module Log
Thank you
3C Toolbox Pro (logcat)
E/16:51:45.766 AndroidRuntime( 1629)
at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:102)
E/16:51:45.766 AndroidRuntime( 1629)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:815)
E/16:51:45.766 AndroidRuntime( 1629)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1020)
E/16:51:45.766 AndroidRuntime( 1629)
at java.lang.reflect.Method.invoke(Method.java:372)
E/16:51:45.766 AndroidRuntime( 1629)
at java.lang.reflect.Method.invoke(Native Method)
E/16:51:45.766 AndroidRuntime( 1629)
at android.app.ActivityThread.main(ActivityThread.java:5389)
E/16:51:45.766 AndroidRuntime( 1629)
at android.os.Looper.loop(Looper.java:195)
E/16:51:45.766 AndroidRuntime( 1629)
at android.os.MessageQueue.next(MessageQueue.java:143)
E/16:51:45.766 AndroidRuntime( 1629)
at android.os.MessageQueue.nativePollOnce(Native Method)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:5913)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:5768)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5797)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5823)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3557)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3584)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3576)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3610)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3557)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3750)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3584)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3693)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3576)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3610)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3557)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4002)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4136)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.View.dispatchPointerEvent(View.java:8742)
E/16:51:45.766 AndroidRuntime( 1629)
at com.android.systemui.statusbar.phone.StatusBarWindowView.dispatchTouchEvent(StatusBarWindowView.java:184)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2107)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2406)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2107)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2406)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2107)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2406)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2107)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2406)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2107)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2406)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2107)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2406)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2107)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2406)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2107)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2406)
E/16:51:45.766 AndroidRuntime( 1629)
at android.view.View.dispatchTouchEvent(View.java:8541)
E/16:51:45.766 AndroidRuntime( 1629)
at me.rijul.knockcode.LockButtonView.onTouch(LockButtonView.java:55)
E/16:51:45.766 AndroidRuntime( 1629)
at me.rijul.knockcode.KeyguardKnockView.onPositionTapped(KeyguardKnockView.java:444)
E/16:51:45.766 AndroidRuntime( 1629)
at de.robv.android.xposed.XposedHelpers.callMethod(XposedHelpers.java:1213)
E/16:51:45.766 AndroidRuntime( 1629)
at de.robv.android.xposed.XposedHelpers.findMethodBestMatch(XposedHelpers.java:449)
E/16:51:45.766 AndroidRuntime( 1629)
at de.robv.android.xposed.XposedHelpers.findMethodBestMatch(XposedHelpers.java:436)
E/16:51:45.766 AndroidRuntime( 1629)
java.lang.NoSuchMethodError: com.android.keyguard.KeyguardUpdateMonitor#getCurrentUser()#bestmatch
E/16:51:45.766 AndroidRuntime( 1629)
Process: com.android.systemui, PID: 1629
E/16:51:45.766 AndroidRuntime( 1629)
FATAL EXCEPTION: main
Xposed Log
01-05 16:49:53.230 I/Xposed ( 656): -----------------
01-05 16:49:53.230 I/Xposed ( 656): Starting Xposed version 86, compiled for SDK 22
01-05 16:49:53.230 I/Xposed ( 656): Device: C6903 (Sony), Android version 5.1.1 (SDK 22)
01-05 16:49:53.230 I/Xposed ( 656): ROM: 14.6.A.1.236
01-05 16:49:53.230 I/Xposed ( 656): Build fingerprint: Sony/C6903/C6903:5.1.1/14.6.A.1.236/2031203603:user/release-keys
01-05 16:49:53.230 I/Xposed ( 656): Platform: armeabi-v7a, 32-bit binary, system server: yes
01-05 16:49:53.230 I/Xposed ( 656): SELinux enabled: yes, enforcing: no
01-05 16:49:55.700 I/Xposed ( 656): -----------------
01-05 16:49:55.706 I/Xposed ( 656): Added Xposed (/system/framework/XposedBridge.jar) to CLASSPATH
01-05 16:49:56.253 I/Xposed ( 656): Detected ART runtime
01-05 16:49:56.280 I/Xposed ( 656): Found Xposed class 'de/robv/android/xposed/XposedBridge', now initializing
01-05 16:49:57.711 I/Xposed ( 656): Loading modules from /data/app/me.rijul.knockcode-2/base.apk
01-05 16:49:58.063 I/Xposed ( 656): Loading class me.rijul.knockcode.XposedMod
01-05 16:50:35.845 I/Xposed ( 1629): [KnockCode] AOSPish Device
01-05 16:50:35.946 I/Xposed ( 1629): [KnockCode] Setting resources to fullscreen!
01-05 16:50:40.777 I/Xposed ( 2183): [KnockCode] Setting resources to fullscreen!
01-05 16:51:46.031 I/Xposed ( 6994): [KnockCode] AOSPish Device
01-05 16:51:46.155 I/Xposed ( 6994): [KnockCode] Setting resources to fullscreen!
01-05 16:52:04.714 I/Xposed ( 8147): [KnockCode] AOSPish Device
01-05 16:52:04.850 I/Xposed ( 8147): [KnockCode] Setting resources to fullscreen!
01-05 16:52:30.655 I/Xposed ( 9818): [KnockCode] AOSPish Device
01-05 16:52:30.756 I/Xposed ( 9818): [KnockCode] Setting resources to fullscreen!
01-05 16:56:18.837 I/Xposed ( 1424): [KnockCode] Setting resources to fullscreen!
V1.4.4 work well
But V1.4.8 broken
Your Logcat misses the most important part I need to solve this
Oh .... Which app I need to logcat? What should I do?
Get a longer Logcat. Use a computer
https://www.dropbox.com/s/80nfnh09h10dl76/2017-01-13_08-45-01.log?dl=0
I cat all the log and no filter
System UI was crashed approximately at 8:38
And crash many times because
I tap the right code ->System UI crash ->Wait for System UI appear again ->tap the right code ->UI crash again
Your module is really cool and I hope that you can fix it. thankyou~~
getCurrentUser is causing the exception, which device are you on?
Sony Xperia Z1 C6903 Android 5.1.1 Official Rom
Can you send your SystemUI.apk?
https://www.dropbox.com/s/oqlc5ddoqhyf05t/SystemUI_Framework_pack.zip?dl=0
Hmm...Because my Rom is odex rom ,so i try to merge odex and apk together. you will see "SystemUI_deodex.apk" in the zip file.
I also put the original file in "/SystemUI" and other system framework file that you may need.
sorry for my bad English.
I compared the two version of onPositionTapped()
method I think there is no big different. Only XposedHelpers.callMethod(mKeyguardUpdateMonitor, "getCurrentUser")
this code make my SystemUI force stop.What is this method mean?
That's a nice catch you found there. This method tells the system that the password has been entered successfully, otherwise it would only count the failed attempts, and cause the error "Too many unsuccessful attempts, please wait 30 seconds."
I will look at how to fix it in some time, right now I have exams.
Well, I think I figured it out looking at the commits you linked. On Lollipop, the method is supposed to be (int) XposedHelpers.callMethod(mLockPatternUtils, "getCurrentUser")
, instead of (int) XposedHelpers.callMethod(mKeyguardUpdateMonitor, "getCurrentUser")
. Will add a test version here very soon. Thanks a lot - this should fix things easily.
https://github.com/Rijul-Ahuja/Xposed-Knock-Code/blob/master/app-release.apk?raw=true
Try this, and let me know?
Xposed log
02-01 23:41:04.861 I/Xposed ( 660): -----------------
02-01 23:41:04.861 I/Xposed ( 660): Starting Xposed version 86, compiled for SDK 22
02-01 23:41:04.861 I/Xposed ( 660): Device: C6903 (Sony), Android version 5.1.1 (SDK 22)
02-01 23:41:04.861 I/Xposed ( 660): ROM: 14.6.A.1.236
02-01 23:41:04.861 I/Xposed ( 660): Build fingerprint: Sony/C6903/C6903:5.1.1/14.6.A.1.236/2031203603:user/release-keys
02-01 23:41:04.861 I/Xposed ( 660): Platform: armeabi-v7a, 32-bit binary, system server: yes
02-01 23:41:04.861 I/Xposed ( 660): SELinux enabled: yes, enforcing: no
02-01 23:41:07.350 I/Xposed ( 660): -----------------
02-01 23:41:07.356 I/Xposed ( 660): Added Xposed (/system/framework/XposedBridge.jar) to CLASSPATH
02-01 23:41:07.939 I/Xposed ( 660): Detected ART runtime
02-01 23:41:07.963 I/Xposed ( 660): Found Xposed class 'de/robv/android/xposed/XposedBridge', now initializing
02-01 23:41:08.381 I/Xposed ( 660): Loading modules from /data/app/me.rijul.knockcode-2/base.apk
02-01 23:41:08.586 I/Xposed ( 660): Loading class me.rijul.knockcode.XposedMod
02-01 23:41:50.889 I/Xposed ( 1659): [KnockCode] AOSPish Device
02-01 23:41:51.171 I/Xposed ( 1659): [KnockCode] Setting resources to fullscreen!
02-01 23:41:55.167 I/Xposed ( 2113): [KnockCode] Setting resources to fullscreen!
02-01 23:42:00.309 I/Xposed ( 1659): [KnockCode] PIN from stock settings isn't enabled; no support
02-01 23:42:01.476 I/Xposed ( 1659): [KnockCode] PIN from stock settings isn't enabled; no support
02-01 23:47:01.823 I/Xposed ( 1659): [KnockCode] PIN from stock settings isn't enabled; no support
02-01 23:47:01.894 I/Xposed ( 1659): [KnockCode] PIN from stock settings isn't enabled; no support
02-01 23:50:09.048 I/Xposed ( 1411): [KnockCode] Setting resources to fullscreen!
It works perfectly and I didn't found any system log related to system UI or xposed module.
You'll get good grade in your exam. Haha
Does Knock Code work? It shouldn't apparently, because you have not turned on PIN from stock settings?
Yes it does work.
02-01 23:42:00.309 I/Xposed ( 1659): [KnockCode] PIN from stock settings isn't enabled; no support
02-01 23:42:01.476 I/Xposed ( 1659): [KnockCode] PIN from stock settings isn't enabled; no support
02-01 23:47:01.823 I/Xposed ( 1659): [KnockCode] PIN from stock settings isn't enabled; no support
02-01 23:47:01.894 I/Xposed ( 1659): [KnockCode] PIN from stock settings isn't enabled; no support
And I think....these log is because my cellphone is still booting up .
I lock and unlock my cellphone many times and didn't meet any problem.
Perhaps you're right. Closing this issue, will add another log statement about PIN being enabled so it's easy to identify later.