app 從后臺(tái)切換回前臺(tái)

需求場(chǎng)景:在開(kāi)發(fā)一個(gè)語(yǔ)音通話功能的時(shí)候阅茶,用戶點(diǎn)擊Home鍵把a(bǔ)pp切換回后臺(tái)之后蛛枚,當(dāng)呼叫到來(lái),需要喚起后臺(tái)的app脸哀,并切回前臺(tái)(前提是app還沒(méi)有被系統(tǒng)干掉蹦浦,你懂的!)撞蜂。

很多手機(jī)只需要一句代碼就OK了!

context.startActivity(new Intent(context,XXXXActivity.class).addFlags(Intent.FLAG_ACTIVITY_NEW_TASK));

偏偏我國(guó)產(chǎn)大安卓喜歡搞事情盲镶,在OPPO?R9系列的手機(jī)就是怎樣都無(wú)法切回去前臺(tái)!沒(méi)辦法蝌诡,苦逼的我只能解決這問(wèn)題溉贿!

解決過(guò)程一:

//獲取ActivityManager

ActivityManager mAm = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);

//獲得當(dāng)前運(yùn)行的task

List<ActivityManager.RunningTaskInfo> taskList = mAm.getRunningTasks(20);

for(ActivityManager.RunningTaskInfo rti : taskList) {

????????//找到當(dāng)前應(yīng)用的task,并啟動(dòng)task的棧頂activity浦旱,達(dá)到程序切換到前臺(tái)

????????if(rti.topActivity.getPackageName().equals(context.getPackageName())) {

????????try{

????????????Intent resultIntent =newIntent(context,Class.forName(rti.topActivity.getClassName()));

????????????resultIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK| Intent.FLAG_ACTIVITY_SINGLE_TOP);

????????????context.startActivity(resultIntent);

????????}catch(ClassNotFoundException e) {

????????????e.printStackTrace();

????????}

????????break;

????}

}

運(yùn)行結(jié)果宇色,GG!其他手機(jī)都可以,就OPPO?R9s?不行宣蠕,好吧例隆,當(dāng)學(xué)習(xí)點(diǎn)記錄一下吧!畢竟也是一種喚起的方式抢蚀!

解決過(guò)程二(完美解決問(wèn)題):

//獲取ActivityManager

ActivityManager mAm = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);

//獲得當(dāng)前運(yùn)行的task

List<ActivityManager.RunningTaskInfo> taskList = mAm.getRunningTasks(100);

for(ActivityManager.RunningTaskInfo rti : taskList) {

????//找到當(dāng)前應(yīng)用的task镀层,并啟動(dòng)task的棧頂activity,達(dá)到程序切換到前臺(tái)

????if(rti.topActivity.getPackageName().equals(context.getPackageName())) {

????????Intent LaunchIntent =new Intent(Intent.ACTION_MAIN);

????????ComponentName cn =new ComponentName(Constant.PACKAGE,rti.topActivity.getClassName());

????????LaunchIntent.setComponent(cn);

????????startActivity(LaunchIntent);

????????break;

????}

}

親測(cè)有用皿曲,把公司所有的測(cè)試機(jī)都測(cè)試過(guò)鹿响,沒(méi)問(wèn)題!

PS:使用這段代碼的時(shí)候最好是判斷app在后臺(tái)之后才使用谷饿,在前臺(tái)的時(shí)候調(diào)用這段代碼,會(huì)導(dǎo)致這部分代碼之后的程序不執(zhí)行妈倔!

/-----------------------------------------------不明分割線-------------------------------------------------------/

OPPO?在R9系列以上的手機(jī)博投,除非用戶開(kāi)啟了“自啟動(dòng)”權(quán)限,否則你會(huì)在日志中看到一條攔截信息

OppoAppStartupManager: InterceptInfo com.gx.dfttsdk com.gx.dfttsdk com.gx.dfttsdk.MainActivity com.moban.baidu true

可以看OPPO?ColorOS官方社區(qū)的帖子:http://bbs.coloros.com/forum.php?mod=viewthread&tid=527188

這是OPPO?系統(tǒng)更新后的攔截操作盯蝴,禁止應(yīng)用私自喚起后臺(tái)應(yīng)用毅哗,除非獲得用戶允許!這個(gè)在其他廠家的手機(jī)也可以試一下捧挺,在應(yīng)用后臺(tái)切回前臺(tái)的操作上虑绵,開(kāi)啟“自啟動(dòng)”權(quán)限應(yīng)該是相通的!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末闽烙,一起剝皮案震驚了整個(gè)濱河市翅睛,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌黑竞,老刑警劉巖捕发,帶你破解...
    沈念sama閱讀 207,248評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異很魂,居然都是意外死亡扎酷,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門遏匆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)法挨,“玉大人,你說(shuō)我怎么就攤上這事幅聘》材桑” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 153,443評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵喊暖,是天一觀的道長(zhǎng)惫企。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么狞尔? 我笑而不...
    開(kāi)封第一講書人閱讀 55,475評(píng)論 1 279
  • 正文 為了忘掉前任丛版,我火速辦了婚禮,結(jié)果婚禮上偏序,老公的妹妹穿的比我還像新娘页畦。我一直安慰自己,他們只是感情好研儒,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布豫缨。 她就那樣靜靜地躺著,像睡著了一般端朵。 火紅的嫁衣襯著肌膚如雪好芭。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 49,185評(píng)論 1 284
  • 那天冲呢,我揣著相機(jī)與錄音舍败,去河邊找鬼。 笑死敬拓,一個(gè)胖子當(dāng)著我的面吹牛邻薯,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播乘凸,決...
    沈念sama閱讀 38,451評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼厕诡,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了营勤?” 一聲冷哼從身側(cè)響起灵嫌,我...
    開(kāi)封第一講書人閱讀 37,112評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎冀偶,沒(méi)想到半個(gè)月后醒第,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,609評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡进鸠,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評(píng)論 2 325
  • 正文 我和宋清朗相戀三年稠曼,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片客年。...
    茶點(diǎn)故事閱讀 38,163評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡霞幅,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出量瓜,到底是詐尸還是另有隱情司恳,我是刑警寧澤,帶...
    沈念sama閱讀 33,803評(píng)論 4 323
  • 正文 年R本政府宣布绍傲,位于F島的核電站扔傅,受9級(jí)特大地震影響耍共,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜猎塞,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評(píng)論 3 307
  • 文/蒙蒙 一试读、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧荠耽,春花似錦钩骇、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,357評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至慢叨,卻和暖如春纽匙,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背拍谐。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 31,590評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工哄辣, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人赠尾。 一個(gè)月前我還...
    沈念sama閱讀 45,636評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像毅弧,于是被迫代替她去往敵國(guó)和親气嫁。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評(píng)論 2 344