2011-12-13 1 views
2

내가 다음걸려온 전화를 걸고 웹 서비스를 누르고 안드로이드의 "전화 받기 거부 패널"에 응답을 표시 하시겠습니까?

  1. 트랩을 할 것입니다 안드로이드 응용 프로그램을 만들려면/

    (IM 물어,이 단계가 SO에하지만 완전성을 위해 중복이있을 수 있습니다 알고 IM) 수신 전화 이벤트 수신
  2. 은 "/ 버튼을 거부받을 호출"인터넷

  3. 에서 몇 가지 정보를 얻을의 상단에 "경고 위젯"과 같은를 표시하는 웹 서비스 (HTTP의 POST를) 제어를 점거하고 히트 , 보통 우리가 접촉의 "얼굴"을 얻는 장소.

기본적인 질문은 안드로이드에 그런 앱을 개발하는 것이 가능합니까? 그렇다면 어떻게? 그 결과는 무엇입니까?

솔루션뿐만 아니라 최신 안드로이드 버전에서 작동한다

http://developer.android.com/reference/android/content/BroadcastReceiver.html 상태 (이후 2.3, 2.3는 안드로이드의 개인 전화 통신 API에 의존 월 애플 리케이션을 위반 논란이 패치를했다) 그,

에서 특히, BroadcastReceiver 내의 에있는 서비스에 대화 상자를 표시하거나 바인딩 할 수 없습니다. 이전 버전의 경우 NotificationManager API를 대신 사용해야합니다. 후자의 경우 Context.startService()를 사용하여 서비스에 명령을 보낼 수 있습니다.

답변

0

1)의 경우 당신은 BroadcastReceiver을 만들 수 있고,

TelephonyManager # ACTION_PHONE_STATE_CHANGED의 행동을들을 수 있습니다.

이것은 통화 이벤트를 처리합니다.

2) 부분은 웹 서비스에 HttpPost 동작을 수행하는 AsyncTask을 작성해야합니다. HttpPost 작업을 수행하는 방법에 대한 웹에서 사용할 수있는 자습서가 많이 있습니다.

이제 AsyncTask를 구현할 때마다 onPostExecute 메쏘드가 있습니다. 이 방법을 사용하면 경고 대화 상자를 사용하여 표시하는 세 번째 부분을 수행 할 수 있습니다.

+0

이 안드로이드 2.3에서 작동 하나

모든 최고의

건배, 희망은 도움 (최신) 이후? 개인용 전화 API에서 문제가되는 패치를 참조하는 SO 관련 논쟁과 기타 많은 자료를 통해 시스템 응용 프로그램 만 사용 가능한 유스 케이스에 액세스 할 수있게 되었습니까? –

+0

예, 올바른 Android 2.3에 특정 문제가 있습니다. 이 질문을 발견 : http://stackoverflow.com/questions/4715250/how-to-grant-modify-phone-state-permission-for-apps-ran-on-gingerbread. 하지만 어쨌든 Android 2.2에서 먼저 시도해보십시오. 그 때까지 문제가 해결됩니다. :) –

관련 문제