从连接到Linux

时间:2017-09-25 19:21:09

标签: android linux adb

我正在尝试将一部Android手机连接到运行Nagios的Linux服务器,以便在其监控的系统发生故障时发送短信。

手机上的Android版本为7(未植根)。我在Linux计算机上安装了adb,手机通过USB线连接。

我尝试过使用以下代码:

adb shell am start -a android.intent.action.SENDTO -d sms:$mobile_number --es sms_body $sms_text --ez exit_on_sent true
adb shell input keyevent 22
adb shell input keyevent 66

一段时间以及它停止工作的某个地方工作正常。它键入了消息,我可以在手机的屏幕上看到但无法发送。

当我从命令行手动运行命令时,出现类似于:

的错误
  

"警告:活动未启动,其当前任务已被启用   前面"

我想知道是否有更好的方法从Linux计算机发送短信?如果需要,我可以在手机上安装合适的应用程序,我只需要一个可靠的方法。

1 个答案:

答案 0 :(得分:1)

有一个解决方案,但你必须创建自己的应用程序(非常非常简单)。

创建一个新应用并将此代码复制粘贴到MainActivity的onCreate()方法中:

if(getIntent()!=null && getIntent().getExtras()!=null){
    String number = getIntent().getStringExtra("number");
    String message = getIntent().getStringExtra("message");

    SmsManager manager = SmsManager.getDefault();
    manager.sendTextMessage(number, null, message, null, null);
}

在手机上构建并安装应用。然后你就可以这样做:

adb shell am start -n "com.example.your_app/.MainActivity" -e number XXXXXXXXXX -e message "Hello World !"