2012-03-20 6 views
-2

나는 주어진 시간마다 응용 프로그램을 구축하려고하는데, 원격 서버에 연결하여 JSON 객체를 가져옵니다.android 서비스 업데이트 활동

웹을 검색 할 때 나는 정확히 어떻게 서비스를 설정하고 응용 프로그램이 실행되는 한 실행할 수 없었습니다.

내 main.xml 화면에 서비스에서 업데이트 될 TextView가 있어야합니다. 내가 안드로이드 개발 안돼서에로 -

내가 간단한 예제를 찾고 있어요 텍스트 뷰에 필요한 갱신 서비스 ..

을 구축하는 방법을 어디에서나 발견 할 수 없었다.

+0

당신은 이것에 관해서 google 할 수 있습니다. – Pavandroid

답변

1

아마도이 인스턴스의 서비스 대신 사용자가 찾아야 할 것은 AsyncTask입니다. 이것은 백그라운드에서 UI를 업데이트하고 주 스레드에서 너무 오래 걸리지 않도록 할 때 사용합니다. Here's one AsyncTask tutorial,here's Android SDK 개발자는이 문서에 대해 다음과 같이 설명합니다.

서버에서 JSON을 다운로드해야하는 경우 서비스가 좋은 해결책 일 수 있습니다. 서비스와 활동간에 앞뒤로 의사 소통하기 위해 Messenger and Handler 예제를 사용합니다. SDK에 포함 된 API 데모()에서 서비스 및 활동에 메신저/처리기 패턴을 사용하는 방법의 예를 찾을 수 있습니다. this SO 스레드도 관련이 있습니다.

서비스를 자주 실행해야하는 경우 AlarmManager를 사용하여 데이터를 가져 와서 어딘가에 저장 한 다음 활동의 표시를 새로 고치려면 앱). 그러나 기본적으로 몇 가지 물건을 빠르게 다운로드하고 Activity를 업데이트해야하는 경우 AsyncTask를 사용하여 장기적인 것이 필요하다면 서비스를 바인드 한 다음 Messenger/Handler 쌍 (또는 AIDL , 그러나 그것은 더 복잡합니다.)

+0

그래, 그래서 .. 읽었어요. SDK 예제에 대한 제 문제는 제가 이해하기에 너무 복잡하다는 것입니다. 아마 프로세스의 기본만을 보여주는 아주 간단한 튜토리얼을 안내 할 수 있습니까? –

+0

아, 그게 더 어렵습니다 ... 그것은 매우 복잡한 과정입니다. 단순한 함수 호출이 아닙니다. 대신에 당신은이 같은 것을 시도하기 전에 원격 프로 시저 호출/프로세스 간 통신이 무엇인지 읽어보아야 할 것입니다. –

+0

그건 물론 할거야 :) 내 서비스가 TextView 객체 안에 setText() 할 수있는 간단한 방법이 없습니까? something like : TextView text = (TextView) findViewById (R.id.text1); ? –