2017-09-25 25 views
0

Nagiosを実行しているLinuxサーバーに接続されているAndroid端末を取得して、監視中のシステムがダウンしたときにSMSを送信しようとしています。Linuxに接続されたAndroid携帯からSMSを送信

携帯電話の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コンピュータからSMSを送る良い方法があるのだろうかと思っていましたか?私は必要に応じて、適切なアプリケーションを電話にインストールすることができます、私は信頼性の高い方法が必要です。

+0

を実行していますあなたが望むように処理されます.. – W0rmH0le

答えて

0

解決策はありますが、自分で作成しなければならないアプリケーション(非常に単純なもの)を作成する必要があります。

は、新しいアプリを作成し、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); 
} 

ビルドをし、あなたの携帯電話にアプリをインストールしてください。そして、あなたは、単にこれを行うだろう:活動が完全に作成されていないKeyEventがないたが...たぶん、キーイベントは、私は、少なくとも2秒...各コマンド間の休止を追加することをお勧め

adb shell am start -n "com.example.your_app/.MainActivity" -e number XXXXXXXXXX -e message "Hello World !" 
関連する問題