2014-02-18 20 views
0

不切換回用戶已使用的模式。 我的意思是,當手機處於靜音狀態,並且我曾經爲某些選定的號碼響鈴,但不會在電話狀態空閒時切換回正常模式 。 這裏是我的一段代碼.........接收器類中的android音頻管理器

if(IncomingNumber.equals(WhitelistedNumbers)){ 
            am.setRingerMode(AudioManager.RINGER_MODE_NORMAL); 

           System.out.println("Number Matches......!"); 
           System.out.println("WhitelistedNumber(s): "+WhitelistedNumbers); 


           }else{ 
            System.out.println("No Match(s) found.....!"); 

           } 

,並使用........

case TelephonyManager.CALL_STATE_IDLE: 
       am.setRingerMode(AudioManager.RINGER_MODE_NORMAL); 

       System.out.println("Set to Default Ringer Mode....!");     
       break; 

由於切換回正常模式IM如果事先任何排序問題的建議........

回答

0

您需要將先前的振鈴器模式保存在變量中,然後從該變量中恢復它。

int previousMode; 
if(IncomingNumber.equals(WhitelistedNumbers)) 
{ 
    previousMode = am.getRingerMode(); 
    am.setRingerMode(AudioManager.RINGER_MODE_NORMAL); 
    .... 
} 

和恢復:

am.setRingerMode(previousMode); 
+0

不工作作爲我的TelephonyManager.CALL_STATE_IDLE:方法之前,要其「閒置狀態」之稱,是指在時間時手機響鈴狀態「因此」先前保存的模式「不起作用,如果它在通話結束後保持沉默還是保持沉默.....................該怎麼辦?????梅勒維德 –