[flutter] 如何防止GPS偽定位
在 Flutter 開發中,要防止 GPS 偽定位並確保應用程式獲取的地理位置是可信的,可以採取以下方法來符合 Android 和 iOS 的需求: 1. 啟用 Google Play Services 的「位置驗證」 適用於:Android Google 提供了「位置驗證 (Location Verification)」功能,可以偵測裝置的 GPS 是否受到軟體偽造攻擊。 你可以透過 FusedLocationProvider 的 setMockMode(false) 來防止應用程式接受模擬位置。 步驟 在 AndroidManifest.xml 加入權限: < uses-permission android:name = "android.permission.ACCESS_FINE_LOCATION" /> < uses-permission android:name = "android.permission.ACCESS_COARSE_LOCATION" /> 使用 locationSettingsRequest 來確保 GPS 設定正確: import 'package:geolocator/geolocator.dart'; Future<Position> getLocation() async { bool serviceEnabled; LocationPermission permission; // 檢查 GPS 是否開啟 serviceEnabled = await Geolocator.isLocationServiceEnabled(); if (!serviceEnabled) { return Future.error('位置服務未啟用'); } // 檢查權限 permission = await Geolocator.checkPermission(); if (permission == LocationPermission.denied) { permission = await Geolocator.requestPer...