Thứ Ba , Tháng Tám 22 2017
Lập trình android / VIDEO BÀI GIẢNG / Lập trình Android / [Android Cơ Bản] 19c. Các service dựa trên vị trí (tiếp)

[Android Cơ Bản] 19c. Các service dựa trên vị trí (tiếp)

Cập nhật vị trí

Nếu bạn sẵn sàng cập nhật vị trí thì bên cạnh các interface mình đã đề cập tới ở bài trước, bạn sẽ cần phải thực thi LocationListener interface nữa. Interface này cung cấp phương thức callback sau đây mà bạn sẽ cần để thực thi trong lớp activity của bạn.

Sr.No. Phương thức Callback và Mô tả
1 abstract void onLocationChanged(Location location)

Phương thức callback này được sử dụng trong việc nhận các notification từ LocationClient khi mà location được thay đổi.

Chất lượng service của Location

Trong Lập trình android cơ bản, đối tượng LocationRequest được sử dụng để yêu cầu một chất lượng của service (Quality of Service) cho việc cập nhật location từ LocationClient. Sau đây là các phương thức thiết lập mà bạn có thể sử dụng để kiểm soát QoS. Cũng có những phương thức get tương đương mà bạn có thể xem trong document chính thức của Android.

Sr.No. Phương thức và Mô tả
1 setExpirationDuration(long millis)

Thiết lập khoảng thời gian của request, đơn vị Milliseconds

2 setExpirationTime(long millis)

Thiết lập thời gian hết hạn của request, đơn vị millisecond từ lúc bắt đầu boot

3

setFastestInterval(long millis)

Thiết lập khoảng thời gian ngắn nhất cho việc cập nhật Location một cách rõ ràng, đơn vị millisecond

4 setInterval(long millis)

Thiết lập khoảng thời gian mong muốn cho việc kích hoạt các bản cập nhật location, đơn vị millisecond

5 setNumUpdates(int numUpdates)

Thiết lập số lượng bản cập nhật

6 setPriority(int priority)

Thiết lập quyền ưu tiên cho request

Giờ hãy thử ví dụ nếu ứng dụng của bạn muốn một location có độ chính xác cao, nó nên tạo một location request với setPriority(int) được set thành PRIORITY_HIGH_ACCURACY và setInterval(long) khoảng 5 giây. Bạn cũng có thể sử dụng khoảng thời gian lớn hơn hoặc/và các quyền ưu tiên khác như là PRIORITY_LOW_POWER để request cấp độ xác thực “city” hoặc PRIORITY_BALANCED_POWER_ACCURACY cho cấp độ xác thực”block”.

Các activity nên được cân nhắc kỹ lưỡng trong việc loại bỏ tất cả các location request khi mà xâm nhập vào background (ví dụ như là tại onPause()), hoặc ít nhất là sẽ trao đổi yêu cầu tới một khoảng thời gian lớn hơn và chất lượng thấp hơn để tiết kiệm điện năng tiêu thụ.

[Total: 0    Average: 0/5]

Bạn nên xem

[Android cơ bản] 19. Các service dựa trên location

API Android Location giúp bạn có thể dễ dàng xây dựng các ứng dụng xác …

Trả lời

Thư điện tử của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Facebook chat Vietpro