答案 0 :(得分:3)
AFAIK还没有现成的解决方案来以独立于平台的方式访问Android和iOS上的位置。但理论上,您可以使用gomobile
工具制作单独的包,为每个平台生成绑定。
例如在Android上,你会使用类似的东西:
import "Java/android/content/Context"
import "Java/android/location/LocationManager"
locationManager := ctx.GetSystemService(Context.LOCATION_SERVICE)
// nil check omitted.
location := locationManager.GetLastKnownLocation(LocationManager.GPS_PROVIDER)
// nil check omitted.
lat := location.GetLatitude()
lng := location.GetLongitude()
ctx
是您在其中一个生命周期回调中收到的上下文(活动,服务等)。
您也可以使用其他提供商(网络,融合)。