【问题标题】:android audio manager in receiver class接收器类中的android音频管理器
【发布时间】:2014-02-18 06:06:18
【问题描述】:

没有切换回用户使用的模式。 我的意思是当电话处于静音状态并且我曾经为某些选定的号码响铃但它没有 当手机处于空闲状态时切换回正常模式。 这是我的一段代码.........

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;

如果有任何解决问题的建议,请提前感谢......

【问题讨论】:

    标签: android telephonymanager android-audiomanager


    【解决方案1】:

    您需要将之前的铃声模式保存在一个变量中,然后从该变量中恢复它。

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

    并恢复:

    am.setRingerMode(previousMode);
    

    【讨论】:

    • 不作为我的 TelephonyManager.CALL_STATE_IDLE 工作:方法在进入其“空闲状态”之前被调用,意味着在电话处于振铃状态时”,因此“先前保存的模式”不起作用, 通话结束后它比保持沉默还要沉默...........怎么办?????????? @Merlevede跨度>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多