mirror of
http://galexander.org/git/simplesshd.git
synced 2024-12-22 05:58:06 +00:00
Made a pass over all the crashes I've got from the play developer console.
Made no headway on any of them, unfortunately.
This commit is contained in:
parent
77a9dba5ed
commit
308753ce71
8
NOTES
8
NOTES
@ -1303,6 +1303,8 @@ Also, it turns out to be trivial to honor the MY_PACKAGE_REPLACED
|
|||||||
(package upgrade) intent using the same receiver as BOOT_COMPLETED, which
|
(package upgrade) intent using the same receiver as BOOT_COMPLETED, which
|
||||||
is going to be great for people going forward.
|
is going to be great for people going forward.
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
I have been banging on the problem people have reported with
|
I have been banging on the problem people have reported with
|
||||||
"Non-matching signing type." with older versions of OpenSSH. I've been
|
"Non-matching signing type." with older versions of OpenSSH. I've been
|
||||||
told it's the OpenSSH 7.2p2 that ships stock with Ubuntu 16.04 and Mint
|
told it's the OpenSSH 7.2p2 that ships stock with Ubuntu 16.04 and Mint
|
||||||
@ -1329,6 +1331,12 @@ sense from grepping around the dropbear source:
|
|||||||
|
|
||||||
So confusion between those two sounds likely to me.
|
So confusion between those two sounds likely to me.
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
Triaged the crashes again. crash.20200109 is the only one that bothers
|
||||||
|
me. It will probably continue at a low incidence until I figure out
|
||||||
|
what's causing it.
|
||||||
|
|
||||||
|
|
||||||
XXX - crash.20200109
|
XXX - crash.20200109
|
||||||
XXX - on android 6 (duckling moto g2), the notification is white-on-white?
|
XXX - on android 6 (duckling moto g2), the notification is white-on-white?
|
||||||
|
@ -10,3 +10,56 @@ android.app.RemoteServiceException:
|
|||||||
at java.lang.reflect.Method.invoke (Native Method)
|
at java.lang.reflect.Method.invoke (Native Method)
|
||||||
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:516)
|
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:516)
|
||||||
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:950)
|
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:950)
|
||||||
|
|
||||||
|
|
||||||
|
2021/01/17 - confirmed this is still happening with version 26 of the
|
||||||
|
app, reported on Android 8.1 (SDK 27) and Android 10 (SDK 29).
|
||||||
|
|
||||||
|
https://stackoverflow.com/questions/51222082/why-do-i-get-remoteserviceexception-for-creating-updating-a-notification
|
||||||
|
suggests it has something to do with the Notification passed to
|
||||||
|
startForeground(), but their "workaround" was to only modify the
|
||||||
|
Notification from the Service thread, which we already do.
|
||||||
|
|
||||||
|
I could not reproduce it under the emulator with Android 8.1 and starting
|
||||||
|
the service is several different contexts, including using the START
|
||||||
|
broadcast after the app had been force stopped, or when the service had
|
||||||
|
started because the package had just been updated (UI not displayed yet).
|
||||||
|
I also tested launching the PendingIntent from those contexts.
|
||||||
|
|
||||||
|
Looking at ActivityThread.java that came with my SDK and it looks like
|
||||||
|
RemoteServiceException() is just called whenever handleMessage() is
|
||||||
|
passed a msg.what == SCHEDULE_CRASH, which is sent from
|
||||||
|
ApplicationThread.scheduleCrash(), which is called (indirectly) from:
|
||||||
|
ActivityStackSupervisor.PendingActivityLaunch.sendErrorResult()
|
||||||
|
... ultimately called when there's an exception during a
|
||||||
|
PendingIntent launch, with the string from that exception??
|
||||||
|
BroadcastQueue.performReceiveLocked() on a RemoteException with the
|
||||||
|
string "can't deliver broadcast"
|
||||||
|
ActivityManagerShellCommand.runCrash() with "shell-induced crash"
|
||||||
|
ServiceRecord.postNotification() with "Bad notification for startForeground:"
|
||||||
|
ActiveServices.serviceForegroundCrash() with
|
||||||
|
"Context.startForegroundService() did not then call
|
||||||
|
Service.startForeground():"
|
||||||
|
NativeCrashListener.NativeCrashReporter.run() but I'm not sure it
|
||||||
|
actually makes it into the same crashApplication() or not?
|
||||||
|
RuntimeInit.wtf() not sure where this error winds up either but
|
||||||
|
|
||||||
|
Most of those, I think, would be pretty good about putting a message
|
||||||
|
there so I'm not clear why no message is provided.
|
||||||
|
|
||||||
|
Googling some more:
|
||||||
|
https://github.com/commons-app/apps-android-commons/issues/1877
|
||||||
|
failed to set a NotificationChannel but I think I've already
|
||||||
|
crossed that bridge.
|
||||||
|
https://www.xspdf.com/resolution/50183960.html
|
||||||
|
the XML layout for their Notification specified a manual height for
|
||||||
|
the root element?? the outer element for mine is wrap_content, but
|
||||||
|
one of the contents is an ImageView with a manual size (60dp x
|
||||||
|
60dp) ?? (and many others at this URL) Could maybe be a problem
|
||||||
|
with the res/drawable for the notification icon?
|
||||||
|
|
||||||
|
Crashlytics would apparently provide more info -- I'm not clear why
|
||||||
|
Google's crash reporter isn't giving me the RemoteServiceException
|
||||||
|
message on its own though! But Crashlytics smells like bloatware to me
|
||||||
|
and from looking at the source (/usr/src/firebase-android-sdk), I didn't
|
||||||
|
immediately see how it could change the reporting of this sort of crash.
|
||||||
|
@ -7,3 +7,7 @@ pid: 0, tid: 0 >>> org.galexander.sshd <<<
|
|||||||
backtrace:
|
backtrace:
|
||||||
#00 pc 000000000001a6ac /system/lib/libc.so (abort+63)
|
#00 pc 000000000001a6ac /system/lib/libc.so (abort+63)
|
||||||
#01 pc 0000000000020c79 /system/lib/libc.so (sigprocmask+48)
|
#01 pc 0000000000020c79 /system/lib/libc.so (sigprocmask+48)
|
||||||
|
|
||||||
|
|
||||||
|
2021/01/17 - Looking at the play console today, this crash is not in the
|
||||||
|
last 60 days which is all it will show me. So I guess it's rare.
|
||||||
|
23
crash.20201123
Normal file
23
crash.20201123
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
java.lang.IllegalStateException:
|
||||||
|
at android.os.Parcel.createException (Parcel.java:1958)
|
||||||
|
at android.os.Parcel.readException (Parcel.java:1918)
|
||||||
|
at android.os.Parcel.readException (Parcel.java:1868)
|
||||||
|
at android.app.IActivityManager$Stub$Proxy.reportAssistContextExtras (IActivityManager.java:7107)
|
||||||
|
at android.app.ActivityThread.handleRequestAssistContextExtras (ActivityThread.java:3212)
|
||||||
|
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1764)
|
||||||
|
at android.os.Handler.dispatchMessage (Handler.java:106)
|
||||||
|
at android.os.Looper.loop (Looper.java:193)
|
||||||
|
at android.app.ActivityThread.main (ActivityThread.java:6669)
|
||||||
|
at java.lang.reflect.Method.invoke (Native Method)
|
||||||
|
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:493)
|
||||||
|
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:858)
|
||||||
|
Caused by: android.os.RemoteException:
|
||||||
|
at android.app.ContextImpl.startServiceCommon (ContextImpl.java:1577)
|
||||||
|
at android.app.ContextImpl.startServiceAsUser (ContextImpl.java:1549)
|
||||||
|
at com.android.server.am.ActivityManagerService.reportAssistContextExtras (ActivityManagerService.java:14185)
|
||||||
|
at android.app.IActivityManager$Stub.onTransact$reportAssistContextExtras$ (IActivityManager.java:10882)
|
||||||
|
at android.app.IActivityManager$Stub.onTransact (IActivityManager.java:1953)
|
||||||
|
|
||||||
|
|
||||||
|
2021/01/17 - reported exactly once on an unknown Android 9 device with
|
||||||
|
version 24 of SimpleSSHD. A mystery I will leave unless it recurs.
|
33
crash.20201225
Normal file
33
crash.20201225
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
java.lang.UnsatisfiedLinkError:
|
||||||
|
at java.lang.Runtime.loadLibrary0 (Runtime.java:1016)
|
||||||
|
at java.lang.System.loadLibrary (System.java:1669)
|
||||||
|
at org.galexander.sshd.SimpleSSHDService.<clinit> (SimpleSSHDService.java:185)
|
||||||
|
at org.galexander.sshd.SimpleSSHDService.is_started (SimpleSSHDService.java:86)
|
||||||
|
at org.galexander.sshd.SimpleSSHD.update_startstop_prime (SimpleSSHD.java:107)
|
||||||
|
at org.galexander.sshd.SimpleSSHD.onResume (SimpleSSHD.java:49)
|
||||||
|
at android.app.Instrumentation.callActivityOnResume (Instrumentation.java:1412)
|
||||||
|
at android.app.Activity.performResume (Activity.java:7302)
|
||||||
|
at android.app.ActivityThread.performResumeActivity (ActivityThread.java:3776)
|
||||||
|
at android.app.ActivityThread.handleResumeActivity (ActivityThread.java:3816)
|
||||||
|
at android.app.servertransaction.ResumeActivityItem.execute (ResumeActivityItem.java:51)
|
||||||
|
at android.app.servertransaction.TransactionExecutor.executeLifecycleState (TransactionExecutor.java:145)
|
||||||
|
at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:70)
|
||||||
|
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1808)
|
||||||
|
at android.os.Handler.dispatchMessage (Handler.java:106)
|
||||||
|
at android.os.Looper.loop (Looper.java:193)
|
||||||
|
at android.app.ActivityThread.main (ActivityThread.java:6669)
|
||||||
|
at java.lang.reflect.Method.invoke (Native Method)
|
||||||
|
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:518)
|
||||||
|
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:858)
|
||||||
|
|
||||||
|
|
||||||
|
2021/01/17 - This has been reported from two different users, both on
|
||||||
|
OnePlus3 phone running Android 9. It was reported both with version 16
|
||||||
|
and 24 of SimpleSSHD. It seems to be from where SimpleSSHDService tries
|
||||||
|
to load simplesshd-jni, which is the core JNI for the whole thing and the
|
||||||
|
only one that is linked in the normal way. It is a normal processor
|
||||||
|
(snapdragon 820).
|
||||||
|
|
||||||
|
Since it's just the one kind of phone, I think I'm gonna ignore it. It's
|
||||||
|
probably some problem with how libc or JNI library is linked, but I can't
|
||||||
|
imagine what that problem is.
|
@ -170,6 +170,10 @@ or later if <b>Settings</b> -> <b>Foreground Service</b> is enabled.</p>
|
|||||||
<p>You may need to specify <tt>--user 0</tt> depending on the context:
|
<p>You may need to specify <tt>--user 0</tt> depending on the context:
|
||||||
<pre>am broadcast --user 0 -a org.galexander.sshd.START org.galexander.sshd</pre></p>
|
<pre>am broadcast --user 0 -a org.galexander.sshd.START org.galexander.sshd</pre></p>
|
||||||
|
|
||||||
|
<p>And if Android is ignoring your broadcasts because the app was never started yet (or was force stopped), you may try (it's all arbitrary to me!):
|
||||||
|
<pre>am broadcast --user 0 -a org.galexander.sshd.START org.galexander.sshd/.StartReceiver</pre></p>
|
||||||
|
|
||||||
|
|
||||||
<p>If you are getting an error from <tt>am</tt> like:
|
<p>If you are getting an error from <tt>am</tt> like:
|
||||||
<pre>cmd: Failure calling service activity: Failed transaction (2147483646)</pre>
|
<pre>cmd: Failure calling service activity: Failed transaction (2147483646)</pre>
|
||||||
it can probably be solved by disassociating <tt>am</tt> from the ssh
|
it can probably be solved by disassociating <tt>am</tt> from the ssh
|
||||||
|
Loading…
Reference in New Issue
Block a user