베가 R3 모델 (IM-A850S) 을 타겟 단말기로 영상통화기능을 수행하는 앱을 개발중에 있습니다.
다름이 아니라, 다른 기타 제조사의 모델에서는 상관없이 잘되는데
위 모델에서 안드로이드 영상통화 기능을 수행하는데
팬택 폰은 좀 이상하게 작동해서 질문 드려봅니다.
아래 소스 일부 기재합니다.
intent = new Intent("android.intent.action.CALL", Uri.parse("tel:****~~));
intent.putExtra("com.android.phone.extra.video", true);
이렇게 호출시에 다른 제조사의 모델들은 정상적으로 영상통화가 잘 걸립니다.
그런데 팬택 제품은 영상전화가 안되고 음성전화로 연결이 되더라구요.
그래서 폰에서 영상전화를 수행했을때의 log 를 비교해보니.
com.pantech.action.VT_CALL 이것을 intent 에서 수행하는것으로 판단하였습니다.
앱에서도 테스트 해보니 영상전화가 정상적으로 수행되었고요.
이때 또 다른 문제가 있는것이 , 상대방이 전화를 받으면 2-3초 후에 전화 연결이 끊어저벼립니다.
상대방 영상전화는 끊어지지 않었는데도, 팬택 폰은 전화가 끊어지는 루틴을 수행하게됩니다.
그래서 의문이 드는 점이..
아래와 같은 선언방식이 아닌 .
intent = new Intent("android.intent.action.CALL", Uri.parse("tel:****~~));
intent.putExtra("com.android.phone.extra.video", true);
intent = new Intent("com.pantech.action.VT_CALL", Uri.parse(uri)); -- 영상전화로 잘 연결됨
intent.putExtra("com.android.phone.extra.video", true); --> 이 부분도 다른것을 선언해줘야 하는것이 아닌가 생각되어져서요.
다른 제조사 (예 : 갤럭시4) 와 팬택 제품의 로그를 보면 .
-- 갤럭시 4 로그 --
I/ActivityManager( 918): START {act=android.intent.action.CALL dat=tel:xxxxxxxxxxx flg=0x10000000 cmp=com.android.phone/.OutgoingCallBroadcaster u=0} from pid 1268
-- 팬택 로그 --
I/ActivityManager( 918): START {act=com.pantech.action.VT_CALL dat=tel:xxxxxxxxxxx flg=0x10000000 cmp=com.pantech.app.vt/.gui.Vide
즉 , 위처럼
android.intent.action.CALL 이렇게 선언했던것을
com.pantech.action.VT_CALL 이렇게 바꿧을때 영상전화가 잘되는것을 본다면,
통화가 끊어지는 문제도 putExtra 에 넘기는 값이 com.android.phone.extra.video 이것이 아닌
다른것이 아닐까 생각되어지는데요.
아.. 또 다른 문제도 있긴하네요.
팬택 스마트폰은 영상 전화 시에 다른 화면이 위로 올라오게 되면
화면 자체가 꺼져버리는것 같더라구요.
다른 스마트폰은 안그러는데..
쩝.. 타겟폰을 바꿔야 하는건가.. ;;;
팬택 제조사 쪽에 문의는 해놓은 상태긴 한데 ,
이게 고객지원센터밖에 채널이 없어서 언제 답변 올지도 몰라
답답한 마음에 질문 드려봅니다.
혹시 팬택쪽 개발자 분이시나 , 이에 대한 정보 아시는 분 계실까요 ?
플랫폼 코드는 프로가드 같은 것이 걸리지 않고 단말에 들어가 있으니
/system/app 에 있는 파일을 전부 꺼내와 com.pantech.action.VT_CALL 로 grep 해서 검색되는 어플을 디컴파일 해 보시는게 어떻까 합니다.