? ? ? ? 最近項目中需要獲取android應用的進程名,這種知道是獲取系統(tǒng)服務,但具體是哪個系統(tǒng)服務卻不記得了割岛。查了相關api才知道是ACTIVITY_SERVICE,在這里記一下拨脉,方便大家查閱撵溃。對于 ? ??
? ? ? ? 由于系統(tǒng)服務方面的知識不常用,大部分人都是用到的時候查。接下來準備些一個系列關于android系統(tǒng)服務相關的文章供大家參考。
? ? ? ? 下面是獲取進程名稱的方法:
object ProcessUtils {
/**
* 獲取應用的進程名
? ? * @param context Application的context
? ? * @return 應用進程名
* */
? ? fun getProcessName(context: Context): String {
? ? ? ? ? ? ? ?val manager = context.getSystemService(Context.ACTIVITY_SERVICE)as ActivityManager
? ? ? ? ? ? ? ?val processList = manager.runningAppProcesses
? ? ? ? ? ? ? ?var result =""
? ? ? ? ? ? ? ?val pid = android.os.Process.myPid()
? ? ? ? ? ? ? ?processList.forEach {
? ? ? ? ? ? ? ? ? ? ? ? ? ? if (it.pid == pid) {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?result =it.processName
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ?}
? ? ? ? return result
? ? ? ? ? ? ? ? }
}