2010-01-16 2 views
2

내 응용 프로그램에서 항상 gps를 실행해야하지만, 스레드가 활동 내부에있는 것처럼 던지거나 서비스를 작성한 다음 서비스에 넣어야하는지 잘 모르겠습니다. , 스레드를 던져스레드 또는 서비스

아무도 나를 도울 수 있습니까 ?? 고맙습니다!! 나는 내 응용 프로그램이 백그라운드로 이동합니다 그것이 작동하기 때문에 내 응용 프로그램이 작동하는 방법에 내 영어


내 대답 나던 거짓말 죄송합니다 :

P.D. 내 응용 프로그램이 어떻게 구성되어 있는지 설명하려고합니다. gps로 하나의 서비스를 시작하는 하나의 활동이 있고 GPS에서의 위치가 파일에있는 다른 위치와 비교됩니다. 조건이 참이면 멀티미디어 플레이어를 실행하는 다른 서비스를 시작합니다.

다른 응용 프로그램을보고 있거나 주머니에 장치가있는 경우 응용 프로그램을 계속 실행하고 싶습니다.

답변

0

좀 더 설명해 주시겠습니까? 우리는 귀하의 응용 프로그램이 무엇을해야하는지 알 필요가 있기 때문입니다. 앱이 항상 표시되고 스레드 또는 서비스가 필요하지 않은 경우 리스너를 구현하고 LocationManager에 등록해야합니다.

응용 프로그램을 백그라운드로 실행해야하는 경우 서비스를 구현해야합니다. 당신이 고려해야 할 필요가

0

두 가지 : GPS를 정보 만 응용 프로그램에 필요한 경우

  1. 는 어떤 풀 GPS 정보를 매 초마다 또는 설정 간격 스레드를 가지고있다. 이렇게하면 애플리케이션이 GPS에서 정보를 가져오고 서비스를 작성하여 상황을 복잡하게 만들지 않아도됩니다. 애플리케이션 내에서 스레드를 만들어 GPS 정보를 얻을 수 있도록 애플리케이션을 시작해야합니다.
  2. 이제 다른 응용 프로그램의 GPS 정보도 원한다고 가정 해 보겠습니다. 그런 다음 서비스를 사용하는 것이 좋습니다. 그런 식으로 다른 응용 프로그램은 GPS 정보를 얻고 응용 프로그램에서 사용할 수 있습니다. 물론, 모든 응용 프로그램이 서비스를 실행하여 GPS 정보를 얻을 수 있다는 것은 마술처럼 생깁니다. 응용 프로그램과 함께 다른 모든 응용 프로그램이 서비스와 상호 작용하는 방법을 알 수 있도록 코드를 작성하고 인터페이스를 제공해야합니다.

이제 응용 프로그램에서 스레드를 사용하는 것이 요구 사항을 충족하는 경우 더 빠르고 깔끔합니다. 그러나, 귀하의 응용 프로그램은 GPS 정보를 사용하기 전에 시작해야한다고 언급했듯이.

서비스를 사용하면 시작할 때 서비스를 실행할 수도 있습니다. 따라서 GPS를 시작하려면 응용 프로그램을 시작할 필요가 없습니다. 그러나, 필요한 경우를 제외하고는 응용 프로그램에서 스레드로 이동하십시오.

1

귀하의 애플리케이션이 어떻게 작동하는지에 대한 귀하의 답이 있다고 가정합니다. 홈 버튼이나 뒤로 버튼을 눌러 애플리케이션을 백그라운드로 밀고 난 후에도 GPS 데이터를 수신하려면 서비스의 라이프 사이클이 액티비티의 라이프 사이클과 다르므로 서비스에 있어야합니다.

GPS 데이터에만 응용 프로그램 내에서 필요하고 당신이 그것을 필요로하지 않는 경우 것들 응용 프로그램 스레드가 Kavitesh가 언급 한 것처럼 더 나은 옵션입니다 닫힙니다, 스레드가 훨씬 빠르고 쉽게 접근

있습니다
관련 문제