그래서 백그라운드에서 실행되는 서비스가 있습니다 (수퍼 비밀이기 때문에 내가 무엇인지 말할 수 없습니다 :)) 사용자가 전화를 걸거나 전화가 왔을 때 전화를 끌 수 있습니다. 지금까지 Intent.ACTION_ANSWER
을 확인했지만 어떤 이유로 내 브로드 캐스트 수신기가이를 감지하지 못했습니다. 나는 또한 PhoneStateListener
을 사용하려고했지만, 내 경우에는 내 진술로 내 서비스로 무엇을하는지 이해하지 못하고있다. 어떤 문맥에 PhoneStateListener
입니까? 내 BroadcastReceiver
에 대한전화가 걸려 올 때 및 사용자가 전화를 걸 때 서비스를 종료해야합니다.
일부 예제 코드 : 여기
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(Intent.ACTION_ANSWER)) {
phoneRinging = true;
}
Intent i = new Intent(context, MyService.class);
i.putExtra("phone", phoneRinging);
context.startService(i);
}
는 PhoneStateListener
를 통해 서비스를 시작하는 코드 조각입니다. 예 : startService(new Intent(---CONTEXT---, MySuperSecretService.class))
그리고 수신기는 매니페스트에 있습니다
<receiver android:name=".PhoneReceiver" android:enabled="true">
<intent-filter>
<action android:name="android.intent.action.ANSWER"></action>
</intent-filter>
</receiver>
WTH이 문에서 CONTEXT
부분으로 간다 나는 PhoneStateListener
에서 오전 있다면?