日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

按home退出程序到后台后再打开崩溃的问题

發(fā)布時間:2025/3/21 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 按home退出程序到后台后再打开崩溃的问题 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

開發(fā)中經(jīng)常會遇到這樣的情況:

? ? ? 按home鍵退出程序,讓其運行在后臺,然后去操作其他程序或放置在一邊,過一段時間再次打開時可能會出現(xiàn)崩潰。

分析原因(有可能是別的原因):

? ? ? 在Application中聲明了若干靜態(tài)變量,這些靜態(tài)變量往往只在程序一開始的時候初始化,然后應用在多個activity,當程序退出到后臺運行的時候,

手機可能會因為內(nèi)存不足而殺掉該進程,這時application中的靜態(tài)變量也被清空。而當再次點開程序時,當前activity中可能正好用到其中某個靜態(tài)變量,從而

拋出空指針異常。

解決辦法:

? ? ?打開activity的時候判斷當前程序是否被系統(tǒng)殺掉,如果是則需重新啟動。?

? ? ?1、在applciation中聲明變量flag,用于標志程序是否被殺掉

1 package com.zy.baseproject.application; 2 3 import com.zy.baseproject.bean.User; 4 5 import android.R.integer; 6 import android.app.Application; 7 8 public class MyApplication extends Application { 9 private static User user; 10 public static int flag=-1; 11 12 public static User getUser() { 13 return user; 14 } 15 16 public static void setUser(User user) { 17 MyApplication.user = user; 18 } 19 20 } MyApplication.java

? ? ?2、在啟動頁(SplashActivity)中改變flag的值

MyApplication.flag=0;

? ? 3、新建BaseActivity(除SplashActivity外所有Activity都需要繼承這個Activity),在這里判斷是否需要重啟程序

1 package com.zy.baseproject.activity; 2 3 import com.zy.baseproject.application.MyApplication; 4 5 import android.app.Activity; 6 import android.content.Intent; 7 import android.os.Bundle; 8 9 public abstract class BaseActivity extends Activity { 10 @Override 11 protected void onCreate(Bundle savedInstanceState) { 12 // TODO Auto-generated method stub 13 super.onCreate(savedInstanceState); 14 if(MyApplication.flag==-1){//flag為-1說明程序被殺掉 15 protectApp(); 16 }else { 17 setContentView(); 18 initializeView(); 19 initializeData(); 20 } 21 } 22 23 protected void protectApp() { 24 Intent intent=new Intent(this,MainActivity.class); 25 intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);//清空棧里MainActivity之上的所有activty 26 startActivity(intent); 27 finish(); 28 } 29 30 protected abstract void initializeData(); 31 32 protected abstract void initializeView(); 33 34 protected abstract void setContentView(); 35 36 } BaseActivity.java

? ? 4、MainActivity中復寫protectApp()方法,直接跳轉到啟動頁,重啟activty,重新初始化application中的靜態(tài)變量

@Overrideprotected void protectApp() {startActivity(new Intent(this,SplashActivity.class));finish();}

? ? 5、MainActivity的啟動模式設為singleTask,保證MainActivty在棧中只有一個并且在最底層

轉載于:https://www.cnblogs.com/3A87/p/4861588.html

總結

以上是生活随笔為你收集整理的按home退出程序到后台后再打开崩溃的问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 岛国av电影在线观看 | 成人日b视频 | 国产精品一区二区在线免费观看 | 欧美成人免费在线观看视频 | 日韩欧美亚洲一区 | 好看的中文字幕 | 超91在线| 免费成人高清在线视频 | 91丝袜| 啪啪一区二区 | 爱涩av | 成人女同av免费观看 | 91免费版在线 | 国产制服91一区二区三区制服 | 噼里啪啦高清 | 老司机午夜精品视频 | 亚洲欧美日韩视频一区 | 波多野结衣潜藏淫欲 | 日韩草逼 | 私密视频在线观看 | 午夜免费看 | 亚洲欧美在线免费观看 | 香蕉视频ap| 九九热在线精品视频 | 一级黄色片在线看 | 成人少妇影院yyyy | 亚洲毛片在线免费观看 | 欧美一级影院 | 天天操天天艹 | 亚洲精品二 | 少妇精品一区二区三区 | 浪荡奴双性跪着伺候 | 国产馆在线观看 | 亚洲高清在线视频 | fc2ppv在线观看 | 国产精品一区二区三区免费在线观看 | 亚洲欧美日韩在线 | 国产91国语对白在线 | 老鸭窝成人 | 国产人人干 | 久久丫精品国产亚洲av不卡 | 欧美多p| 成人a免费| 森泽佳奈中文字幕 | 99福利网| 国产一区午夜 | 未满十八18禁止免费无码网站 | 91精品国产高清一区二区三密臀 | 亚洲色图视频在线 | 国产成人午夜 | 自拍日韩亚洲一区在线 | 天天摸天天做 | 狠狠干av| 欧美无砖专区免费 | 91av精品 | 亚洲国产精品无码专区 | 国产51页 | 五月亚洲综合 | 97超碰福利 | 国产乱码一区二区 | 一本大道av伊人久久综合 | 亚洲欧美视频一区二区 | 西西人体做爰大胆gogo | 一级黄色伦理片 | 国产无套精品一区二区 | 长河落日 | 色窝在线 | 九九视频在线免费观看 | 超碰精品在线 | 小辣椒导航 | 欧日韩不卡视频 | 免费av网站在线 | 国产又爽又黄又嫩又猛又粗 | 久久精品国产大片免费观看 | 涩涩视频软件 | 少妇精品视频一区二区 | 99热这里只有精品8 国产一卡二 | 中文字幕av一区二区三区谷原希美 | 欧洲精品一区二区三区久久 | 刘亦菲一区二区三区免费看 | 成都4电影免费高清 | 欧美日比视频 | 久久久人人人 | 国产综合亚洲精品一区二 | 国产精品污网站 | 毛片自拍 | 亚洲国产日韩精品 | 欧美资源在线 | 亚洲少妇30p| 夫妻黄色片 | 午夜丰满寂寞少妇精品 | 精品视频免费播放 | 黄色大片在线看 | 亚洲免费影院 | 樱桃国产成人精品视频 | 欧美日韩在线视频一区 | 狠狠撸在线 | 久草视频免费看 | yy4138理论片动漫理论片 |