3

を使用するJava SEアプリケーションがあります

input = new Scanner(System.in);

入力パラメータを取得する

そして使うSystem.out.println("..");

結果を印刷するには

元の Java プロジェクトで使用されているすべての Java API は Android でも使用できるため、すべてのクラスをエラーなしでインポートしようとしましたが、従来の Java コンソールの動作を Android でどのように再現するかわかりません。

一部の IDE ライクなアプリでこれを達成した開発者がいるのを見てきましたが、その方法はわかりません。

私たちを手伝ってくれますか?

: このダミーの Java SE アプリケーションを Android に移植して、元のコードのコンソールのようなアプローチを維持するとします。

    public static void main(String[] args) {
         System.out.println("Please enter your choice");
         System.out.println("A, B");

         Scanner myScanner = new Scanner(System.in);
         String choice = myScanner .nextLine();
         if (choice.charAt(0) == 'A') {
                ...do something
         }
         else{
                ...do something
         }

}
4

1 に答える 1

0

でシステム コマンドを実行できますexec()。方法は次のとおりです

Runtime r = Runtime.getRuntime();
Process p = r.exec("uname -a"); // here goes your input
p.waitFor();
BufferedReader b = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = "";    
while ((line = b.readLine()) != null) {
    System.out.println(line);
}

アップデート:

OK、私が理解していることから、ユーザーが作成したコードをコンパイルして実行したいと考えています。3 つのオプションが表示されます。

  1. 一番難しいと思います。いくつかの Java コンパイラのソース コードを取得し、それをプロジェクトに含めます。したがって、ユーザーはテキストを入力します。それをコンパイルして実行し、出力します。

  2. ビルド済みのコンパイラを使用。これにはルートが必要です。デバイスにインストールjavacします。次に、アプリケーションで上記のexec()コードを使用して呼び出すことができます。

  3. 最も簡単なもの。Ideone.comなどのインターネットを使用します。アプリで、コードを送信して Ideone でコンパイルします。出力を取得して、ユーザーに提示します。

于 2013-10-25T17:41:57.797 に答える