編輯:關於Android編程
這幾天一直在做一個Andorid應用,想實現任務管理器的效果,能夠徹底關閉其他的程序,網上也看了很多資料,很多都是使用後restartPackage或者killBackgroundProcesses函數去進行,但是這一種並不能真正的將應用關閉.我的手機是root過的defy,嘗試著使用其他的方法操作.
① kill -9 pid
這個命令對於使用linux的都非常的熟悉,強制殺掉一個進程.獲取要殺掉進程的pid,然後直接執行上述命令,但是測試後發現後,在手機中setting-app中,該應用依舊是運行狀態,force close依舊可以點擊,並沒有達到效果.
②使用android自帶命令(am force-stop)
這個是查看adb幫助的時候發現的,原來adb的操作是相當的豐富的,不僅可以啟動應用,發送廣播,查看日志,還能對應用進行操作,比如強制關閉,十分的強大.根據這個,成功實現關閉其他應用的操作. (adb介紹官方文檔)
package cn.androiddevelop.flushapk.util; import java.io.IOException; import java.io.OutputStream; /** * 執行android命令 * * @author Yuedong Li * */ public class SuUtil { private static Process process; /** * 結束進程,執行操作調用即可 */ public static void kill(String packageName) { initProcess(); killProcess(packageName); close(); } /** * 初始化進程 */ private static void initProcess() { if (process == null) try { process = Runtime.getRuntime().exec("su"); } catch (IOException e) { e.printStackTrace(); } } /** * 結束進程 */ private static void killProcess(String packageName) { OutputStream out = process.getOutputStream(); String cmd = "am force-stop " + packageName + " \n"; try { out.write(cmd.getBytes()); out.flush(); } catch (IOException e) { e.printStackTrace(); } } /** * 關閉輸出流 */ private static void close() { if (process != null) try { process.getOutputStream().close(); process = null; } catch (IOException e) { e.printStackTrace(); } } }
目標 面向 Eclipse (ADT) 的 Android 插件現在支持基於 NDK 的應用開發。 其可自動生成項目和構件文件以及代碼存根,並可集成到整個 Andro
前言:Google官方在14年Google I/O上推出了全新的設計語言——Material Design。一並推出了一系列實現Material
項目中,我需要PopupWindow的時候特別多,這個東西也特別的好使,所以我今天給大家寫一款PopupWindow 仿微信彈出效果,這樣大家直接拿到項目裡就可以用了!首
1. Fragment概述Fragment從Android v3.0版本開始引入隨著界面布局的復雜化,處理起來也更加的復雜,引入Fragment可以把activity拆分