[GH-ISSUE #971] Android app crashes when "Sharing" to ntfy #679

Closed
opened 2026-05-07 00:26:32 +02:00 by BreizhHardware · 3 comments

Originally created by @wunter8 on GitHub (Dec 2, 2023).
Original GitHub issue: https://github.com/binwiederhier/ntfy/issues/971

Recently (for the last few months), when I try to "share" something to the ntfy app, it will crash. No message is displayed, but I see the persistent notification disappear and reappear. I finally grabbed the logs with logcat.

Here are the logs: https://nopaste.net/kHrJYijqjT

12-02 14:46:08.010 19977 19977 D CompatibilityChangeReporter: Compat change id reported: 171228096; UID 10263; state: ENABLED
12-02 14:46:08.045 19977 19977 I TextInputLayout: EditText added is not a TextInputEditText. Please switch to using that class instead.
12-02 14:46:08.048 19977 19977 D NtfyShareActivity: Create io.heckel.ntfy.ui.ShareActivity@396a302 with intent Intent { act=android.intent.action.SEND typ=text/plain flg=0x1b080001 cmp=io.heckel.ntfy/.ui.ShareActivity clip={text/uri-list hasLabel(0) {U(content)}} (has extras) }
12-02 14:46:08.049 19977 19977 D NtfyShareActivity: Shared content is text: https://www.youtube.com/
12-02 14:46:08.075 19977 19977 W RecyclerView: No adapter attached; skipping layout
12-02 14:46:08.095 19977 19977 W RecyclerView: No adapter attached; skipping layout
--------- beginning of crash
12-02 14:46:08.112 19977 20094 E AndroidRuntime: FATAL EXCEPTION: DefaultDispatcher-worker-3
12-02 14:46:08.112 19977 20094 E AndroidRuntime: Process: io.heckel.ntfy, PID: 19977
12-02 14:46:08.112 19977 20094 E AndroidRuntime: android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views. Expected: main Calling: DefaultDispatcher-worker-3
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at android.view.ViewRootImpl.checkThread(ViewRootImpl.java:9994)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at android.view.ViewRootImpl.requestLayout(ViewRootImpl.java:2082)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at android.view.View.requestLayout(View.java:27043)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at android.view.View.requestLayout(View.java:27043)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at android.view.View.requestLayout(View.java:27043)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at android.view.View.requestLayout(View.java:27043)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at android.view.View.requestLayout(View.java:27043)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at android.view.View.requestLayout(View.java:27043)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at android.widget.ScrollView.requestLayout(ScrollView.java:1744)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at android.view.View.requestLayout(View.java:27043)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at androidx.constraintlayout.widget.ConstraintLayout.requestLayout(ConstraintLayout.java:3605)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at android.view.View.requestLayout(View.java:27043)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at androidx.recyclerview.widget.RecyclerView.requestLayout(RecyclerView.java:4881)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at androidx.recyclerview.widget.RecyclerView.setAdapter(RecyclerView.java:1227)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at io.heckel.ntfy.ui.ShareActivity$onCreate$2.invokeSuspend(ShareActivity.kt:132)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:42)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:749)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
12-02 14:46:08.112 19977 20094 E AndroidRuntime:        Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@362a422, Dispatchers.IO]
12-02 14:46:08.128 19977 20094 I Process : Sending signal. PID: 19977 SIG: 9
12-02 14:46:09.227  4899  4899 I io.heckel.ntfy: Using CollectorTypeCC GC.
12-02 14:46:09.231  4899  4899 E io.heckel.ntfy: Not starting debugger since process cannot load the jdwp agent.
12-02 14:46:09.243  4899  4899 D CompatibilityChangeReporter: Compat change id reported: 171979766; UID 10263; state: ENABLED
12-02 14:46:09.243  4899  4899 D CompatibilityChangeReporter: Compat change id reported: 242716250; UID 10263; state: DISABLED
12-02 14:46:09.264  4899  4899 W ziparchive: Unable to open '/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/split_config.en.dm': No such file or directory
12-02 14:46:09.264  4899  4899 W ziparchive: Unable to open '/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/split_config.en.dm': No such file or directory
12-02 14:46:09.264  4899  4899 W io.heckel.ntfy: Entry not found
12-02 14:46:09.265  4899  4899 W ziparchive: Unable to open '/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/split_config.xxhdpi.dm': No such file or directory
12-02 14:46:09.265  4899  4899 W ziparchive: Unable to open '/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/split_config.xxhdpi.dm': No such file or directory
12-02 14:46:09.265  4899  4899 W io.heckel.ntfy: Entry not found
12-02 14:46:09.266  4899  4899 D nativeloader: Configuring clns-4 for other apk /data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/base.apk:/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/split_config.en.apk:/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/split_config.xxhdpi.apk. target_sdk_version=33, uses_libraries=, library_path=/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/lib/arm64, permitted_path=/data:/mnt/expand:/data/user/0/io.heckel.ntfy
12-02 14:46:09.280  4899  4899 V GraphicsEnvironment: Currently set values for:
12-02 14:46:09.280  4899  4899 V GraphicsEnvironment:   angle_gl_driver_selection_pkgs=[]
12-02 14:46:09.280  4899  4899 V GraphicsEnvironment:   angle_gl_driver_selection_values=[]
12-02 14:46:09.280  4899  4899 V GraphicsEnvironment: ANGLE GameManagerService for io.heckel.ntfy: false
12-02 14:46:09.280  4899  4899 V GraphicsEnvironment: io.heckel.ntfy is not listed in per-application setting
12-02 14:46:09.280  4899  4899 V GraphicsEnvironment: Neither updatable production driver nor prerelease driver is supported.
12-02 14:46:09.289  4899  4899 D CompatibilityChangeReporter: Compat change id reported: 183155436; UID 10263; state: ENABLED
12-02 14:46:09.289  4899  4899 I FirebaseApp: Device unlocked: initializing all Firebase APIs for app [DEFAULT]
12-02 14:46:09.295  4899  4899 I FirebaseInitProvider: FirebaseApp initialization successful
12-02 14:46:09.299  4899  4899 D WM-WrkMgrInitializer: Initializing WorkManager with default configuration.
12-02 14:46:09.318  4899  4899 D NtfySubscriberService: Subscriber service has been created
12-02 14:46:09.319  4899  4899 D CompatibilityChangeReporter: Compat change id reported: 160794467; UID 10263; state: ENABLED
12-02 14:46:09.330  4899  4899 D NtfyRepository: Created io.heckel.ntfy.db.Repository@653ea33
12-02 14:46:09.332  4899  4899 D NtfySubscriberService: onStartCommand executed with startId: 18
12-02 14:46:09.332  4899  4899 D NtfySubscriberService: with a null intent. It has been probably restarted by the system.
Originally created by @wunter8 on GitHub (Dec 2, 2023). Original GitHub issue: https://github.com/binwiederhier/ntfy/issues/971 Recently (for the last few months), when I try to "share" something to the ntfy app, it will crash. No message is displayed, but I see the persistent notification disappear and reappear. I finally grabbed the logs with logcat. Here are the logs: https://nopaste.net/kHrJYijqjT ``` 12-02 14:46:08.010 19977 19977 D CompatibilityChangeReporter: Compat change id reported: 171228096; UID 10263; state: ENABLED 12-02 14:46:08.045 19977 19977 I TextInputLayout: EditText added is not a TextInputEditText. Please switch to using that class instead. 12-02 14:46:08.048 19977 19977 D NtfyShareActivity: Create io.heckel.ntfy.ui.ShareActivity@396a302 with intent Intent { act=android.intent.action.SEND typ=text/plain flg=0x1b080001 cmp=io.heckel.ntfy/.ui.ShareActivity clip={text/uri-list hasLabel(0) {U(content)}} (has extras) } 12-02 14:46:08.049 19977 19977 D NtfyShareActivity: Shared content is text: https://www.youtube.com/ 12-02 14:46:08.075 19977 19977 W RecyclerView: No adapter attached; skipping layout 12-02 14:46:08.095 19977 19977 W RecyclerView: No adapter attached; skipping layout --------- beginning of crash 12-02 14:46:08.112 19977 20094 E AndroidRuntime: FATAL EXCEPTION: DefaultDispatcher-worker-3 12-02 14:46:08.112 19977 20094 E AndroidRuntime: Process: io.heckel.ntfy, PID: 19977 12-02 14:46:08.112 19977 20094 E AndroidRuntime: android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views. Expected: main Calling: DefaultDispatcher-worker-3 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at android.view.ViewRootImpl.checkThread(ViewRootImpl.java:9994) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at android.view.ViewRootImpl.requestLayout(ViewRootImpl.java:2082) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at android.view.View.requestLayout(View.java:27043) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at android.view.View.requestLayout(View.java:27043) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at android.view.View.requestLayout(View.java:27043) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at android.view.View.requestLayout(View.java:27043) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at android.view.View.requestLayout(View.java:27043) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at android.view.View.requestLayout(View.java:27043) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at android.widget.ScrollView.requestLayout(ScrollView.java:1744) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at android.view.View.requestLayout(View.java:27043) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at androidx.constraintlayout.widget.ConstraintLayout.requestLayout(ConstraintLayout.java:3605) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at android.view.View.requestLayout(View.java:27043) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView.requestLayout(RecyclerView.java:4881) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at androidx.recyclerview.widget.RecyclerView.setAdapter(RecyclerView.java:1227) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at io.heckel.ntfy.ui.ShareActivity$onCreate$2.invokeSuspend(ShareActivity.kt:132) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:42) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:749) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664) 12-02 14:46:08.112 19977 20094 E AndroidRuntime: Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@362a422, Dispatchers.IO] 12-02 14:46:08.128 19977 20094 I Process : Sending signal. PID: 19977 SIG: 9 12-02 14:46:09.227 4899 4899 I io.heckel.ntfy: Using CollectorTypeCC GC. 12-02 14:46:09.231 4899 4899 E io.heckel.ntfy: Not starting debugger since process cannot load the jdwp agent. 12-02 14:46:09.243 4899 4899 D CompatibilityChangeReporter: Compat change id reported: 171979766; UID 10263; state: ENABLED 12-02 14:46:09.243 4899 4899 D CompatibilityChangeReporter: Compat change id reported: 242716250; UID 10263; state: DISABLED 12-02 14:46:09.264 4899 4899 W ziparchive: Unable to open '/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/split_config.en.dm': No such file or directory 12-02 14:46:09.264 4899 4899 W ziparchive: Unable to open '/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/split_config.en.dm': No such file or directory 12-02 14:46:09.264 4899 4899 W io.heckel.ntfy: Entry not found 12-02 14:46:09.265 4899 4899 W ziparchive: Unable to open '/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/split_config.xxhdpi.dm': No such file or directory 12-02 14:46:09.265 4899 4899 W ziparchive: Unable to open '/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/split_config.xxhdpi.dm': No such file or directory 12-02 14:46:09.265 4899 4899 W io.heckel.ntfy: Entry not found 12-02 14:46:09.266 4899 4899 D nativeloader: Configuring clns-4 for other apk /data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/base.apk:/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/split_config.en.apk:/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/split_config.xxhdpi.apk. target_sdk_version=33, uses_libraries=, library_path=/data/app/~~PbFxMT58rSD1UmOVGTCpdg==/io.heckel.ntfy-g-P4JVQD5KOTesrTVil9ng==/lib/arm64, permitted_path=/data:/mnt/expand:/data/user/0/io.heckel.ntfy 12-02 14:46:09.280 4899 4899 V GraphicsEnvironment: Currently set values for: 12-02 14:46:09.280 4899 4899 V GraphicsEnvironment: angle_gl_driver_selection_pkgs=[] 12-02 14:46:09.280 4899 4899 V GraphicsEnvironment: angle_gl_driver_selection_values=[] 12-02 14:46:09.280 4899 4899 V GraphicsEnvironment: ANGLE GameManagerService for io.heckel.ntfy: false 12-02 14:46:09.280 4899 4899 V GraphicsEnvironment: io.heckel.ntfy is not listed in per-application setting 12-02 14:46:09.280 4899 4899 V GraphicsEnvironment: Neither updatable production driver nor prerelease driver is supported. 12-02 14:46:09.289 4899 4899 D CompatibilityChangeReporter: Compat change id reported: 183155436; UID 10263; state: ENABLED 12-02 14:46:09.289 4899 4899 I FirebaseApp: Device unlocked: initializing all Firebase APIs for app [DEFAULT] 12-02 14:46:09.295 4899 4899 I FirebaseInitProvider: FirebaseApp initialization successful 12-02 14:46:09.299 4899 4899 D WM-WrkMgrInitializer: Initializing WorkManager with default configuration. 12-02 14:46:09.318 4899 4899 D NtfySubscriberService: Subscriber service has been created 12-02 14:46:09.319 4899 4899 D CompatibilityChangeReporter: Compat change id reported: 160794467; UID 10263; state: ENABLED 12-02 14:46:09.330 4899 4899 D NtfyRepository: Created io.heckel.ntfy.db.Repository@653ea33 12-02 14:46:09.332 4899 4899 D NtfySubscriberService: onStartCommand executed with startId: 18 12-02 14:46:09.332 4899 4899 D NtfySubscriberService: with a null intent. It has been probably restarted by the system. ```
BreizhHardware 2026-05-07 00:26:32 +02:00
  • closed this issue
  • added the
    🪲 bug
    label
Author
Owner

@thiswillbeyourgithub commented on GitHub (Aug 13, 2024):

Same here on 1.16.0 but not systematically. And retrying a bunch of times usually works

<!-- gh-comment-id:2287231784 --> @thiswillbeyourgithub commented on GitHub (Aug 13, 2024): Same here on 1.16.0 but not systematically. And retrying a bunch of times usually works
Author
Owner

@GideonBear commented on GitHub (Jul 18, 2025):

I have this issue as well; usually when sharing, the app opens (on the share screen), then immediately closes. The second attempt to share works normally.

<!-- gh-comment-id:3089136439 --> @GideonBear commented on GitHub (Jul 18, 2025): I have this issue as well; usually when sharing, the app opens (on the share screen), then immediately closes. The second attempt to share works normally.
Author
Owner

@binwiederhier commented on GitHub (Jan 18, 2026):

This should be fixed in 1.22.x (next release),

<!-- gh-comment-id:3764623779 --> @binwiederhier commented on GitHub (Jan 18, 2026): This should be fixed in 1.22.x (next release),
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/ntfy#679
No description provided.