2011-08-01 4 views
2

Reto Meier (매우 유용한) Android 개발자 블로그 게시물 A Deep Dive into Location을 읽었을 때 "신선한"응용 프로그램을 유지하는 데 도움이되는 PassiveProvider 및 PendingIntents 사용에 관한 다음 문장을 읽었을 때 :앱 위치를 "신선함"으로 유지하기 위해 PassiveProvider 및 PendingIntents 사용하기

"앱이"종료 중 "이라는 개념 (일반적으로 사용자가 홈 화면에서 뒤로 버튼을 클릭 할 때)을 인식하는 경우 패시브 매니페스트 수신기 사용 중지 등 수동 위치 업데이트를 사용하지 않는 것이 좋습니다.

나는 안드로이드 커뮤니티에서 "좋은 시민"이되어야하는 애플 리케이션의 필요성을 알고 있지만, 이것도 패시브 공급자 및 펜딩 인텐트를 사용하여 위치의 신선도를 보장하는 목적을 무효화하지 않습니까? 내가 아는 바로는 수동 위치 업데이트를 사용 중지하면 앱이 해당 업데이트를 수신하지 못하게됩니다. 이 경우 사용자가 내 앱을 다시 시작하면 다른 위치 픽스를 기다려야하지 않을까요? getLastLocation()을 호출 할 수 있다는 것을 알고 있지만, 앱이 종료 될 때 PassiveProvider 및 PendingIntents가 명시 적으로 해제 할 때 신선도를 유지하는 데 어떻게 도움이되는지 궁금합니다.

답변

2

글쎄, 나는 대답은 그렇게 명확하지 않다 같아요

은 (내 말은 사용자에 대한) 안드로이드에서 응용 프로그램을 닫습니다 진짜 방법이 없습니다. 그러나 블로그는 주 앱 화면/활동 중에 뒤로 버튼을 누르면 실제로 앱을 종료하는 것을 의미한다고 가정합니다. 예를 들어, 이것은 돌고래가 뒤로 버튼에 부딪히는 방식에 반응하는 방식입니다.

사람들이이 버튼을 사용하면 앱을 종료하고 수동 위치 제공 업체 & 수신기를 포함하여 사용했던 모든 리소스를 닫을 수 있다고 가정 할 수 있습니다.

하지만 대부분 사람들은 메뉴 버튼을 누르고 앱에서 다른쪽으로 전환하여 모두 열어 둡니다. 이 경우 Reto가 자신의 게시물에 설명하는대로 앱을 계속 유지할 수 있도록 리시버를 제자리에 두십시오.

업데이트 :이 방법으로 버튼을 다시 사용하는 것은 공식적인 좋은 습관 인 것처럼 보이지만이 블로그는 매우 재미 있습니다 (http://www.androiduipatterns.com/2011/03/back-button-behavior.html).

감사합니다, 스테판

+0

감사합니다, 스테판. 그것은 내가 온 같은 결론이었습니다. 또한이 질문을 Google+에 게시하고 Reto Meier (원저자)의 답변을 받았습니다. https://plus.google.com/103220826965298676307/posts/Da3DqfNMsvG 링크가 있습니다. – adstro

+0

다행입니다. 레트로 역시 대답 해주었습니다. 나를 구글 플러스에 초대해 주시겠습니까? – Snicolas

관련 문제