应用被系统回收导致崩溃的解决方案
应用长时间被搁置后台,如果应用进程被系统回收(内存不足),重新打开应用时,会造成静态变量空指针,进而应用崩溃。
有以下简单的示例代码:
BaseApplication
public class BaseApplication extends Application {
public static int forceKill = -1;
public static List<String> news;
@Override
public void onCreate() {
super.onCreate();
}
public static void initNews() {
List<String> news = new ArrayList<>();
news.add("1");
news.add("21");
news.add("321");
BaseApplication.news = news;
}
MainActivity(Launcher)
public class MainActivity extends Activity {
private Button btnJump;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnJump = findViewById(R.id.btn_jump);
//正常启动,置为0
forceKill &