We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
其实春节期间已经想动笔了,主要空余的时间都用来看了一些初步的概念。动手的时间太少。
发现官网里面的教程做扶梯非常棒,所以跟着教程一步步做,一边巩固概念,一边熟悉AS这个新IDE。整个一套下来还是有所收获的。 安卓教程首页 我选择了这个教程作为切入点 教程入口 首先安卓有安卓整个世界观,这个和windows是完全不同的系统。以前WPF的经验切忌不可僵化套用,只有某种程度上的相似性 首先安卓拥有4种应用 组件 App components
Activities
Services
Broadcast receivers
Content providers
Activity 是安卓的核心组件。我上一篇Hello World中,就只有Activity。官方解释为Activity 是与用户交互的入口点。入口点这是和windows最大的区别点。打一个现实世界的比喻。一个Activity安卓程序的门,而一个安卓应用可能有很多扇门进去,当然从桌面上点进去进入的Activity是main Activity,就是正大光明的大门。当然还有一些不同目的的小门,如果一个PDF的APP就提供了传入一个PDF访问地址的Activity,之后就直接展示相关PDF文档。而windows永远只有一个MainWindows。如果Activity对标WPF的话相当于Windows。
Application(android.app.Application)
被忽略的Application。吐槽下学习安卓一个非常奇怪的现象。官网的教程从头到尾都没有详细讲到这个类,为啥一个这么重要的知识点不单独开一个章节那。 因为引用日志组件的需要。我需要找到一个安卓全局初始化的入口,翻了官网半天没找到,最后自定义一个Application的派生类来完成这个任务 和WPF的System.Windows.Application完美对标 他作为应用的核心类 肩负了整个应用级别的回调函数(暂时只列出目前用到的)
Fragment Fragment,教程里面是安排和Activity一同学习的。从我的理解来说Fragment是依附于Activity。他比Activity要轻,同时继承了Activity一些元素
同WPF类比,他更加类似于UserControl。这个特性和React的控件一样,是UI具有极高的 复用性/独立性/扩展性。教程里面的Fragment是和navigation结合起来的。目前Fragment还没用出比较惊艳的效果,我会在后面的学习中进一步探索
教程本身没啥太多亮点 吐槽下Navigation修改了参数以后,相关代码生成的FragmentDirection构造函数并不会马上修改,一定要重新Make Project(相当于Rebuild)
Application、Activity 、Fragment生命周期探究 为了方便日志特意引入了logger组件 logger的github 在build.gradle(Module:My_First_APP.app)里面 dependencies { implementation 'com.orhanobut:logger:2.2.0' }
dependencies { implementation 'com.orhanobut:logger:2.2.0' }
增加一个APP.java 继承Application
public class App extends Application { @Override public void onCreate() { FormatStrategy formatStrategy = PrettyFormatStrategy.newBuilder() .showThreadInfo(true) .tag("SoapAPP") .build(); Logger.addLogAdapter(new AndroidLogAdapter(formatStrategy)); Logger.i("-------APP Create-------"); super.onCreate(); } @Override public void onTerminate() { super.onTerminate(); Logger.i("-------APP Terminate-------"); } @Override public void onConfigurationChanged(@NonNull Configuration newConfig) { super.onConfigurationChanged(newConfig); Logger.i("-------APP Config Changed--------"); } }
在MainActivity.java中主要的生命周期回调都加入了日志
@Override protected void onCreate(Bundle savedInstanceState) { Logger.i("~~~~~~~~~~Activity Create"); super.onCreate(savedInstanceState); //省略其他代码 } @Override protected void onStart() { super.onStart(); Logger.i("~~~~~~~~~~Activity Start"); } @Override protected void onStop() { super.onStop(); Logger.i("~~~~~~~~~~Activity Stop"); } @Override protected void onRestart() { super.onRestart(); Logger.i("~~~~~~~~~~Activity Restart"); } @Override protected void onResume() { super.onResume(); Logger.i("~~~~~~~~~~Activity Resume"); } @Override public void onSaveInstanceState(@NonNull Bundle outState, @NonNull PersistableBundle outPersistentState) { super.onSaveInstanceState(outState, outPersistentState); Logger.i("~~~~~~~~~~Activity onSaveInstanceState"); } @Override protected void onDestroy() { super.onDestroy(); Logger.i("Activity Destroy"); }
FirstFragment.java
@Override public void onCreate(@Nullable Bundle savedInstanceState) { Logger.i("~~~~~~~~~~Fragment onCreate Bundle null:" + (savedInstanceState == null ) ); super.onCreate(savedInstanceState); } @Override public void onStart() { super.onStart(); Logger.i("~~~~~~~~~~Fragment onStart"); } @Override public void onResume() { super.onResume(); Logger.i("~~~~~~~~~~Fragment onResume"); } @Override public void onStop() { super.onStop(); Logger.i("~~~~~~~~~~Fragment onStop"); } @Override public void onDestroy() { super.onDestroy(); Logger.i("~~~~~~~~~~Fragment onDestroy"); } @Override public void onSaveInstanceState(@NonNull Bundle outState) { super.onSaveInstanceState(outState); Logger.i("~~~~~~~~~~Fragment onSaveInstanceState"); }
这里出现了意外,Activity并没有调用onSaveInstanceState回调 后来发现原来是搞错了回调函数onSaveInstanceState,一共有两个哦
@Override public void onSaveInstanceState(@NonNull Bundle outState, @NonNull PersistableBundle outPersistentState) { super.onSaveInstanceState(outState, outPersistentState); Logger.i("~~~~~~~~~~Activity onSaveInstanceState 1111"); } @Override protected void onSaveInstanceState(@NonNull Bundle outState) { super.onSaveInstanceState(outState); Logger.i("~~~~~~~~~~Activity onSaveInstanceState 2222"); }
注意,这里~~~~~~~~~~Activity onSaveInstanceState 1111并没有被执行,真正生效的是下面一个回调
接下来执行我们的计划来看看各个组件的生命周期切换状况
未完待续...,晚上再更
2021-02-21 20:51:39.665 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.665 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:51:39.665 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.665 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callApplicationOnCreate (Instrumentation.java:1192) 2021-02-21 20:51:39.665 18086-18086/com.example.myfirstapp I/SoapAPP: │ App.onCreate (App.java:21) 2021-02-21 20:51:39.665 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.665 18086-18086/com.example.myfirstapp I/SoapAPP: │ -------APP Create------- 2021-02-21 20:51:39.665 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.737 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.737 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:51:39.737 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.737 18086-18086/com.example.myfirstapp I/SoapAPP: │ Activity.performCreate (Activity.java:8000) 2021-02-21 20:51:39.737 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onCreate (MainActivity.java:23) 2021-02-21 20:51:39.737 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.737 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Create 2021-02-21 20:51:39.737 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.905 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.905 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:51:39.905 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.905 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performCreate (Fragment.java:2684) 2021-02-21 20:51:39.905 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onCreate (FirstFragment.java:70) 2021-02-21 20:51:39.906 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.906 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onCreate Bundle null:true 2021-02-21 20:51:39.906 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.945 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.945 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:51:39.945 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.945 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performStart (Fragment.java:2730) 2021-02-21 20:51:39.945 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onStart (FirstFragment.java:77) 2021-02-21 20:51:39.945 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.945 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onStart 2021-02-21 20:51:39.945 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.948 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.948 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:51:39.948 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.948 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnStart (Instrumentation.java:1435) 2021-02-21 20:51:39.948 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onStart (MainActivity.java:42) 2021-02-21 20:51:39.948 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.948 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Start 2021-02-21 20:51:39.948 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnResume (Instrumentation.java:1456) 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onResume (MainActivity.java:60) 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Resume 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performResume (Fragment.java:2747) 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onResume (FirstFragment.java:83) 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onResume 2021-02-21 20:51:39.950 18086-18086/com.example.myfirstapp I/SoapAPP: └─────────────────────────────────────────────────────────────────────────────
1程序启动完成
2 程序被隐藏
─────────────────────────────────── 2021-02-21 20:52:03.834 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:03.834 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:52:03.835 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:03.835 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performStop (Fragment.java:2894) 2021-02-21 20:52:03.835 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onStop (FirstFragment.java:89) 2021-02-21 20:52:03.835 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:03.835 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onStop 2021-02-21 20:52:03.835 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:03.836 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:03.836 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:52:03.836 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:03.836 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnStop (Instrumentation.java:1476) 2021-02-21 20:52:03.836 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onStop (MainActivity.java:48) 2021-02-21 20:52:03.836 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:03.836 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Stop 2021-02-21 20:52:03.836 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:03.845 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:03.845 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:52:03.845 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:03.845 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performSaveInstanceState (Fragment.java:2863) 2021-02-21 20:52:03.845 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onSaveInstanceState (FirstFragment.java:101) 2021-02-21 20:52:03.845 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:03.845 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onSaveInstanceState 2021-02-21 20:52:03.845 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:03.848 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:03.848 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:52:03.848 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:03.848 18086-18086/com.example.myfirstapp I/SoapAPP: │ Activity.performSaveInstanceState (Activity.java:2163) 2021-02-21 20:52:03.849 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onSaveInstanceState (MainActivity.java:72) 2021-02-21 20:52:03.849 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:03.849 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity onSaveInstanceState 2222 2021-02-21 20:52:03.849 18086-18086/com.example.myfirstapp I/SoapAPP: └─────────────────────────────────────────────────────────────────────────────
3 开始重新显示APP
─────────────────────────────────── 2021-02-21 20:52:15.755 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:15.782 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:52:15.782 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:15.782 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnRestart (Instrumentation.java:1445) 2021-02-21 20:52:15.782 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onRestart (MainActivity.java:54) 2021-02-21 20:52:15.782 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:15.782 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Restart 2021-02-21 20:52:15.782 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:15.783 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:15.783 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:52:15.783 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:15.783 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performStart (Fragment.java:2730) 2021-02-21 20:52:15.783 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onStart (FirstFragment.java:77) 2021-02-21 20:52:15.783 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:15.783 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onStart 2021-02-21 20:52:15.783 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:15.783 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:15.783 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:52:15.783 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:15.784 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnStart (Instrumentation.java:1435) 2021-02-21 20:52:15.784 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onStart (MainActivity.java:42) 2021-02-21 20:52:15.784 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:15.784 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Start 2021-02-21 20:52:15.784 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:15.784 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:15.784 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:52:15.784 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnResume (Instrumentation.java:1456) 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onResume (MainActivity.java:60) 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Resume 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performResume (Fragment.java:2747) 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onResume (FirstFragment.java:83) 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onResume 2021-02-21 20:52:15.785 18086-18086/com.example.myfirstapp I/SoapAPP: └────────────────────────────────────────────────────────────────────────────────────────────────────────────────
4 翻转一次屏幕
2021-02-21 20:54:36.915 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.915 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:36.915 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.925 18086-18086/com.example.myfirstapp I/SoapAPP: │ ActivityThread.performConfigurationChanged (ActivityThread.java:5618) 2021-02-21 20:54:36.925 18086-18086/com.example.myfirstapp I/SoapAPP: │ App.onConfigurationChanged (App.java:34) 2021-02-21 20:54:36.925 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.925 18086-18086/com.example.myfirstapp I/SoapAPP: │ -------APP Config Changed-------- 2021-02-21 20:54:36.925 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.928 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.928 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:36.928 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.928 18086-18086/com.example.myfirstapp I/SoapAPP: │ ActivityThread.performConfigurationChanged (ActivityThread.java:5618) 2021-02-21 20:54:36.928 18086-18086/com.example.myfirstapp I/SoapAPP: │ App.onConfigurationChanged (App.java:34) 2021-02-21 20:54:36.928 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.928 18086-18086/com.example.myfirstapp I/SoapAPP: │ -------APP Config Changed-------- 2021-02-21 20:54:36.928 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.936 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.937 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:36.937 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.938 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performStop (Fragment.java:2894) 2021-02-21 20:54:36.938 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onStop (FirstFragment.java:89) 2021-02-21 20:54:36.938 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.938 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onStop 2021-02-21 20:54:36.938 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.938 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.938 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:36.938 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.938 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnStop (Instrumentation.java:1476) 2021-02-21 20:54:36.939 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onStop (MainActivity.java:48) 2021-02-21 20:54:36.939 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.939 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Stop 2021-02-21 20:54:36.939 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.939 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.939 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:36.939 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.939 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performSaveInstanceState (Fragment.java:2863) 2021-02-21 20:54:36.939 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onSaveInstanceState (FirstFragment.java:101) 2021-02-21 20:54:36.939 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.940 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onSaveInstanceState 2021-02-21 20:54:36.940 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.940 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.940 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:36.940 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.940 18086-18086/com.example.myfirstapp I/SoapAPP: │ Activity.performSaveInstanceState (Activity.java:2163) 2021-02-21 20:54:36.940 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onSaveInstanceState (MainActivity.java:72) 2021-02-21 20:54:36.940 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.943 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity onSaveInstanceState 2222 2021-02-21 20:54:36.943 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.951 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.951 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:36.951 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.951 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performDestroy (Fragment.java:2927) 2021-02-21 20:54:36.951 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onDestroy (FirstFragment.java:95) 2021-02-21 20:54:36.951 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.952 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onDestroy 2021-02-21 20:54:36.952 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.952 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.953 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:36.953 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.953 18086-18086/com.example.myfirstapp I/SoapAPP: │ Activity.performDestroy (Activity.java:8245) 2021-02-21 20:54:36.953 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onDestroy (MainActivity.java:78) 2021-02-21 20:54:36.953 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.953 18086-18086/com.example.myfirstapp I/SoapAPP: │ Activity Destroy 2021-02-21 20:54:36.953 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.974 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.975 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:36.975 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.975 18086-18086/com.example.myfirstapp I/SoapAPP: │ Activity.performCreate (Activity.java:8000) 2021-02-21 20:54:36.975 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onCreate (MainActivity.java:23) 2021-02-21 20:54:36.975 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.975 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Create 2021-02-21 20:54:36.975 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.999 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:36.999 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:36.999 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.999 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performCreate (Fragment.java:2684) 2021-02-21 20:54:36.999 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onCreate (FirstFragment.java:70) 2021-02-21 20:54:36.999 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:36.999 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onCreate Bundle null:false 2021-02-21 20:54:36.999 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:37.080 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:37.080 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:37.080 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:37.080 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performStart (Fragment.java:2730) 2021-02-21 20:54:37.080 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onStart (FirstFragment.java:77) 2021-02-21 20:54:37.080 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:37.081 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onStart 2021-02-21 20:54:37.081 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:37.082 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:37.082 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:37.082 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:37.082 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnStart (Instrumentation.java:1435) 2021-02-21 20:54:37.082 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onStart (MainActivity.java:42) 2021-02-21 20:54:37.082 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:37.082 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Start 2021-02-21 20:54:37.082 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:37.083 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:37.086 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:37.086 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:37.086 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnResume (Instrumentation.java:1456) 2021-02-21 20:54:37.086 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onResume (MainActivity.java:60) 2021-02-21 20:54:37.086 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:37.086 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Resume 2021-02-21 20:54:37.086 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:37.087 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:37.087 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:37.087 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:37.087 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performResume (Fragment.java:2747) 2021-02-21 20:54:37.087 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onResume (FirstFragment.java:83) 2021-02-21 20:54:37.087 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:37.087 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onResume 2021-02-21 20:54:37.087 18086-18086/com.example.myfirstapp I/SoapAPP: └────────────────────────────────────────────────────────────────────────────────────────────────────────────────
5 APP重现显示后,再次翻转回来
2021-02-21 20:54:45.727 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.727 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.727 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.728 18086-18086/com.example.myfirstapp I/SoapAPP: │ ActivityThread.performConfigurationChanged (ActivityThread.java:5618) 2021-02-21 20:54:45.728 18086-18086/com.example.myfirstapp I/SoapAPP: │ App.onConfigurationChanged (App.java:34) 2021-02-21 20:54:45.728 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.728 18086-18086/com.example.myfirstapp I/SoapAPP: │ -------APP Config Changed-------- 2021-02-21 20:54:45.728 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performStop (Fragment.java:2894) 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onStop (FirstFragment.java:89) 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onStop 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnStop (Instrumentation.java:1476) 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onStop (MainActivity.java:48) 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Stop 2021-02-21 20:54:45.738 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.739 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performSaveInstanceState (Fragment.java:2863) 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onSaveInstanceState (FirstFragment.java:101) 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onSaveInstanceState 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: │ Activity.performSaveInstanceState (Activity.java:2163) 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onSaveInstanceState (MainActivity.java:72) 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity onSaveInstanceState 2222 2021-02-21 20:54:45.741 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.743 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.743 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.743 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.743 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performDestroy (Fragment.java:2927) 2021-02-21 20:54:45.743 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onDestroy (FirstFragment.java:95) 2021-02-21 20:54:45.743 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.743 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onDestroy 2021-02-21 20:54:45.743 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.743 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.745 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.745 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.745 18086-18086/com.example.myfirstapp I/SoapAPP: │ Activity.performDestroy (Activity.java:8245) 2021-02-21 20:54:45.745 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onDestroy (MainActivity.java:78) 2021-02-21 20:54:45.745 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.746 18086-18086/com.example.myfirstapp I/SoapAPP: │ Activity Destroy 2021-02-21 20:54:45.746 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.767 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.768 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.768 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.768 18086-18086/com.example.myfirstapp I/SoapAPP: │ Activity.performCreate (Activity.java:8000) 2021-02-21 20:54:45.768 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onCreate (MainActivity.java:23) 2021-02-21 20:54:45.768 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.768 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Create 2021-02-21 20:54:45.768 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.788 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.789 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.789 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.789 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performCreate (Fragment.java:2684) 2021-02-21 20:54:45.789 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onCreate (FirstFragment.java:70) 2021-02-21 20:54:45.789 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.789 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onCreate Bundle null:false 2021-02-21 20:54:45.789 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.831 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.832 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.832 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.832 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performStart (Fragment.java:2730) 2021-02-21 20:54:45.832 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onStart (FirstFragment.java:77) 2021-02-21 20:54:45.832 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.832 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onStart 2021-02-21 20:54:45.832 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.832 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.833 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.833 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.833 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnStart (Instrumentation.java:1435) 2021-02-21 20:54:45.833 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onStart (MainActivity.java:42) 2021-02-21 20:54:45.833 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.833 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Start 2021-02-21 20:54:45.833 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.834 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.835 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.835 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.835 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnResume (Instrumentation.java:1456) 2021-02-21 20:54:45.835 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onResume (MainActivity.java:60) 2021-02-21 20:54:45.835 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.835 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Resume 2021-02-21 20:54:45.835 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.836 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:45.837 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:45.837 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.837 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performResume (Fragment.java:2747) 2021-02-21 20:54:45.837 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onResume (FirstFragment.java:83) 2021-02-21 20:54:45.837 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:45.837 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onResume 2021-02-21 20:54:45.837 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:54.127 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:54.127 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:54.127 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:54.127 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performStop (Fragment.java:2894) 2021-02-21 20:54:54.127 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onStop (FirstFragment.java:89) 2021-02-21 20:54:54.127 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:54.127 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onStop 2021-02-21 20:54:54.127 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:54.127 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:54.128 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:54.128 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:54.128 18086-18086/com.example.myfirstapp I/SoapAPP: │ Instrumentation.callActivityOnStop (Instrumentation.java:1476) 2021-02-21 20:54:54.128 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onStop (MainActivity.java:48) 2021-02-21 20:54:54.128 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:54.128 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Activity Stop 2021-02-21 20:54:54.128 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:54.130 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:54.130 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: │ Fragment.performDestroy (Fragment.java:2927) 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onDestroy (FirstFragment.java:95) 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: │ ~~~~~~~~~~Fragment onDestroy 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: │ Activity.performDestroy (Activity.java:8245) 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: │ MainActivity.onDestroy (MainActivity.java:78) 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: │ Activity Destroy 2021-02-21 20:54:54.131 18086-18086/com.example.myfirstapp I/SoapAPP: └────────────────────────────────────────────────────────────────────────────────────────────────────────────────
6 系统进程被手动清楚 debug上显示进程终止 自定义日志后面就没有了。。。。。
小小总结:
这篇博客的最后一部分就是重点讲下onSaveInstanceState 本来这个概念也就这么过去了,缘于一次预期的翻车
我把Count加到7,就是TextView的Text设到7 然后翻转屏幕 翻车,Text回到解放前了,难道是没有onSaveInstanceState? 翻了日志onSaveInstanceState是执行过了 加了日志
@Override public void onCreate(@Nullable Bundle savedInstanceState) { Logger.i("~~~~~~~~~~Fragment onCreate Bundle null:" + (savedInstanceState == null ) ); super.onCreate(savedInstanceState); }
验证savedInstanceState是不是有值,验证下来也是有的 后面再加一个EditText控件上去,再加点字上去 翻回来 EditText还是保存了,onSaveInstanceState还区别对待啊
好吧自己动手丰衣足食 在FirstFragment加上下面的代码
@Override public void onSaveInstanceState(@NonNull Bundle outState) { super.onSaveInstanceState(outState); Logger.i("~~~~~~~~~~Fragment onSaveInstanceState"); String countString = showCountTextView.getText().toString(); Logger.i("Save Count: %s", countString ); outState.putString("MyCount", countString); } @Override public void onViewStateRestored(@Nullable Bundle savedInstanceState) { super.onViewStateRestored(savedInstanceState); if( savedInstanceState != null ) { Logger.i("Fragment onViewStateRestored"); String countString = savedInstanceState.getString("MyCount"); Logger.i("Load Count: %s", countString); showCountTextView.setText(countString); } }
2021-02-21 22:01:37.321 19195-19195/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 22:01:37.321 19195-19195/com.example.myfirstapp I/SoapAPP: │ Fragment.performSaveInstanceState (Fragment.java:2863) 2021-02-21 22:01:37.321 19195-19195/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onSaveInstanceState (FirstFragment.java:103) 2021-02-21 22:01:37.321 19195-19195/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 22:01:37.321 19195-19195/com.example.myfirstapp I/SoapAPP: │ Save Count: 6 2021-02-21 22:01:37.321 19195-19195/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 22:01:37.403 19195-19195/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 22:01:37.403 19195-19195/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 22:01:37.403 19195-19195/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 22:01:37.403 19195-19195/com.example.myfirstapp I/SoapAPP: │ Fragment.restoreViewState (Fragment.java:577) 2021-02-21 22:01:37.403 19195-19195/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onViewStateRestored (FirstFragment.java:111) 2021-02-21 22:01:37.404 19195-19195/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 22:01:37.404 19195-19195/com.example.myfirstapp I/SoapAPP: │ Fragment onViewStateRestored 2021-02-21 22:01:37.404 19195-19195/com.example.myfirstapp I/SoapAPP: └──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 22:01:37.404 19195-19195/com.example.myfirstapp I/SoapAPP: ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────── 2021-02-21 22:01:37.404 19195-19195/com.example.myfirstapp I/SoapAPP: │ Thread: main 2021-02-21 22:01:37.404 19195-19195/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 22:01:37.404 19195-19195/com.example.myfirstapp I/SoapAPP: │ Fragment.restoreViewState (Fragment.java:577) 2021-02-21 22:01:37.404 19195-19195/com.example.myfirstapp I/SoapAPP: │ FirstFragment.onViewStateRestored (FirstFragment.java:113) 2021-02-21 22:01:37.404 19195-19195/com.example.myfirstapp I/SoapAPP: ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 2021-02-21 22:01:37.404 19195-19195/com.example.myfirstapp I/SoapAPP: │ Load Count: 6 2021-02-21 22:01:37.404 19195-19195/com.example.myfirstapp I/SoapAPP: └────────────────────────────────────────────────────────────────────────────────────────────────────────────────
小小总结 onSaveInstanceState就是执行一次对需要保存对象的序列化操作, 加载的时候进行反序列化操作,正好是一次正反操作。 序列化历史悠久,最高还是在asp.net里面有这个概念。ViewState的客户端和服务器端的序列化和反序列化,这次用到了安卓这个概念。以前在asp.net页面上会偷偷放一个加密过的序列化的一堆字符串,页面控件越多,这个对象越大。 序列化反序列化都是要开销的。这里建议Bundle要尽量的小。如果有大量数据还是希望另外处理的
最后的最后 MyFirstAPPGithub的地址
The text was updated successfully, but these errors were encountered:
No branches or pull requests
发现官网里面的教程做扶梯非常棒,所以跟着教程一步步做,一边巩固概念,一边熟悉AS这个新IDE。整个一套下来还是有所收获的。
安卓教程首页
我选择了这个教程作为切入点
教程入口
首先安卓有安卓整个世界观,这个和windows是完全不同的系统。以前WPF的经验切忌不可僵化套用,只有某种程度上的相似性
首先安卓拥有4种应用 组件 App components
Activities
Services
Broadcast receivers
Content providers
Activity 是安卓的核心组件。我上一篇Hello World中,就只有Activity。官方解释为Activity 是与用户交互的入口点。入口点这是和windows最大的区别点。打一个现实世界的比喻。一个Activity安卓程序的门,而一个安卓应用可能有很多扇门进去,当然从桌面上点进去进入的Activity是main Activity,就是正大光明的大门。当然还有一些不同目的的小门,如果一个PDF的APP就提供了传入一个PDF访问地址的Activity,之后就直接展示相关PDF文档。而windows永远只有一个MainWindows。如果Activity对标WPF的话相当于Windows。
非常重要的不同之处
5.生命周期的特殊性
这也是安卓应用的特点,windows里面我们从不担心windows会被杀掉或者重建,一旦创建显示以后。要么就是关闭要么就是最小化,或者不在Active状态。windows的生命周期平时我们在开发的时候没有这么的“关心”。而安卓的APP完全不同。他需要考虑自己在操作的状态(Resume),显示未操作小窗模式(Pause),按了home键,被其他应用冲掉了,打电话了等等未显示的状态(Stop),在后台时间太长了被系统释放了(Destroy)。再被调用到前台(Restart)。可以说安卓的Activity 的特点就是这么的“颠沛流离”,是一个状态多变的组件。了解掌握好Activity 的状态以及迁移关系,做好状态切换相关的用户体验也是学好Activity 的关键
Application(android.app.Application)
被忽略的Application。吐槽下学习安卓一个非常奇怪的现象。官网的教程从头到尾都没有详细讲到这个类,为啥一个这么重要的知识点不单独开一个章节那。
因为引用日志组件的需要。我需要找到一个安卓全局初始化的入口,翻了官网半天没找到,最后自定义一个Application的派生类来完成这个任务
和WPF的System.Windows.Application完美对标
他作为应用的核心类
肩负了整个应用级别的回调函数(暂时只列出目前用到的)
Fragment
Fragment,教程里面是安排和Activity一同学习的。从我的理解来说Fragment是依附于Activity。他比Activity要轻,同时继承了Activity一些元素
同WPF类比,他更加类似于UserControl。这个特性和React的控件一样,是UI具有极高的 复用性/独立性/扩展性。教程里面的Fragment是和navigation结合起来的。目前Fragment还没用出比较惊艳的效果,我会在后面的学习中进一步探索
教程本身没啥太多亮点
吐槽下Navigation修改了参数以后,相关代码生成的FragmentDirection构造函数并不会马上修改,一定要重新Make Project(相当于Rebuild)
Application、Activity 、Fragment生命周期探究
为了方便日志特意引入了logger组件
logger的github
在build.gradle(Module:My_First_APP.app)里面
dependencies { implementation 'com.orhanobut:logger:2.2.0' }
增加一个APP.java 继承Application
在MainActivity.java中主要的生命周期回调都加入了日志
FirstFragment.java
这里出现了意外,Activity并没有调用onSaveInstanceState回调
后来发现原来是搞错了回调函数onSaveInstanceState,一共有两个哦
注意,这里~~~~~~~~~~Activity onSaveInstanceState 1111并没有被执行,真正生效的是下面一个回调
接下来执行我们的计划来看看各个组件的生命周期切换状况
未完待续...,晚上再更
1程序启动完成
2 程序被隐藏
3 开始重新显示APP
4 翻转一次屏幕
5 APP重现显示后,再次翻转回来
6 系统进程被手动清楚
debug上显示进程终止
自定义日志后面就没有了。。。。。
小小总结:
这篇博客的最后一部分就是重点讲下onSaveInstanceState
本来这个概念也就这么过去了,缘于一次预期的翻车
我把Count加到7,就是TextView的Text设到7
然后翻转屏幕
翻车,Text回到解放前了,难道是没有onSaveInstanceState?
翻了日志onSaveInstanceState是执行过了
加了日志
验证savedInstanceState是不是有值,验证下来也是有的
后面再加一个EditText控件上去,再加点字上去
翻回来
EditText还是保存了,onSaveInstanceState还区别对待啊
好吧自己动手丰衣足食
在FirstFragment加上下面的代码
小小总结
onSaveInstanceState就是执行一次对需要保存对象的序列化操作,
加载的时候进行反序列化操作,正好是一次正反操作。
序列化历史悠久,最高还是在asp.net里面有这个概念。ViewState的客户端和服务器端的序列化和反序列化,这次用到了安卓这个概念。以前在asp.net页面上会偷偷放一个加密过的序列化的一堆字符串,页面控件越多,这个对象越大。
序列化反序列化都是要开销的。这里建议Bundle要尽量的小。如果有大量数据还是希望另外处理的
最后的最后
MyFirstAPPGithub的地址
The text was updated successfully, but these errors were encountered: