【service】
路径:
frameworks/base/services/core/java/com/android/server/LocationManagerService.java
【manager】
路径:
frameworks/base/location/java/android/location/LocationManager.java
【native】
路径:
frameworks/base/services/core/jni/com_android_server_location_GnssLocationProvider.cpp
调用路径:
LocationManager::getProvider("gnss")
=>LocationManagerService::getProviderProperties("gnss")
=>GnssLocationProvider
=>native_inject_location
=>android::hardware::gnss::V1_1::IGnssCallback
android::hardware::gnss::V1_0::IGnss
注:
providerGPS_PROVIDER = "gps"
PASSIVE_PROVIDER = "passive"
FUSED_PROVIDER = "fused"
NETWORK_PROVIDER = "network"