위치 공급자가 실제로 위치 정보를 조회하지 않고 위치 제공 업체가 사용 또는 사용 중지 될 때 알림을받을 수 있습니까 (그렇게하면 많은 전력이 사용 될 수 있기 때문에)?위치 제공 업체가 수신 대기/수신 중지되는 것을 수신하는 방법은 무엇입니까?
0
A
답변
0
Locationmanager.isProviderEnabled() 실제로 위치를 찾는 것이 필요하지 않은 것처럼 보입니다. 그것을 폴링 할 필요가 있기 때문에 너무 효율적이지는 않지만 실제 위치를 얻는 것보다 낫습니다.
실제로 주제에 대해 조금 더 읽으신다면 requestLocationUpdates()을 사용하실 수있을 것 같습니다. 공급자가 활성화 또는 비활성화되면 KEY_PROVIDER_ENABLED
번들이 전송됩니다. 알림의 최소 시간과 거리를 매우 높은 값으로 설정할 수 있습니다. 이 방법을 사용하면 한 번에 위치 통지를 받고 대부분은 활성화/비활성화 된 알림을 받게됩니다.
1
android에는 onProviderEnabled (String provider) 추상 메서드를 제공하는 LocationListener 인터페이스가 있습니다. 따라서 독자적인 리스너를 만들고 onProviderEnabled (String provider) 메서드를 구현해야합니다. 청취자는 위치 관리자에 등록해야합니다.
위에서 설명한 것과 동일하면 위치 공급자가 활성화되었을 때 onProviderEnabled (String provider)가 자동으로 호출됩니다.