【问题标题】:Trouble with reading phone state读取手机状态有问题
【发布时间】:2012-01-05 09:14:40
【问题描述】:

来电时,我想在我的应用程序中执行一些操作(暂停游戏)。但是读取手机状态不起作用。我已在清单中授予权限(READ_PHONE_STATE)。来电时什么也没有发生。 谢谢。

TelephonyManager telephonyManager;
PhoneStateListener listener;
telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
*
*
*
listener = new PhoneStateListener() {
        @Override
        public void onCallStateChanged(int state, String incomingNumber) {

        switch (state) {
        case TelephonyManager.CALL_STATE_IDLE:
            Toast.makeText(SudokuGameActivity.this, "IDLE", Toast.LENGTH_SHORT).show();
          break;
        case TelephonyManager.CALL_STATE_OFFHOOK:
         Toast.makeText(SudokuGameActivity.this, "OFF Hook", Toast.LENGTH_SHORT).show();
          break;
        case TelephonyManager.CALL_STATE_RINGING:
            Toast.makeText(SudokuGameActivity.this, "Ringing", Toast.LENGTH_SHORT).show();
            mpauseButton.performClick();
          break;
          }

        }
       };

【问题讨论】:

    标签: android telephonymanager


    【解决方案1】:

    你写过下面这行吗:

     telephonyManager.listen(listener,PhoneStateListener.LISTEN_CALL_STATE);
    

    【讨论】:

    【解决方案2】:

    当你的监听器创建完成后,你需要调用 `public void listen (PhoneStateListener listener, int events)' 来监听。

    另外,你可以试试这个: 创建一个广播接收器处理动作android.intent.action.PHONE_STATE

    代码示例:

    public class PhoneStateReceiver extends BroadcastReceiver {
    
    private TelephonyManager manager;
    
    @Override
    public void onReceive(Context context, Intent intent) {
        if (manager == null) {
            manager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
        }
        String action = intent.getAction();
        System.out.println(action);
        System.out.println("current phone state:" + manager.getCallState());
    }
    

    }

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-12-25
      • 2013-06-24
      • 1970-01-01
      • 1970-01-01
      • 2018-04-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多