lifecycle managementdjp3/classes/2015_03_ics163/lectures/lec… · lifecycle management android...
TRANSCRIPT
![Page 1: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/1.jpg)
Lifecycle Management AndroidMobile and Ubiquitous Games ICS 163 Donald J. Patterson
Android documentation
![Page 2: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/2.jpg)
Callback
http://en.wikipedia.org/wiki/Observer_pattern
![Page 3: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/3.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
• Unlike traditional Java, Android does not use a “main” function
• It uses a sophisticated set of callbacks
• Each step of the callback corresponds to a step in the lifecycle
of the app
• This is so that the phone can shut your app down when
important things happen, like a phone calls arriving or when a
user switches apps
• An implementation of the Activity class contains the callbacks
![Page 4: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/4.jpg)
Callback
http://en.wikipedia.org/wiki/Observer_patternhttp://en.wikipedia.org/wiki/Observer_pattern
Activity Class
![Page 5: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/5.jpg)
Callback
http://en.wikipedia.org/wiki/Observer_patternhttp://en.wikipedia.org/wiki/Observer_pattern
Your Activity
![Page 6: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/6.jpg)
Callback
http://en.wikipedia.org/wiki/Observer_patternhttp://en.wikipedia.org/wiki/Observer_pattern
Android OS
![Page 7: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/7.jpg)
Lifecycle Management
![Page 8: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/8.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
• Key loops
• Entire Lifetime
• onCreate()- onDestroy()
“+notify()”
![Page 9: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/9.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
• Key loops
• Visible Lifetime
• onStart() - onStop()
![Page 10: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/10.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
• Key loops
• Foreground Lifetime
• onResume() - onPause()
![Page 11: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/11.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
• onPause() may be followed by kill
![Page 12: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/12.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
• Does not crash if the user receives a phone call or switches to another app while
using your app.
• Does not consume valuable system resources when the user is not actively using it.
• Does not lose the user's progress if they leave your app and return to it at a later time.
• Does not crash or lose the user's progress when the screen rotates between
landscape and portrait orientation.
Why do you care? So that your app …
![Page 13: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/13.jpg)
Activity Stack
![Page 14: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/14.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 15: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/15.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 16: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/16.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 17: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/17.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 18: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/18.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 19: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/19.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 20: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/20.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 21: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/21.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 22: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/22.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 23: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/23.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 24: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/24.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 25: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/25.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 26: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/26.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 27: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/27.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 28: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/28.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 29: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/29.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 30: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/30.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 31: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/31.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 32: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/32.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 33: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/33.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 34: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/34.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 35: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/35.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 36: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/36.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 37: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/37.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 38: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/38.jpg)
Activity Lifecycle
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 39: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/39.jpg)
Activity Lifecycle
![Page 40: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/40.jpg)
The Manifest
![Page 41: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/41.jpg)
The Manifest
http://developer.android.com/training/basics/activity-lifecycle/starting.html
![Page 42: Lifecycle Managementdjp3/classes/2015_03_ICS163/Lectures/Lec… · Lifecycle Management Android Mobile and Ubiquitous Games ICS 163 Donald J. Patterson Android documentation](https://reader036.vdocuments.mx/reader036/viewer/2022062602/5ed6a96439f16f294d573ab5/html5/thumbnails/42.jpg)