2011-10-18 6 views
0

私はアンドロイドのプログラミングと開発には初めてです。私は自動でログファイルを生成し、それを電子メールに添付するアプリケーションに取り組んでいます。私が抱えている問題は、ログの実行を停止させることです。電子メールに添付するためにsdカードに.textファイルを生成しますが、ログは実行を継続し、決して停止しません。ログを添付できる唯一の方法は、電話の電源を入れ直してログの実行を停止することです。私はタイマークラスを見てきましたが、それが私が必要とするものか、これを行う別の方法があるかどうかはわかりません。ここでは始まりと終わりですが、私は電子メールの意図であるために意図を途中で省きました。アプリ生成ログの実行を停止する

private void submit() { 
    try { 
     log.createNewFile(); 
     String cmd = "logcat -f "+log.getAbsolutePath(); 
     Runtime.getRuntime().exec(cmd); 
    } catch (IOException e) { 
     e.printStackTrace(); 
} 





    startActivity(Intent.createChooser(emailIntent, "Send report...")); 
    String log = "file:///sdcard/log.txt"; 
    try { 
     Runtime.getRuntime().exec("rm "+log); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 

答えて

1

これはいかがですか?あなたがプロセスを殺すために準備ができている

Process proc = Runtime.getRuntime().exec(cmd); 

proc.destroy() 
+0

私はそれを試してみましたが、私はproc.destroy()を入れた場合、ログはまったく実行されません。 Process proc = Runtime.getRuntime()。exec(cmd)の直下以外のどこにでも入力することはできません。それ以外の場所に挿入しようとすると、エラーが発生します。私は何が間違っているのか分かりません。 – Jasonwilliams10

関連する問題