Your SlideShare is downloading. ×
0
IT120-6. Service
IT120-6. Service
IT120-6. Service
IT120-6. Service
IT120-6. Service
IT120-6. Service
IT120-6. Service
IT120-6. Service
IT120-6. Service
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

IT120-6. Service

8,648

Published on

MultiUni iT120, Bài thuyết trình 6: Service, trinh bay boi Trần Vũ Tất Bình

MultiUni iT120, Bài thuyết trình 6: Service, trinh bay boi Trần Vũ Tất Bình

Published in: Technology, Spiritual
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
8,648
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
275
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • mong muốn = desire chạy nền = run in background
  • Ngắt = disconnecetd
  • nhất thiết = absolutely necessary vận hành = operate tính toán = compute đều đặn = regular kết quả khi nào người dùng cần thì mới xem = the results that the user needs to see
  • Transcript

    • 1. Service MultiUni Trần Vũ Tất Bình
    • 2. Tổng quan
      • Là một trong 4 loại thành phần của một ứng dụng.
      • Service chạy nền và không tương tác trực tiếp với người dùng.
      • Tham khảo:
      • http://developer.android.com/reference/android/app/Service.html
    • 3. Lifecycle – startService() onCreate() onStart() onDestroy() Service đang chạy Service được start lần đầu Service lại được yêu cầu start trong khi đã chạy rồi Bên ngoài gọi stopService() hoặc service tự stop
    • 4. Lifecycle – startService()
      • Khi có một context nào đó gọi startService() để start service mong muốn. Nếu service đó chưa được tạo thì sẽ gọi onCreate() rồi gọi tiếp onStart() và khi đó service chạy nền bên dưới.
      • Nếu sau đó lại có một context muốn start service này mà service đã đang chạy, chỉ có phương thức onStart() của service được gọi.
      • Dù service có được gọi start bao nhiêu lần thì cũng chỉ có 1 instance của service và chỉ cần gọi stopService() một lần để kết thúc service.
    • 5. Lifecycle – bindService() onCreate() onBind() Service đang chạy Activity gọi bindService() để kết nối tới service Bên ngoài gọi unbindService() hoặc kết nối bị ngắt onUnbind() Service không còn kết nối với client nào nữa và cũng ko có context nào start service này onDestroy() Service còn chạy, client muốn kết nối với service onRebind() Lần trước unBind() với client này trả về true
    • 6. Lifecycle – bindService()
      • Thông thường, lifecycle của service khi có client kết nối từ đầu như sau:
        • Cũng bắt đầu bằng onCreate() rồi đến onBind() và service chạy background.
        • Khi không còn client kết nối tới thì service gọi onUnbind() rồi onDestroy().
    • 7. Lifecycle
      • Có một số trường hợp không thông thường, ví dụ như:
        • Có một context khởi động (start) một service, sau đó có một số client kết nối (bind) tới service
        • Có nhiều client cùng lúc kết nối (bind) tới service
        • Một activity vừa gọi startService() vừa gọi bindService()
        • Các bạn có thể tự làm ví dụ để thử các trường hợp này.
    • 8. Xem demo LocalService
      • ApiDemos  src  com.example.android.apis.app
        •  LocalService
        •  LocalServiceBinding
        • LocalServiceController
    • 9. Sử dụng service
        • Dùng trong các ứng dụng nghe nhạc.
        • Dùng để xử lý các thao tác mất thời gian và không nhất thiết phải hiển thị lên activity (download, upload…)
        • Đôi khi cần một ứng dụng vận hành liên tục để xử lý những việc mong muốn mà không làm phiền người dùng  service
        • Làm những thao tác tính toán, xử lý đều đặn nào đó và kết quả khi nào người dùng cần thì mới xem

    ×