2011-09-14 18 views
1

是否有任何命令我可以用來關閉在adb shell中的應用程序,我可以在shell中使用「am start」命令來啓動我的應用程序,但是在谷歌搜索中,我找不到回答,以同樣的方式關閉我的應用程序。在命令行中關閉android應用程序

我希望它也可以在無根設備上工作。

+0

我只是想一種方法可以在這種情況下, 1. OnPause退出應用程序 2. send am start命令與「 - 活性 - 以前是頂部」,可以在非根設備中工作。 – sandroid

回答

1

開發人員可以殺死仿真器上的應用程序,但不能殺死真實設備上的應用程序,除非它是植根的。如果你想殺死仿真器上的應用程序比去dab外殼和比,

su 
ps 
**list will appear, for all processes** 
kill <Process ID here> 
4

你可以使用廣播意圖。在您的活動,註冊自定義的意圖的廣播接收器,例如foo.bar.intent.action.SHUTDOWN

BroadcastReceiver receiver = new BroadcastReceiver() { 
    @Override 
    public void onReceive(Context ctx, Intent intent) { 
     finish(); 
    } 
}; 

registerReceiver(receiver, new IntentFilter("foo.bar.intent.action.SHUTDOWN")); 

,然後以退出命令行的活動,送與am廣播意圖:

$ adb shell "am broadcast -a foo.bar.intent.action.SHUTDOWN" 
+0

謝謝,我認爲這完全適合我。 – sandroid

+0

@sandroid然後將此答案標記爲正確答案。這樣,這個問題將得到明顯的答覆,奧利維爾得到正確答案的要點。 – Darokthar