2013-09-30 63 views
0

我有一个应用程序可以调用“帮助调用”。我希望当sombody接受电话时,电话会在后台运行。那么有没有办法让电话最小化,同时回到应用程序?如何以编程方式最小化电话通话?

+0

你可以试试,当你检测到电话开始 –

+0

感谢答复重新启动活动。你给我带来了一个想法,谢谢。 –

+0

@silvia_aut你可以请你发布你的解决方案,如果你有一个?基本上我想打个电话,隐藏来电屏幕,并提出我自己的任务,以便用户可以看到我的应用程序,并在同一时间在通话 – Pierre

回答

1

你可以尝试这样的事情

private class CallStateListener extends PhoneStateListener { 

    @Override 
    public void onCallStateChanged(int state, String incomingNumber) { 
     switch (state) { 
      case TelephonyManager.CALL_STATE_RINGING: { 
       break; 
      } 
      case TelephonyManager.CALL_STATE_OFFHOOK: { 
       try { 
        //THIS WILL SIMULATE A HOME BUTTON PRESS 
        //Effectively Minimizing the In Call Screen 
        Intent startMain = new Intent(Intent.ACTION_MAIN); 
        startMain.addCategory(Intent.CATEGORY_HOME); 
        startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
        activity.startActivity(startMain); 

        //Now that you are home, and your In Call Screen is minimized 
        //move back to your application 
       } catch (Exception e) { 
        e.printStackTrace(); 
       } 
       break; 
      } 
     } 
    } 
} 
+0

有人尝试过吗?我不确定它是否会最大限度地减少通话屏幕并将应用程序带回前台。 – UVT

+0

它的确如此,但是您还应该记住在Android 11之前和之后应该记住的一项检查。前面的解决方案适用于11和更高版本,但是这适用于10和更低版本,我有工作条件的解决方案。由我为此做的公司使用,我会看看我是否可以得到它 – Pierre

相关问题