[Galaxy S III I9305 (4G LTE + 2GB RAM) Android Deve] MrWasdennnoch:
I noticed that the phone occassionally hangs when an app crashes, this could also be the cause for the blackscreen issues; I've discovered this with the SystemUI and a translator app so far (UI had MethodNotFoundException (Xposed) and the translator had an NPE).

I also wrote a simple test app that throws an exception on a button press and I could reproduce it. It only works occassionally though.

After the crash the phone freezes and doesn't react to input events anymore until it reboots at some point. You can still press the power button to disable the screen.

The logcat revealed that the system process hangs and gets killed by the Watchdog after some time. I don't know if this helps, but here's the Watchdog log:

06-02 18:33:24.310 3519-5639/? W/Watchdog: *** WATCHDOG KILLING SYSTEM PROCESS: Blocked in monitor com.android.server.am.ActivityManagerService on foreground thread (android.fg), Blocked in handler on main thread (main), Blocked in handler on ui thread (android.ui), Blocked in handler on ActivityManager (ActivityManager)
06-02 18:33:24.310 3519-5639/? W/Watchdog: foreground thread stack trace:
06-02 18:33:24.310 3519-5639/? W/Watchdog: at com.android.server.am.ActivityManagerService.monitor(ActivityManagerService.java:20227)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at com.android.server.Watchdog$HandlerChecker.run(Watchdog.java:175)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at android.os.Handler.handleCallback(Handler.java:739)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at android.os.Handler.dispatchMessage(Handler.java:95)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at android.os.Looper.loop(Looper.java:148)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at android.os.HandlerThread.run(HandlerThread.java:61)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at com.android.server.ServiceThread.run(ServiceThread.java:46)
06-02 18:33:24.310 3519-5639/? W/Watchdog: main thread stack trace:
06-02 18:33:24.310 3519-5639/? W/Watchdog: at com.android.server.am.ActivityManagerService.broadcastIntent(ActivityManagerService.java:17389)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at android.app.ContextImpl.sendBroadcastAsUser(ContextImpl.java:959)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at android.app.ContextImpl.sendBroadcastAsUser(ContextImpl.java:948)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at com.android.server.DropBoxManagerService$3.handleMessage(DropBoxManagerService.java:162)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at android.os.Handler.dispatchMessage(Handler.java:102)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at android.os.Looper.loop(Looper.java:148)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at com.android.server.SystemServer.run(SystemServer.java:301)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at com.android.server.SystemServer.main(SystemServer.java:173)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at java.lang.reflect.Method.invoke(Native Method)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
06-02 18:33:24.310 3519-5639/? W/Watchdog: at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:134)
06-02 18:33:24.315 3519-5639/? W/Watchdog: ui thread stack trace:
06-02 18:33:24.315 3519-5639/? W/Watchdog: at java.lang.Object.wait(Native Method)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at com.android.server.am.ActivityManagerService.getContentProviderImpl(ActivityManagerService.java:10116)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at com.android.server.am.ActivityManagerService.getContentProvider(ActivityManagerService.java:10140)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at android.app.ActivityThread.acquireProvider(ActivityThread.java:4832)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at android.app.ContextImpl$ApplicationContentResolver.acquireUnstableProvider(ContextImpl.java:2060)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at android.content.ContentResolver.acquireUnstableProvider(ContentResolver.java:1473)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at android.content.ContentResolver.query(ContentResolver.java:477)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at de.robv.android.xposed.XposedBridge.invokeOriginalMethodNative(Native Method)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at de.robv.android.xposed.XposedBridge.handleHookedMethod(XposedBridge.java:738)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at android.content.ContentResolver.query(<Xposed>)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at android.content.ContentResolver.query(ContentResolver.java:435)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at de.robv.android.xposed.XposedBridge.invokeOriginalMethodNative(Native Method)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at de.robv.android.xposed.XposedBridge.handleHookedMethod(XposedBridge.java:738)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at android.content.ContentResolver.query(<Xposed>)
06-02 18:33:24.315 3519-5639/? W/Watchdog: at net.fypm.InstallerOpt.MultiprocessPreferences$MultiprocessSharedPreferences.getBoolean(MultiprocessPreferences.java:297)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at net.fypm.InstallerOpt.Main.getPref(Main.java:1034)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at net.fypm.InstallerOpt.Main$11.beforeHookedMethod(Main.java:573)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at de.robv.android.xposed.XposedBridge.handleHookedMethod(XposedBridge.java:718)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at com.android.server.am.AppErrorDialog.<init>(<Xposed>)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at com.android.server.am.ActivityManagerService$UiHandler.handleMessage(ActivityManagerService.java:1489)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at android.os.Handler.dispatchMessage(Handler.java:102)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at android.os.Looper.loop(Looper.java:148)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at android.os.HandlerThread.run(HandlerThread.java:61)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at com.android.server.ServiceThread.run(ServiceThread.java:46)
06-02 18:33:24.320 3519-5639/? W/Watchdog: ActivityManager stack trace:
06-02 18:33:24.320 3519-5639/? W/Watchdog: at com.android.server.am.ActivityStack$ActivityStackHandler.handleMessage(ActivityStack.java:296)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at android.os.Handler.dispatchMessage(Handler.java:102)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at android.os.Looper.loop(Looper.java:148)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at android.os.HandlerThread.run(HandlerThread.java:61)
06-02 18:33:24.320 3519-5639/? W/Watchdog: at com.android.server.ServiceThread.run(ServiceThread.java:46)
06-02 18:33:24.320 3519-5639/? W/Watchdog: *** GOODBYE!

