안녕하세요. 해결이 안되는 문제가 있어서,

혹시 아시는 분 계시면 조언 부탁드립니다.

 

제가 App에서 전화를 걸도록 만들었는데요,

callIntent.setData(Uri.parse("tel:"+CallNumber));

startActivity(callIntent); 를 하는 순간 저의 App이 뒤로 숨으면서 전화가 걸립니다.

저의 App이 Foreground로 유지되었으면 하는데요,

 

문의입니다.

1. 혹시 callIntent.addFlags(); 에 백그라운드로 전화가 걸리도록 하는 인자가 있느지요?

2. 만약 없다면, BroadcastReceiver를 통해서 TelephonyManager의 EXTRA_STATE가 OFFHOOK인 경우,

즉 전화를 걸고 있거나 통화가 된 경우, 현재 백그라운드로 들어간 저의 App을 포그라운드로 올릴 방법이 있나요?

 

2번의 경우, BroadcastReceiver에서 상태를 체크해서 통화가 된 경우,

Intent i = new Intent( context, MyActivity.class);
PendingIntent pi = PendingIntent.getActivity(context, REQ_CODE, i, PendingIntent.FLAG_UPDATE_CURRENT);
ps.send();

를 통해서 실행되고 있는 App을 띄워보려고 해봤는데 잘 안됩니다.

PendingIntent의 flag가 잘못된 것인지, requestCode를 넣을 경우, 실행되고 있는 App이 어떻게 받아야하는지...

아니면, 이도저도 아닌 다른 방법이 있는지 궁금해서 문의드립니다.

 

꼭 좀 조언 부탁드리겠습니다.

 

새해 복 많이 받으세요.