私の Android アプリは、Runtime.exec() を使用してスクリプトを起動します。スクリプトは、プロセスを開始するコマンドを実行します。そのプロセスの pid を取得したいので、そのステータスを追跡して後で強制終了できます。
これが私のスクリプトからの抜粋です:
$exec $options &
echo pid:$!:
pid がすぐにエコーされることを期待していますが、そうではありません。コマンドは期待どおりに実行されますが、コマンドによって開始されたプロセスを手動で強制終了するまで、pid はエコーされません。そのため、コマンドをバックグラウンドで実行する要求を尊重していないようです。私はそれを間違っていますか、それとも Android はこれをサポートしていませんか?
重要な場合、私が実行しているコマンド ($exec) はバイナリ実行可能ファイルへの呼び出しであり、$options はその実行可能ファイルの引数に展開されます。