国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

獲取Activity棧,判斷當前Activity位置的方法

2019-10-22 18:14:03
字體:
來源:轉載
供稿:網友

需求

需要在整個app全局能夠彈出彈框,接收到廣播即進行處理。

但是,BaseActivity派生出N個Activity,BaseActivity中的廣播就會執行N次,導致彈框重復添加,所有在廣播中判定,只有在棧頂的Activity才能處理廣播消息。

實現

獲取任務棧

必須添加權限:

<!--獲取Activity任務棧 權限--><uses-permission android:name="android.permission.GET_TASKS" />

具體實現,獲取棧以及其中內容:

// 獲取activity任務棧ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);ActivityManager.RunningTaskInfo info = manager.getRunningTasks(1).get(0);// 類名 .ui.mobile.activity.WebsiteLoginActivityString shortClassName = info.topActivity.getShortClassName(); // 完整類名 com.haofang.testapp.ui.mobile.activity.WebsiteLoginActivityString className = info.topActivity.getClassName(); // 包名 com.haofang.testappString packageName = info.topActivity.getPackageName(); 

當前Activity的包名和全名:

// 包名 com.haofang.testappBaseActivity.this.getPackageName()// 類名 ui.main.MainActivityBaseActivity.this.getLocalClassName()

之后進行對比,即可在非目標Activity避開處理

以上這篇獲取Activity棧,判斷當前Activity位置的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高台县| 榆林市| 乡宁县| 灵山县| 会东县| 钦州市| 普陀区| 岫岩| 万源市| 砀山县| 富顺县| 冀州市| 太康县| 封开县| 旺苍县| 廉江市| 凤台县| 镇江市| 黎城县| 天水市| 镇安县| 德兴市| 辽源市| 浠水县| 吐鲁番市| 佛山市| 昌乐县| 凉山| 衡水市| 宽甸| 百色市| 江北区| 九寨沟县| 鹿邑县| 临洮县| 芷江| 扬中市| 郑州市| 云安县| 绥阳县| 平安县|