mapbox / mapbox/mapbox-maps-ios
Latest release crashes when used with Flutter
Nobody has claimed this yet.
- Dominant language
- Swift
- Stars
- 601
- Forks
- 196
- PR merge metrics
- No merged PRs in 30d
Description
Hello, I wanted to upgrade to the latest version of the flutter Mapbox package (which is now using the latest release from this repo) and noticed the app crashes instantly on startup using a **real** iPhone with iOS 18.4.
I had a look at the release notes which mentions:
```
Failing network requests on iOS Simulators running iOS 18.4 were mitigated by disabling TLS 1.3.
This is a [known issue](https://developer.apple.com/forums/thread/777999) in the iOS SDK. The fix applies exclusively to iOS Simulators and only for iOS 18.4.x versions.
The upcoming iOS 18.5 will have TLS 1.3 support enabled by default, as it did before iOS 18.4.
```
I understood it like that according to the release notes it _should_ only affect simulators but it looks like something is wrong and it has an impact on real devices, too. The previous release did not lead to this crash and the log from Xcode clearly indicates that the crash is related to this connection topic.
Just as a quick info for you, in case you did not notice this. Will use the previous release for now.
My Xcode logs:
```
nw_connection_copy_connected_remote_endpoint_block_invoke [C23] Client called nw_connection_copy_connected_remote_endpoint on unconnected nw_connection
nw_connection_copy_protocol_metadata_internal_block_invoke [C23] Client called nw_connection_copy_protocol_metadata_internal on unconnected nw_connection
nw_connection_copy_connected_local_endpoint_block_invoke [C27] Client called nw_connection_copy_connected_local_endpoint on unconnected nw_connection
nw_connection_copy_connected_remote_endpoint_block_invoke [C27] Client called nw_connection_copy_connected_remote_endpoint on unconnected nw_connection
nw_connection_copy_protocol_metadata_internal_block_invoke [C27] Client called nw_connection_copy_protocol_metadata_internal on unconnected nw_connection
nw_connection_copy_connected_local_endpoint_block_invoke [C29] Client called nw_connection_copy_connected_local_endpoint on unconnected nw_connection
nw_connection_copy_connected_remote_endpoint_block_invoke [C29] Client called nw_connection_copy_connected_remote_endpoint on unconnected nw_connection
nw_connection_copy_protocol_metadata_internal_block_invoke [C29] Client called nw_connection_copy_protocol_metadata_internal on unconnected nw_connection
FlutterSemanticsScrollView implements focusItemsInRect: - caching for linear focus movement is limited as long as this view is on screen.
nw_connection_add_timestamp_locked_on_nw_queue [C22] Hit maximum timestamp count, will start dropping events
FlutterSemanticsScrollView implements focusItemsInRect: - caching for linear focus movement is limited as long as this view is on screen.
FlutterSemanticsScrollView implements focusItemsInRect: - caching for linear focus movement is limited as long as this view is on screen.
tcp_input [C21.1.2.1:3] flags=[R] seq=462702309, ack=0, win=0 state=LAST_ACK rcv_nxt=462702309, snd_una=2239902046
tcp_input [C25.1.2.1:3] flags=[R] seq=3794108843, ack=0, win=0 state=LAST_ACK rcv_nxt=3794108843, snd_una=1206078594
tcp_input [C25.1.2.1:3] flags=[R] seq=3794108843, ack=0, win=0 state=CLOSED rcv_nxt=3794108843, snd_una=1206078594
tcp_input [C21.1.2.1:3] flags=[R] seq=462702309, ack=0, win=0 state=CLOSED rcv_nxt=462702309, snd_una=2239902046
tcp_input [C21.1.2.1:3] flags=[R] seq=462702309, ack=0, win=0 state=CLOSED rcv_nxt=462702309, snd_una=2239902046
tcp_input [C25.1.2.1:3] flags=[R] seq=3794108843, ack=0, win=0 state=CLOSED rcv_nxt=3794108843, snd_una=1206078594
Message from debugger: Terminated due to signal 9
```
Device: real iPhone 14 Pro Max
OS: iOS 18.4.1
MapBox iOS version: v11.12.0
Important hint: it seems to be fine when flutter runs in `debug` mode, but in actual `release` mode it crashes instantly as described.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the release notes for the TLS 1.3 change and the Mapbox iOS v11.12.0 behavior on a real iPhone running iOS 18.4.1, then compare Flutter debug and release modes. Reproduce the startup crash using the Xcode network logs; done means release mode no longer terminates on real devices while the simulator-specific behavior remains correct.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ios, swift
- Domain
- mobile, networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100