温馨提示:这篇文章已超过469天没有更新,请注意相关的内容是否还可用!
摘要:河北工业大学进行的Android实验一主要围绕Android生命周期展开。实验旨在帮助学生理解Android应用程序的运作机制,特别是其生命周期的不同阶段,包括创建、启动、暂停、恢复和销毁等。通过实践操作,学生能够掌握Android生命周期的重要性,并学会如何在应用程序开发中有效管理和利用。这一实验对于提高学生的Android开发技能具有重要意义。
本次实验使用USB连接我的旧款Vivo IQOO neo3手机(安卓版本几乎是最新的)完成,成功将实验报告中过时的代码进行了修改,确保所有内容都能在最新版中使用。
一、实验目的
1. 巩固使用Eclipse开发Android应用程序的方法和步骤。
2. 深入了解和体验Activity生命周期中各状态的变化关系。
3. 掌握Android应用程序的调试方法和工具。
二、实验内容
构建一个Android工程,该工程在Android生命周期的各阶段添加日志点,以观察和分析Activity的生命周期。
工程名称:ActivityLifeCycle
包名称:edu.hebut.ActivityLifeCycle
Activity名称:ActivityLifeCycle
三、实验仪器、设备
装有Java JDK7.0、Android、Eclipse等软件的微机
四、实验步骤
1. 实验代码
(1) ActivityLifeCycle.java
public class ActivityLifeCycle extends Activity implements View.OnClickListener { private static final String TAG = "LD_LIFECYCLE";
// 完全生命周期开始,初始化Activity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Log.i(TAG, "onCreate()");
Button finishButton = findViewById(R.id.btn_finish);
Button phoneButton = findViewById(R.id.btn_phone);
finishButton.setOnClickListener(this);
phoneButton.setOnClickListener(this);
}
// 可视生命周期开始时被调用,更改用户界面
@Override
public void onStart() {
super.onStart();
Log.i(TAG, "onStart()");

}
// 恢复onSavaInstanceState()保存的用户界面信息
@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
Log.i(TAG, "onRestoreInstanceState()");
}
// 活动生命周期开始时被调用,恢复被onPause()停止的用于界面更新的资源
@Override
public void onResume() {
super.onResume();

Log.i(TAG, "onResume()");
}
// 保存界面临时信息
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
Log.i(TAG, "onSaveInstanceState()");
}
// 重新进入可视生命周期前被调用,载入界面所需修改的信息
@Override
public void onRestart() {

super.onRestart();
Log.i(TAG, "onRestart()");
}
// 活动生命周期结束时被调用,保存持久数据或释放资源
@Override
public void onPause() {
super.onPause();
Log.i(TAG, "onPause()");
}
// 可视生命周期结束时被调用,释放资源
@Override

public void onStop() {
super.onStop();
Log.i(TAG, "onStop()");
}
// 完全生命周期结束时被调用,释放资源,包括线程、数据连接等
@Override
public void onDestroy() {
super.onDestroy();
Log.i(TAG, "onDestroy()");
}
@Override

public void onClick(View view) {
switch (view.getId()) {
case R.id.btn_finish:
finish(); // 结束当前Activity的实例,系统不会立即销毁这个实例,而是将其保留在内存中一段时间,如果再次启动这个Activity时,系统会复用之前的实例,如果不再启动这个Activity或者系统内存不足时,这个实例会被销毁,在点击结束按钮后,会经历一系列的生命周期方法,具体取决于系统如何处理这个实例,这通常取决于Android系统的内存管理策略,因此具体的生命周期方法序列可能会有所不同,因此无法准确预测和记录所有可能的情况,但一般来说会经历onCreate(), onDestroy()等,具体序列需要实际测试来确定,因此这里省略具体序列描述,点击按钮后结束程序的具体生命周期需要进一步观察并记录,具体序列依赖于系统行为和设备
还没有评论,来说两句吧...