마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

6.0버전 전화끊기 질문입니다.

0 추천

질문 올리신후, 답변이 달리면 따뜻한 감사 한마디와 채택 부탁드립니다.  

인사 한마디는 모든 사람들을 행복하게 만들어요. 덤으로 더좋은 좋은 답변도 불러옵니다.

-------------------------------------------------------------------------------------------------------------------------

6.0버전에서 전화종료 소스입니다.

else if (state == TelephonyManager.CALL_STATE_OFFHOOK) {
    Log.i("PhoneCallState", "ok");
    try{
        TelephonyManager tm = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
        Class<?> c = Class.forName(tm.getClass().getName());
        Method m = c.getDeclaredMethod("getITelephony");
        m.setAccessible(true);
        ITelephony telephonyService = (ITelephony) m.invoke(tm);
        telephonyService.endCall();
    }
    catch(Exception e)
    {
        e.printStackTrace();
    }
}
 
 
실제로 통화가 연결되면 로그까지 ok라고 찍는것까지 확인햇습니다.
근데 통화가 안끊어지네요 6.0버전은 따로 필요한 권한이나 그런게 잇나요?

 

익명사용자 님이 2016년 8월 10일 질문

1개의 답변

0 추천
해당 단말기에서 설정상에서 runtime 권한이 획득 되어 있는지 확인 하시고

제가 알기로 위처럼 AIDL을 이용하여 시스템 함수 호출할때 단말기마다 동작이 다를 수가 있는것으로 알고 있습니다.

1대에서만 하지 마시고 될수 있으면 여러대에 단말기로 확인해보세요.
Development Guy (70,570 포인트) 님이 2016년 8월 10일 답변
...