adb shell命令用于实时数据

时间:2016-06-01 17:09:00

标签: android shell mobile labview

我正在开发一个模块,我的被测设备将拨打特定手机号码。我已通过USB将该移动设备连接到本地PC(调试模式为ON)。我需要实时监控移动设备的状态,如Ringing,InCALL,Disconnected。是否有任何adb shell命令告诉Android手机的实时状态? 我需要在Labview应用程序中监视此状态,并根据状态振铃我想发送命令接受呼叫。 有人能建议自动化这个过程的最佳方法吗?

1 个答案:

答案 0 :(得分:0)

Android发送意图广播到手机中正在收听电话状态的应用程序 添加以下用户权限以接收电话状态 <uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>

编写接收服务以接收电话状态

<receiver android:name=".IncomingCall"> <intent-filter> <action android:name="android.intent.action.PHONE_STATE" /> </intent-filter> </receiver>

实施接收器

`public class IncommingCallReceiver扩展了BroadcastReceiver {
      上下文背景;

  @Override  
  public void onReceive(Context context, Intent intent){  
      try{  
       String state = intent.getStringExtra(TelephonyManager.EXTRA_STATE);  

          if(state.equals(TelephonyManager.EXTRA_STATE_RINGING)){  
               Toast.makeText(context, "Phone Is Ringing", Toast.LENGTH_LONG).show();  
          }  

          if(state.equals(TelephonyManager.EXTRA_STATE_OFFHOOK)){  
               Toast.makeText(context, "Call Recieved", Toast.LENGTH_LONG).show();  
          }  

          if (state.equals(TelephonyManager.EXTRA_STATE_IDLE)){  
               Toast.makeText(context, "Phone Is Idle", Toast.LENGTH_LONG).show();  
          }  
      }  
      catch(Exception e){e.printStackTrace();}  
  }  

}`

然后onReceive方法调用上面的函数你可以发送命令来接收。