国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - android中判斷服務或者進程是否存在實例

android中判斷服務或者進程是否存在實例

2020-10-31 23:41o動感超人o Java教程

本篇文章主要介紹了android中判斷服務或者進程是否存在實例,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

1.判斷進程是否存在

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
/**
 * 判斷是否在主進程,這個方法判斷進程名或者pid都可以,如果進程名一樣那pid肯定也一樣
 *
 * @return true:當前進程是主進程 false:當前進程不是主進程
 */
public boolean isUIProcess() {
 ActivityManager am = ((ActivityManager) getSystemService(Context.ACTIVITY_SERVICE));
 List<ActivityManager.RunningAppProcessInfo> processInfos = am.getRunningAppProcesses();
 String mainProcessName = getPackageName();
 int myPid = android.os.Process.myPid();
 for (ActivityManager.RunningAppProcessInfo info : processInfos) {
  if (info.pid == myPid && mainProcessName.equals(info.processName)) {
   return true;
  }
 }
 return false;
}

2.判斷服務是否存在

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/**
 * 判斷service是否已經運行
 * 必須判斷uid,因為可能有重名的Service,所以要找自己程序的Service,不同進程只要是同一個程序就是同一個uid,個人理解android系統中一個程序就是一個用戶
 * 用pid替換uid進行判斷強烈不建議,因為如果是遠程Service的話,主進程的pid和遠程Service的pid不是一個值,在主進程調用該方法會導致Service即使已經運行也會認為沒有運行
 * 如果Service和主進程是一個進程的話,用pid不會出錯,但是這種方法強烈不建議,如果你后來把Service改成了遠程Service,這時候判斷就出錯了
 *
 * @param className Service的全名,例如PushService.class.getName()
 * @return true:Service已運行 false:Service未運行
 */
public boolean isServiceExisted(String className) {
 ActivityManager am = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
 List<ActivityManager.RunningServiceInfo> serviceList = am.getRunningServices(Integer.MAX_VALUE);
 int myUid = android.os.Process.myUid();
 for (ActivityManager.RunningServiceInfo runningServiceInfo : serviceList) {
  if (runningServiceInfo.uid == myUid && runningServiceInfo.service.getClassName().equals(className)) {
   return true;
  }
 }
 return false;
}

注意:

上面判斷Service是否存在,用的uid和Service的類全名,網上我查到的資料,全部是用的pid,在Service和主進程是一個進程的時候,pid沒有問題,但是如果Service是遠程Service,和主進程就不是一個進程了,這時候用pid和Service的類全名進行判斷就會判斷錯誤

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://www.jianshu.com/p/469400940ee0

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产精品高清在线 | 九一麻豆精品 | 国产日韩欧美一二三区 | 亚洲免费视频一区二区 | 成人欧美一区二区三区在线播放 | av午夜电影| 99中文字幕 | 久久男人网 | 午夜电影在线看 | 午夜精品福利在线观看 | 欧美日韩三级在线 | 亚洲成人免费在线 | 婷婷五月色综合 | 日韩欧美国产一区二区 | 日韩精品视频在线观看一区二区 | 日韩欧美不卡 | 欧美日韩亚洲系列 | 国产成人精品午夜视频' | 性做久久久 | 精品免费视频 | 国产性猛交xxxx免费看久久 | 亚洲欧美在线免费 | 国产精品久久久久久久久久久久久久 | 中文字幕日韩欧美 | 国产成人精品一区二区三区视频 | a视频在线 | 日韩在线资源 | 操操网| 欧美日韩第一页 | 久久xxx| 九九导航| 97超碰免费 | 国产精品美女久久久久aⅴ国产馆 | 一区二区三区高清 | 国内偷拍av| 伊人激情综合 | 九九视频在线 | 九一午夜精品av | 羞羞视频在线免费观看 | 色吊丝在线永久观看最新版本 | 黄色免费av |