And this is the logcat from directly after the crash until the Watchdog kills the system server:

(Crash stack trace...)
06-03 22:49:56.541 17401-17401/? D/WearableService: callingUid 10014, callindPid: 17401
06-03 22:49:56.551 14620-16393/? W/ActivityManager: Force finishing activity tk.wasdennnoch.androidn_ify/.SettingsAlias
06-03 22:49:56.556 14620-17852/? W/DropBoxManagerService: Dropping: data_app_crash (2727 > 0 bytes)
06-03 22:49:56.646 17786-17786/? W/Settings: Setting airplane_mode_on has moved from android.provider.Settings.System to android.provider.Settings.Global, returning read-only value.
06-03 22:49:56.856 14620-16393/? I/WindowManager: Screenshot max retries 4 of Token{3e284b8 ActivityRecord{da2eb1b u0 tk.wasdennnoch.androidn_ify/.SettingsAlias t2114 f}} appWin=Window{cc23285 u0 Starting tk.wasdennnoch.androidn_ify} drawState=4
06-03 22:49:56.856 14620-16606/? W/art: Long monitor contention event with owner method=void com.android.server.am.ActivityManagerService.crashApplication(com.android.server.am.ProcessRecord, android.app.ApplicationErrorReport$CrashInfo) from ActivityManagerService.java:12942 waiters=0 for 315ms
06-03 22:49:56.861 14620-14620/? W/art: Long monitor contention event with owner method=void com.android.server.am.ActivityManagerService.crashApplication(com.android.server.am.ProcessRecord, android.app.ApplicationErrorReport$CrashInfo) from ActivityManagerService.java:12942 waiters=1 for 303ms
06-03 22:49:56.881 14620-16589/? W/art: Long monitor contention event with owner method=void com.android.server.am.ActivityManagerService.crashApplication(com.android.server.am.ProcessRecord, android.app.ApplicationErrorReport$CrashInfo) from ActivityManagerService.java:12942 waiters=3 for 229ms
06-03 22:49:56.946 17840-17840/? W/System: ClassLoader referenced unknown path: /data/app/io.github.mthli.Cracker-1/lib/arm
06-03 22:49:57.021 14620-14639/? I/ActivityManager: Start proc 17864:net.fypm.InstallerOpt/u0a49 for content provider net.fypm.InstallerOpt/.MultiprocessPreferences
06-03 22:49:57.041 17864-17864/? I/art: Late-enabling -Xcheck:jni
06-03 22:49:57.096 16485-16485/? V/Debugg: hour: 22
06-03 22:49:57.106 14620-14633/? W/InputMethodManagerService: Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@8df5765 attribute=null, token = android.os.BinderProxy@432cef3
06-03 22:49:57.106 17840-17840/? W/XPrivacy: Hooking package=io.github.mthli.Cracker
06-03 22:49:57.586 16600-17008/? W/OpenGLRenderer: Incorrectly called buildLayer on View: CellLayout, destroying layer...
06-03 22:49:58.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:49:59.971 17881-17881/? A/libc: page record for 0x403c700c was not found (block_size=64)
06-03 22:50:01.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:02.976 14790-14790/? D/PhoneStatusBar: disable: < expand ICONS* alerts SYSTEM_INFO* back home recent clock search quick_settings >
06-03 22:50:04.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:05.021 17885-17885/? A/libc: page record for 0x4056100c was not found (block_size=64)
06-03 22:50:07.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:07.226 14620-17071/? D/NetlinkSocketObserver: NeighborEvent{elapsedMs=26371755, 192.168.178.1, [5C497979F64C], RTM_NEWNEIGH, NUD_STALE}
06-03 22:50:08.421 14620-14742/? D/WifiStateMachine: starting scan for "VattasW"-WPA_PSK with 2437
06-03 22:50:10.071 17888-17888/? A/libc: page record for 0x4060400c was not found (block_size=64)
06-03 22:50:10.221 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:13.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:13.386 13703-14590/? E/NetlinkEvent: NetlinkEvent::FindParam(): Parameter 'UID' not found
06-03 22:50:15.116 17894-17894/? A/libc: page record for 0x405ed00c was not found (block_size=64)
06-03 22:50:16.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:19.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:20.171 17897-17897/? A/libc: page record for 0x4062b00c was not found (block_size=64)
06-03 22:50:22.221 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:25.206 17902-17902/? A/libc: page record for 0x4067800c was not found (block_size=64)
06-03 22:50:25.221 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:26.636 3022-3057/? I/KLog.INFO: [3022-3052] [alone] 当前版本:4691468
06-03 22:50:28.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:28.421 14620-14742/? D/WifiStateMachine: starting scan for "VattasW"-WPA_PSK with 2437
06-03 22:50:30.251 17906-17906/? A/libc: page record for 0x4060900c was not found (block_size=64)
06-03 22:50:31.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:34.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:35.316 17909-17909/? A/libc: page record for 0x4045600c was not found (block_size=64)
06-03 22:50:35.606 14620-16407/? I/Process: Sending signal. PID: 14620 SIG: 3
06-03 22:50:35.611 14620-14625/? I/art: Thread[2,tid=14625,WaitingInMainSignalCatcherLoop,Thread*=0x4000bd30,peer=0x12c010a0,"Signal Catcher"]: reacting to signal 3
06-03 22:50:36.251 14620-14715/? E/Sensors: poll() failed (Interrupted system call)
06-03 22:50:37.221 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:37.931 14620-14625/? I/art: Wrote stack traces to '/data/anr/traces.txt'
06-03 22:50:38.521 2299-2299/? I/perfprofd: profile collection skipped (missing semaphore file)
06-03 22:50:40.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:40.371 17916-17916/? A/libc: page record for 0x4046a00c was not found (block_size=64)
06-03 22:50:43.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:43.831 13703-14590/? E/NetlinkEvent: NetlinkEvent::FindParam(): Parameter 'UID' not found
06-03 22:50:45.421 17920-17920/? A/libc: page record for 0x403fe00c was not found (block_size=64)
06-03 22:50:46.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:49.221 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:50.466 17923-17923/? A/libc: page record for 0x404a300c was not found (block_size=64)
06-03 22:50:52.221 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:54.531 17928-17928/? A/libc: page record for 0x404a800c was not found (block_size=64)
06-03 22:50:55.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:58.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:50:59.591 17931-17931/? A/libc: page record for 0x4060300c was not found (block_size=64)
06-03 22:51:01.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:51:04.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:51:04.636 17935-17935/? A/libc: page record for 0x405c700c was not found (block_size=64)
06-03 22:51:07.226 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:51:09.696 17938-17938/? A/libc: page record for 0x402d800c was not found (block_size=64)
06-03 22:51:09.821 14620-16407/? I/Process: Sending signal. PID: 14620 SIG: 3
06-03 22:51:09.826 14620-14625/? I/art: Thread[2,tid=14625,WaitingInMainSignalCatcherLoop,Thread*=0x4000bd30,peer=0x12c010a0,"Signal Catcher"]: reacting to signal 3
06-03 22:51:10.231 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:51:10.411 14620-14715/? E/Sensors: poll() failed (Interrupted system call)
06-03 22:51:11.996 14620-16407/? I/Process: Sending signal. PID: 16582 SIG: 3
06-03 22:51:11.996 16582-16592/? I/art: Thread[2,tid=16592,WaitingInMainSignalCatcherLoop,Thread*=0x4000bd30,peer=0x12c4e0a0,"Signal Catcher"]: reacting to signal 3
06-03 22:51:12.021 14620-14625/? I/art: Wrote stack traces to '/data/anr/traces.txt'
06-03 22:51:12.881 16582-16592/? I/art: Wrote stack traces to '/data/anr/traces.txt'
06-03 22:51:13.221 3095-3116/? E/NONXPOSED_NOTIFYING_SERVICE: XPOSED RUNNING, BUG REPORTS ARE USELESS!!!!
06-03 22:51:13.386 13703-14590/? E/NetlinkEvent: NetlinkEvent::FindParam(): Parameter 'UID' not found
06-03 22:51:14.736 17946-17946/? A/libc: page record for 0x4059c00c was not found (block_size=64)
06-03 22:51:15.786 14620-16407/? I/Watchdog_N: dumpKernelStacks
06-03 22:51:15.911 14620-17949/? W/DropBoxManagerService: Dropping: system_server_watchdog (10 > 0 bytes)
06-03 22:51:15.911 14620-16407/? E/Watchdog: Triggering SysRq for system_server watchdog
(Watchdog kill...)