Activity猫的一生-故事解说Activity生命周期

<p>大家好,关于Android中Activity的生命周期,网上大多数文章基本都是直接贴图、翻译API,比较笼统含糊不清。</p>
<p>

</p>
<p> </p>
<p><strong>我就用故事来说一说:</strong></p>
<p>有个人叫User,TA养了几只猫,有只猫叫Activity。User见证了Activity猫的一生。</p>
<p>
</p>
<p> </p>
<p>User想要一只小猫(想用一些功能),于是让一只母猫和一只公猫交配(触摸屏幕打开Activity界面),</p>
<p>之后经过母猫一段时间的孕育(Activity launched),小猫咪出生了(onCreate),取名叫Activity,放在笼子(App)里养。</p>
<p> </p>
<p>主人把它抱出来,小猫咪Activity醒来(onStart)睁开眼(onResume),转转头、伸伸爪子、哭闹着要吃东西...(Activity running)。</p>
<p>然后主人喂食、和它玩(用户在Activity上的操作)...</p>
<p>User觉得和Activity一起的时间差不多够了,就(打开新的Activity)把它关进笼子,和其它猫一边玩去了(Another activity comes into the foreground)。</p>
<p>Activity就开始闭目养神(onPause)...</p>
<p>过了一会儿,主人打开笼子,呼唤它的名字(User returns to the activity),它听到后马上睁开眼(onResume)跑过去和主人玩耍(Activity running)...</p>
<p>后来主人又把它关起来然后走了,Activity继续闭目养神(onPause)...</p>
<p>再后来主人把灯关了(The activity is no longer visible),Activity感觉天黑了就睡了(onStop)...</p>
<p> </p>
<p>不知道什么时候,主人又回来了,一边敲笼子、一边叫着Activity的名字(User navigates to the activity),</p>
<p>Activity被从美梦中拉回了现实世界,恢复了状态(onRestart),然后醒来(onStart)睁开眼(onResume)...</p>
<p>就这样不知不觉过了很久...</p>
<p> </p>
<p>有一次主人(按下主页、多任务或电源按钮)出远门了,好久没回来,家里的食物不够,很快就被大家吃光了(Apps with higher priority need memory)。</p>
<p>由于Activity很弱小(优先级低)、还被关在笼子里(没有绑定前台Service),所以吃到的食物很少。</p>
<p>几顿饥渴后大家都饿昏了,纷纷进入休克状态(App process killed)。</p>
<p>主人回来时看到可怜的Activity一动不动地躺着,怎么都叫不醒,就赶紧送去兽医院抢救(User navigates to the activity)。</p>
<p>医生给它输了血和营养等(系统重新分给内存),经过一段时间后Activity终于复活了,它感觉好像重新从妈妈的肚子里出来一样(onCreate)。</p>
<p>它醒来(onStart)睁开眼(onResume),和主人打打闹闹(Activity running),过了一会儿主人就带着它回家了...</p>
<p> </p>
<p>俗话说,大难不死必有后福,之后主人确实对Activity照顾有加。</p>
<p>可是天有不测风云,有一天Activity被一个坏蛋弄死了(The activity is destroyed by the system)。</p>
<p>Activity死了(onDestroy),User很伤心地把它埋了(Activity shut down)...</p>
<p> </p>
<p>User很留恋和Activity在一起的时光,心有不甘,于是重新要了一只小猫,名字仍然叫Activity...</p>
<p>Activity一天天长大,主人对它非常宠爱,但它却越来越叛逆。</p>
<p>终于有一天,主人受够了,觉得Activity实在太可恶(或者没有利用价值)就(点击返回按钮)把它抛弃了(The activity is finished)...</p>
<p>Activity不适应外部恶劣的环境很快就死了(onDestroy),大自然用风和泥土把它埋葬(Activity shut down)...</p>
<p> </p>
<p>这就是Activity猫的一生。</p>
<p> </p>
<p>ZBLibrary提供了isAlive()、isRunning()等判断Activity、Fragment生命周期状态的方法;</p>
<p>以及runUiThread(Runnable runnable)方法来避免直接runOnUiThread(Runnable runnable)导致在onDestroy后运行崩溃;</p>
<p>还有线程管理类ThreadManager,BaseActivity、BaseFragment内可以runThread(String tag, Runnable runnable)很方便地新开线程,</p>
<p>onDestroy后自动释放,不用担心直接new Thread(runnable).start()在onDestroy后还在运行浪费资源,甚至使用被回收的变量导致崩溃等问题。</p>
<p> </p>
<h1>ZBLibrary-Android快速开发框架</h1>
<p>
</p>
</p><strong>下载试用</strong><br /></p><a href="http://files.cnblogs.com/files/tommylemon/ZBLibraryDemoApp.apk">ZBLibraryDemoApp.apk</a><br /><br /></p><strong>下载地址(觉得不错就<strong>Star支持下吧_)</strong></strong>
</p><a href="https://github.com/TommyLemon/Android-ZBLibrary">https://github.com/TommyLemon/Android-ZBLibrary</a></p>
<p> </p>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容

  • 我们日常开发中,自认为对Activity的生命周期了然于胸(onCreate , onStart , onResu...
    Burjal阅读 5,261评论 1 17
  • 您的应用中的Activity应该做到如下需求: 1.用户在使用应用时接听来电或切换到另一个应用,它不会崩溃。 2....
    正阳Android阅读 522评论 1 0
  • 一、继承结构 java.lang.object-->android.content.Context-->and...
    supory阅读 1,400评论 1 3
  • 001 出句:墨池轻憩月[青山] 对句:瓶菊暗生香[青山] 楹联鉴赏:惜墨池也好,洗墨池也罢,自然可以想象乌云临兮...
    依嵐聽雪阅读 3,528评论 3 3
  • 学好甲骨文,穿越到哪都不怕! 第一天来馆里的时候,子卿还不太会写字,老师讲:三才者,天地人。三光...
    二喵丫阅读 256评论 0 0