Biết mỗi activity đều implement các method như onCreate, onStart... nhưng có chắc bạn nắm chính xác trình tự chạy của chúng. Hãy làm 1 bài test nhỏ như sau để kiểm nghiệm:
Tạo 1 activity chính, 1 activity 2. Ta implement các method
onCreate
onStart
onResume
onPause
onStop
onDestroy
và đặt log ở tất cả các method này trong cả 2 activity.
Chạy chương trình , bấm nút chuyển từ Activity chính sang Activity 2. Kết quả thu được như sau:
D/AndroidRuntime( 468): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<
D/AndroidRuntime( 468): CheckJNI is ON
D/AndroidRuntime( 468): --- registering native functions ---
I/ActivityManager( 59): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.aps.test/.OrderTestActivity }
D/AndroidRuntime( 468): Shutting down VM
D/dalvikvm( 468): Debugger has detached; object registry had 1 entries
I/AndroidRuntime( 468): NOTE: attach of thread 'Binder Thread #3' failed
D/dalvikvm( 436): GC_EXPLICIT freed 1421 objects / 94480 bytes in 1668ms
CHẠY CHƯƠNG TRÌNH
D/ACT1 ( 436): onCreate
D/ACT1 ( 436): onStart
D/ACT1 ( 436): onResume
I/ActivityManager( 59): Displayed activity com.aps.test/.OrderTestActivity: 523 ms (total 523 ms)
I/ActivityManager( 59): Starting activity: Intent { cmp=com.aps.test/.Act2 }
BẤM NÚT CHUYỂN SANG ACTIVITY 2
D/ACT1 ( 436): onPause
D/ACT2 ( 436): onStart
D/ACT2 ( 436): onResume
I/ActivityManager( 59): Displayed activity com.aps.test/.Act2: 391 ms (total 391 ms)
D/ACT1 ( 436): onStop
W/KeyCharacterMap( 436): No keyboard for id 0
W/KeyCharacterMap( 436): Using default keymap: /system/usr/keychars/qwerty.kcm.bin
THOÁT KHỎI ACTIVITY 2
D/ACT2 ( 436): onPause
D/ACT1 ( 436): onRestart
D/ACT1 ( 436): onStart
D/ACT1 ( 436): onResume
D/ACT2 ( 436): onStop
D/ACT2 ( 436): onDestroy
THOÁT KHỎI CHƯƠNG TRÌNH (ACTIVITY 1)
D/ACT1 ( 436): onPause
D/ACT1 ( 436): onStop
D/ACT1 ( 436): onDestroy
Thật quá rõ ràng ^^
PS: để lấy log ra file text trên linux: adb logcat -d > log
Code:
https://github.com/famihug/OrderCallWhenChangeActivity
No comments:
Post a Comment