Integrate Amap SDK to replace CoreLocation and MapKit for all location features.

Unify GPS, reverse geocoding, and map display behind LocationProvider with privacy-gated bootstrap after login, aligned with Android.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-07 11:49:22 +08:00
co-authored by Cursor
parent d2879ad7e2
commit cfcd3eee6f
29 changed files with 748 additions and 240 deletions
+12
View File
@@ -0,0 +1,12 @@
//
// AMapConfig.swift
// suixinkan
//
import Foundation
/// 高德地图 SDK 配置。
enum AMapConfig {
/// 高德开放平台 iOS Key,需与 Bundle ID `com.yuanzhixiang.suixinkan` 绑定。
nonisolated static let apiKey = "ea25441168468f39e276687dc94b8e7c"
}
+22
View File
@@ -0,0 +1,22 @@
//
// AppAgreementURLs.swift
// suixinkan
//
import Foundation
/// App 协议与隐私政策链接,对齐 Android `AgreementRoutes`。
enum AppAgreementURLs {
/// 隐私政策 H5 地址。
nonisolated static var privacyPolicy: URL {
APIEnvironment.current.baseURL.appending(path: "h5/app/privacy-policy")
}
/// 用户协议 H5 地址。
nonisolated static var userAgreement: URL {
APIEnvironment.current.baseURL.appending(path: "h5/app/user-agreement")
}
/// 高德地图开放平台隐私权政策。
nonisolated static let amapPrivacyPolicy = URL(string: "https://lbs.amap.com/pages/privacy/")!
}