feat: Add multi-map support with Google, Baidu, and Gaode providers

- Implement MapProvider interface with Google, Baidu, Gaode map providers
- Support satellite and normal map types for all providers
- Add coordinate conversion (WGS84 to BD09/GCJ02)
- Add tab-based map type and provider switching UI
- Add map settings with default provider and type configuration
- Add location button widget
- Add webview-based Baidu and Gaode map HTML assets
This commit is contained in:
2026-05-24 12:45:06 +08:00
parent 15c5fb4dbd
commit 48fbf1564d
13 changed files with 752 additions and 32 deletions
@@ -139,6 +139,44 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="Default Map Provider" />
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="4dp">
<com.google.android.material.textfield.AutoCompleteTextView
android:id="@+id/tvDefaultMapProvider"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="none"
android:hint="Select Provider" />
</com.google.android.material.textfield.TextInputLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="Default Map Type" />
<com.google.android.material.textfield.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="4dp">
<com.google.android.material.textfield.AutoCompleteTextView
android:id="@+id/tvDefaultMapType"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="none"
android:hint="Select Map Type" />
</com.google.android.material.textfield.TextInputLayout>
</LinearLayout>
</com.google.android.material.card.MaterialCardView>