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
parent d2879ad7e2
commit cfcd3eee6f
29 changed files with 748 additions and 240 deletions

View File

@ -3,6 +3,7 @@
// suixinkan
//
import SafariServices
import SnapKit
import UIKit
@ -212,10 +213,10 @@ final class LoginViewController: BaseViewController {
self?.showToast("注册待接入")
}
viewModel.onUserAgreement = { [weak self] in
self?.showToast("用户协议待接入")
self?.openAgreementURL(AppAgreementURLs.userAgreement)
}
viewModel.onPrivacyPolicy = { [weak self] in
self?.showToast("隐私政策待接入")
self?.openAgreementURL(AppAgreementURLs.privacyPolicy)
}
}
@ -345,6 +346,11 @@ final class LoginViewController: BaseViewController {
view.endEditing(true)
viewModel.onRegister?()
}
private func openAgreementURL(_ url: URL) {
let controller = SFSafariViewController(url: url)
present(controller, animated: true)
}
}
extension LoginViewController: UIGestureRecognizerDelegate {