Skip to content

Hotfix: Constructed lobby crash on Android 13 and older - #12547

Merged
Jetz72 merged 1 commit into
Card-Forge:masterfrom
MostCromulent:fix-android-stream-tolist
Oct 31, 2026
Merged

Jetz72 merged 1 commit into
Card-Forge:masterfrom
MostCromulent:fix-android-stream-tolist

Conversation

@MostCromulent

Copy link
Copy Markdown
Contributor

Summary

New Game opens the Constructed lobby again on Android 8 to 13.

Bug report

After updating, tapping New Game on Android does nothing. The other home screen buttons work. The log shows:

Caused by: java.lang.NoSuchMethodError: No interface method toList()Ljava/util/List; in class Ljava/util/stream/Stream; or its super classes
    at forge.deck.FormatChoices.<clinit>(FormatChoices.java:20)
    at forge.deck.FormatChoices.get(FormatChoices.java:30)
    at forge.screens.constructed.LobbyScreen.<init>(LobbyScreen.java:187)

Root cause

#12521 builds `FormatChoices.FORMAT_GAME_TYPES` with `Stream.toList()`, which was added in Java 16. Android's runtime only has that method from Android 14 (API 34), and the app's minimum is API 26. On older devices the class fails to load, so `LobbyScreen` can't be built. Desktop and CI run on a full JDK and do not catch it.

Fix

Collect the stream with Collectors.toList(), as other shared code does. No other code that Android runs calls Stream.toList().


🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@MostCromulent MostCromulent added BUG Something isn't working Android labels Oct 31, 2026
@MostCromulent MostCromulent changed the title Fix mobile Constructed lobby crash on Android 13 and older Hotfix: Constructed lobby crash on Android 13 and older Oct 31, 2026
@Jetz72
Jetz72 merged commit 9b31ac1 into Card-Forge:master Oct 31, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Android BUG Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants