[英]How to start a process on Android device using adb
我正在使用adb命令來管理Android手機上的進程。
我可以通過命令殺死特定進程
adb kill "PID" (PID is the process ID)
並且該過程被殺死。
但是當我使用命令啟動它時
adb start "PID"
它不會啟動該過程。
我希望啟動的過程位於/ system / bin文件夾中,但我不知道該過程的程序包或活動名稱是什么。 我所知道的只是過程的“ PID”和“用戶”。
是否有任何命令可以在Android設備上啟動特定進程?
殺死與PID
對應的進程后,如何重新啟動它?
您可以改用以下方式嘗試從adb
啟動應用:
adb shell
am start -n com.package.name/com.package.name.ActivityName
或者您可以直接使用:
adb shell am start -n com.package.name/com.package.name.ActivityName
本機應用程序沒有活動。 它們就是-本機二進制文件。
如果您只知道進程的數字ID,則ps <PID>
命令將在NAME
列中顯示進程二進制文件的名稱。 像這樣:
# ps 407
USER PID PPID VSIZE RSS WCHAN PC NAME
root 407 1 4540 272 ffffffff 000160a4 S /sbin/adbd
如果PPID
值為1
表示它已由系統init
啟動,則該應用很有可能是“服務”應用。 要控制它,您需要找到服務的名稱,然后使用stop <service>
並start <service>
。
要查找服務的名稱,請運行grep ^service /init*rc | grep <binary name>
grep ^service /init*rc | grep <binary name>
服務的名稱將在第二列(即“ adbd”)中:
# grep ^service /init*rc | grep /sbin/adbd
/init.rc:service adbd /sbin/adbd
因此,要正確控制此應用,您應該使用stop adbd
並start adbd
。
您說您知道二進制文件在/ system / bin中,所以我假設您也知道該二進制文件的名稱。 如果您不這樣做,該命令將幫助您找出:
ps PID
要啟動二進制文件(例如,正常運行時間),只需在shell中鍵入其名稱:
adb shell
uptime
或一個命令
adb shell uptime
但是,如果您的二進制文件不在$ PATH中列出的目錄之一中,則必須輸入它的完整路徑
adb shell /system/bin/uptime
您可以使用以下方法檢查$ PATH:
adb shell echo $PATH
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.