Skip to content

Commit 87bdf86

Browse files
persidskiygithub-actions[bot]
authored andcommitted
Merge pull request #2757 from mapbox/nb/maps-android-integration
Import Maps Android GitOrigin-RevId: 021c3a2d5d498894da637da1ac54c971b51ceefd
1 parent f2641c3 commit 87bdf86

File tree

125 files changed

+6392
-5635
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

125 files changed

+6392
-5635
lines changed

CHANGELOG.md

Lines changed: 1 addition & 95 deletions
Original file line numberDiff line numberDiff line change
@@ -3,109 +3,15 @@
33
Mapbox welcomes participation and contributions from everyone.
44

55
# main
6-
## Features ✨ and improvements 🏁
7-
* Expose `RenderThreadStatsRecorder` as experimental API.
8-
9-
10-
# 11.12.0-rc.1
11-
## Features ✨ and improvements 🏁
12-
* Avoid fetching pixelRatio from gl-native while rendering scalebar to improve CPU usage.
13-
* Promote `MapView.attribution.getMapAttributionDelegate().extraAttributions` to stable.
14-
15-
16-
# 11.12.0-beta.1 April 09, 2025
17-
18-
## Features ✨ and improvements 🏁
19-
* Introduce experimental `colorUseTheme` API for `AmbientLight`, `DirectionalLight`, and `FlatLight` to override color theme of light.
20-
* [compose] Introduce experimental `colorUseTheme` API for `AmbientLightState`, `DirectionalLightState`, and `FlatLightState` to override color theme of light.
21-
* [compose] Introduce experimental `vignetteColorUseTheme` and `colorUseTheme` for `RainState` and `SnowState` which allows overriding color theme of precipitations.
22-
* [compose] Annotate `rememberGeoJsonSourceState` as delicate API due to performance implications when used with large GeoJsonData.
23-
* Avoid dynamic view annotation overlapping given symbol layers.
24-
* Vector icons can now also be retrieved via `getStyleImage` API.
25-
* Revert changes to `at` expression and add new `at-interpolated` expression.
26-
* Enable tile pack v2 format by default.
27-
28-
## Bug fixes 🐞
29-
* Fix semi transparent landmark icons.
30-
* Return null for config expression if requested config option is missing.
31-
* Fix clipPath and mask rendering for vector icon rasterization.
32-
* Fix dotted lines on tile borders.
33-
* Fix pattern not found when using imports.
34-
* Fix line layer not rendering if using `line-pattern` inside an imported style.
35-
* Fix ground effect gradient not working with multiple polygons.
36-
* Add simple bounds check to avoid crash during centroid computation.
37-
* Fix invisible line when interpolating line-width from 0 to 1 using line-progress.
38-
* Tile loading speedup.
39-
* Fix URL migration to DB v10.
40-
41-
## Dependencies
42-
* Update gl-native to v11.12.0-beta.1 and common to v24.12.0-beta.1.
43-
44-
45-
# 11.11.0 March 26, 2025
46-
## Features ✨ and improvements 🏁
47-
* Support for landmark icons. Landmark icons are stylized, uniquely designed POI icons that indicate the most popular and recognizable landmarks on the map.
48-
* Support expression input for `PromoteId`.
49-
* Add a setting that allows geofencing users with Android <= 28 to access background locations. Add `mapbox-location-config.xml` file with the following content:
50-
```xml
51-
<resources>
52-
<bool name="com.mapbox.common.location.sdk28_use_background_permissions">true</bool>
53-
</resources>
54-
```
55-
* Add `Expression` support for `*UseTheme` style properties to override color theme for particular color properties in all layers.
56-
* Add experimental `*UseTheme` support for annotations and `LocationPuck3D`.
57-
* Introduce experimental `Style.setImportColorTheme`, which allows changing the color theme of the style import.
58-
* [compose] Introduce experimental `StyleImportState.styleColorTheme` which allows changing the color theme of the style import.
59-
* Conflate `MapboxMap.mapLoadedEvents`, `MapboxMap.mapLoadingErrorEvents`, `MapboxMap.styleLoadedEvents`, `MapboxMap.styleDataLoadedEvents`, `MapboxMap.cameraChangedEvents`, `MapboxMap.mapIdleEvents`, `MapboxMap.sourceAddedEvents`, `MapboxMap.sourceRemovedEvents`, `MapboxMap.sourceDataLoadedEvents`, `MapboxMap.styleImageMissingEvents`, `MapboxMap.styleImageRemoveUnusedEvents`, `MapboxMap.renderFrameStartedEvents`, `MapboxMap.renderFrameFinishedEvents`, `MapboxMap.resourceRequestEvents` by default to avoid blocking main thread due to slow collectors.
60-
61-
## Bug fixes 🐞
62-
* Fix annotation drag being triggered when multi-finger gesture is in progress.
63-
* Fix missing vector images after style change.
64-
* Ensure background color is correctly set.
65-
* Fix background layer not being updated if raster image was updated in-place or if color theme changed.
66-
* Trigger DVA replacement if zoom diff is big.
67-
* Fix line placement symbol disappearing issue when in zoom level 5.
68-
* Place view annotation away from camera when pitch > 45.
69-
* Fix dark shades of gradient effect in night preset.
70-
* Fix Custom Raster Source behavior on re-creation.
71-
* Change unreachable connection retries to use exponential backoff.
72-
* Fixed incorrect rgba to hsla conversion for white color.
73-
* Fix vector images rasterization.
74-
* Make katakana and CJK symbol rendered correctly in vertical writing mode.
75-
* Fix a bug that may cause style packs to be either inaccessible or incorrect when updating an older tile store database created with Maps SDK 11.9 or earlier versions. **In systems that have already used Maps SDK 11.10.0 through 11.10.2, a re-download of style packs may be necessary.**
76-
* Fix a map start time regression by speed up tile loading.
77-
78-
## Dependencies
79-
* Update gl-native to v11.11.0 and common to v24.11.0.
80-
81-
82-
83-
# 11.10.3 March 19, 2025
84-
## Bug fixes 🐞
85-
* Fix a bug that may cause style packs to be either inaccessible or incorrect when updating an older tile store database created with Maps SDK 11.9 or earlier versions. **In systems that have already used Maps SDK 11.10.0 through 11.10.2, a re-download of style packs may be necessary.**
86-
* Fix a map start time regression by speed up tile loading.
87-
88-
## Dependencies
89-
* Update gl-native to v11.10.3, common to v24.10.1.
906

