Android Kotlin error when app come back from background
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 15/100
- Issue-Typ
- Bug
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Veraltet
- Bereich
- mobile, networking
Rechercherichtung
The crash is a Kotlin null-check (Intrinsics.checkParameterIsNotNull, parameter code) inside the reporter's own PusherRepositoryImp$connect$1.onError, called from WebSocketConnection$5.run in the library's WebSocketConnection.java:238. Start by reading how the library's connection error callback passes its arguments, then check whether the reporter's onError signature declares a nullable code. The issue has no comments and no reproduction, so 'done' is not defined here and it would need a maintainer decision before any change.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
version pusher = "2.2.1"
version pusherNotifications = "1.6.2"
Hi...I have a ugly error when app come back from background....
When I detected that the app is going to background I do this
override fun closePrincipalChannelConnection() {
Log.d(TAG,"closePrincipalChannelConnection")
channel?.unbind("chat-message") {
Log.d(TAG,"onEvent")
}
channel?.unbind("new-follower") {
Log.d(TAG,"onEvent")
}
pusher?.unsubscribe(channelName)
}
Then when 5-10 pass and the app come back from background, I mean, now the app is in foreground, then call
override fun connectToGeneral(){
channelName = "presence-$profileId"
channel= pusher?.subscribePresence(channelName, object : PresenceChannelEventListener {
override fun onAuthenticationFailure(message: String, e: Exception) {
Log.d(TAG,String.format("Authentication failure due to [%s], exception was [%s]", message, e))
}
override fun onSubscriptionSucceeded(channelName: String?) {
Log.d(TAG,"onSubscriptionSucceeded$channelName")
}
override fun onEvent(event: PusherEvent?) {
Log.d(TAG,"onEvent"+event?.data)
}
override fun onUsersInformationReceived(channelName: String?, users: MutableSet<User>?) {
Log.d(TAG, "onUsersInformationReceived$channelName${users.toString()}")
}
override fun userUnsubscribed(channelName: String?, user: User?) {
Log.d(TAG, "userUnsubscribed$channelName${user.toString()}")
}
override fun userSubscribed(channelName: String?, user: User?) {
Log.d(TAG, "userSubscribed$channelName${user.toString()}")
}
})
channel?.bind("chat-message", object: PresenceChannelEventListener{
override fun onAuthenticationFailure(message: String?, e: java.lang.Exception?) {
Log.d(TAG,String.format("Authentication failure due to [%s], exception was [%s]", message, e))
}
override fun onUsersInformationReceived(channelName: String?, users: MutableSet<User>?) {
Log.d(TAG, "onUsersInformationReceived$channelName${users.toString()}")
}
override fun userUnsubscribed(channelName: String?, user: User?) {
Log.d(TAG, "userUnsubscribed$channelName${user.toString()}")
}
override fun userSubscribed(channelName: String?, user: User?) {
Log.d(TAG, "userSubscribed$channelName${user.toString()}")
}
override fun onEvent(event: PusherEvent?) {
Log.d(TAG,"onEvent"+event?.data)
logicTypeMessage(PusherEvents.EVENT_TYPE_MESSAGE,event?.data ?:"")
}
override fun onSubscriptionSucceeded(channelName: String?) {
Log.d(TAG,"onSubscriptionSucceeded$channelName")
}
})
channel?.bind("new-follower", object: PresenceChannelEventListener{
override fun onAuthenticationFailure(message: String?, e: java.lang.Exception?) {
Log.d(TAG,String.format("Authentication failure due to [%s], exception was [%s]", message, e))
}
override fun onUsersInformationReceived(channelName: String?, users: MutableSet<User>?) {
Log.d(TAG, "onUsersInformationReceived$channelName${users.toString()}")
}
override fun userUnsubscribed(channelName: String?, user: User?) {
Log.d(TAG, "userUnsubscribed$channelName${user.toString()}")
}
override fun userSubscribed(channelName: String?, user: User?) {
Log.d(TAG, "userSubscribed$channelName${user.toString()}")
}
override fun onEvent(event: PusherEvent?) {
Log.d(TAG,"onEvent"+event?.data)
logicTypeMessage(PusherEvents.EVENT_TYPE_CONNECTIONS,event?.data ?:"")
}
override fun onSubscriptionSucceeded(channelName: String?) {
Log.d(TAG,"onSubscriptionSucceeded$channelName")
}
})
}
The app crash whit the following message
Fatal Exception: java.lang.IllegalArgumentException
Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter code
com.xxx.repository.pusher.PusherRepositoryImp$connect$1.onError (Origen desconocido:7)
com.pusher.client.connection.websocket.WebSocketConnection$5.run (WebSocketConnection.java:238)
com.pusher.client.util.Factory$1.run (Factory.java:119)
java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1162)
java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:636)
java.lang.Thread.run (Thread.java:764)
whats wrong in my code??
thanks
- Vorherrschende Sprache
- Java
- Sterne
- 315
- Forks
- 140
- Ø Merge
- 10 T. 14 Std.
- Gemergte PRs (30 T.)
- 5
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Kein Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus pusher/pusher-websocket-java
-
java.lang.NoClassDefFoundError: com.pusher.client.Pusher$$ExternalSyntheticLambda0 on Android API 21-22 anywayEvtl. vergeben @Keith-wright hat das vor 10 Tagen übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 22/100
pusher/pusher-websocket-java#366 ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 15/100
pusher/pusher-websocket-java#340 · 3 Kommentare · 7 Reaktionen ·
-
Schwierigkeit 4/5 1-2 Tage Anfängerfreundlichkeit 8/100
pusher/pusher-websocket-java#311 · 4 Kommentare ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 12/100
pusher/pusher-websocket-java#308 · 2 Kommentare ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 18/100
pusher/pusher-websocket-java#303 · 4 Kommentare ·
Alle Issues in pusher/pusher-websocket-java
Ähnliche Issues
-
good first issue
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 90/100
authorjapps/zerocode#808 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
checkstyle/sonar-checkstyle#625 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
quarkusio/quarkus-agent-mcp#302 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
build
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
MetricsHub/metricshub-community#1472 ·
Maintainer antworten meist innerhalb von 1 Tag