91-
92-
# 11.11.0-rc.1 March 12, 2025
7+
# 11.11.0-rc.1
938
## Features ✨ and improvements 🏁
949
* Add `Expression` support for `*UseTheme` style properties to override color theme for particular color properties in all layers.
9510
* Add experimental `*UseTheme` support for annotations and `LocationPuck3D`.
9611
* Introduce experimental `Style.setImportColorTheme`, which allows changing the color theme of the style import.
9712
* [compose] Introduce experimental `StyleImportState.styleColorTheme` which allows changing the color theme of the style import.
9813
* Conflate `MapboxMap.mapLoadedEvents`, `MapboxMap.mapLoadingErrorEvents`, `MapboxMap.styleLoadedEvents`, `MapboxMap.styleDataLoadedEvents`, `MapboxMap.cameraChangedEvents`, `MapboxMap.mapIdleEvents`, `MapboxMap.sourceAddedEvents`, `MapboxMap.sourceRemovedEvents`, `MapboxMap.sourceDataLoadedEvents`, `MapboxMap.styleImageMissingEvents`, `MapboxMap.styleImageRemoveUnusedEvents`, `MapboxMap.renderFrameStartedEvents`, `MapboxMap.renderFrameFinishedEvents`, `MapboxMap.resourceRequestEvents` by default to avoid blocking main thread due to slow collectors.
9914

100-
## Bug fixes 🐞
101-
* Fixed incorrect rgba to hsla conversion for white color.
102-
* Fix vector images rasterization.
103-
* Make katakana and CJK symbol rendered correctly in vertical writing mode.
104-
105-
## Dependencies
106-
* Update gl-native to v11.11.0-rc.1 and common to v24.11.0-rc.1.
107-
108-
10915
# 11.11.0-beta.1 March 03, 2025
11016
## Features ✨ and improvements 🏁
11117
* Support expression input for `PromoteId`.

DEVELOPING.md

Lines changed: 10 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -498,36 +498,6 @@ There are 2 types of traces that could be enabled:
498498

499499
It is also possible to enable all the traces with `MapboxTracing.enableAll()`. Tracing could be disabled with `MapboxTracing.disableAll()`.
500500

501-
### Recording traces using Perfetto UI
502-
503-
The Perfetto Record settings can be edited when recording a new trace from [ui.perfetto.dev](https://ui.perfetto.dev/#!/record).
504-
We recommend to enable the following options in Perfetto and combine them with `MapboxTracing.enableAll()` enabled in application code:
505-
506-
In **GPU** section. Enable `GPU frequency`, `GPU memory` and `GPU work period`:
507-
508-
<img src="https://github.com/user-attachments/assets/7cc524c6-5253-4c33-a399-11a95d8f4315" width="400" height="300" alt="image">
509-
510-
511-
In **CPU** section.
512-
Enable `Coarse CPU usage counter`, `Scheduling details` and `CPU frequency and idle states` (with default `Poll interval`).
513-
Please make sure the “Syscalls” **is not** selected, otherwise the trace gets bloated with these records and becomes unreadable.
514-
515-
<img src="https://github.com/user-attachments/assets/2d6a29b1-3087-4501-998f-077db5038bce" width="400" height="300" alt="image">
516-
517-
518-
**Android apps & svcs**
519-
520-
Please make sure the “Atrace userspace annotations” is selected and “Record events from all Android apps and services” is enabled (it is also required to record the Mapbox trace annotations).
521-
522-
<img src="https://github.com/user-attachments/assets/f4978e0d-3165-4aa1-80e0-b747e7eda791" width="400" height="300" alt="image">
523-
524-
Please note that this UI auto-generates the corresponding command line instructions - “Cmdline instructions” section
525-
526-
<img src="https://github.com/user-attachments/assets/f55532df-fdff-4ba2-ac87-823deebfb1c0" width="400" height="300" alt="image">
527-
528-
Produced html file can be opened in https://ui.perfetto.dev viewer.
529-
530-
531501
### Recording traces using Android studio
532502

533503
There are several ways of capturing traces for Android which are described in [official documentation](https://developer.android.com/topic/performance/tracing). As a reference we will describe the steps of recording traces using Android Studio Profiler:
@@ -557,6 +527,16 @@ After we exported trace recording we could use [Perfetto](https://ui.perfetto.de
557527

558528
There are several other ways how to record traces.
559529

530+
#### From ui.perfetto.dev over WebUSB
531+
532+
<img width="240" alt="image" src="https://github.com/mapbox/mapbox-maps-android-internal/assets/1001009/ee1f1ff9-350a-436e-898a-8e0d05fae920">
533+
534+
Enable Atrace events (other optional probes can be enabled if needed).
535+
536+
<img width="70%" alt="image" src="https://github.com/mapbox/mapbox-maps-android-internal/assets/1001009/36cad2eb-9b0b-4545-ab4f-b3fb0cd5da7f">
537+
538+
After `stop recording` is pressed, trace will be visible in the UI.
539+
560540
#### Directly from the device (supported on Google Pixel devices)
561541

562542
<img src="https://github.com/mapbox/mapbox-maps-android-internal/assets/1001009/f81f3217-55a6-4d07-a6c1-b40842cc1d83" width="60%">

LICENSE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -482,7 +482,7 @@ License: [The Apache Software License, Version 2.0](http://www.apache.org/licens
482482

483483
===========================================================================
484484

485-
### MapboxCoreMaps,11.12.0-beta.1,Mapbox ToS,Mapbox,https://www.mapbox.com/
485+
### MapboxCoreMaps,11.11.0-beta.1,Mapbox ToS,Mapbox,https://www.mapbox.com/
486486

487487
```
488488
Mapbox Core Maps version 11.0

app/src/androidTest/java/com/mapbox/maps/testapp/annotation/generated/CircleAnnotationManagerAndroidTest.kt

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/src/androidTest/java/com/mapbox/maps/testapp/annotation/generated/PointAnnotationManagerAndroidTest.kt

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/src/androidTest/java/com/mapbox/maps/testapp/annotation/generated/PolygonAnnotationManagerAndroidTest.kt

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/src/androidTest/java/com/mapbox/maps/testapp/annotation/generated/PolylineAnnotationManagerAndroidTest.kt

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)