2011-09-26 66 views
6

Tôi đang phát triển một ứng dụng theo dõi chuyển động của người dùng qua GPS (đặc biệt là đạp xe) và tôi nhận ra rằng khi màn hình tự động khóa, ứng dụng sẽ ngừng chạy (nếu tôi không nhầm, tôi không hoàn toàn chắc chắn về điều này).Tiếp tục chạy ứng dụng sau khi tự động khóa màn hình - Phonegap (Android/iOS)

Có cách nào để ngăn chặn điện thoại tự động khóa không? Hoặc như là một thay thế, là có một cách (bằng cách sử dụng Phonegap) để tiếp tục theo dõi chuyển động của người dùng sau khi màn hình tự động khóa (như là một quá trình nền của một số loại)?

Cảm ơn bạn.

Trả lời

3

Tôi chắc chắn bạn cần sử dụng Service cho việc này. Services có thể được bắt đầu bằng Activities để chạy ẩn - tức là bạn có thể bắt đầu Service theo phương pháp onPause() của Activity.

Dịch vụ là thành phần chạy ẩn để thực hiện các hoạt động dài hạn hoặc để thực hiện công việc cho các quy trình từ xa. Dịch vụ không cung cấp giao diện người dùng. Ví dụ: dịch vụ có thể phát nhạc trong nền trong khi người dùng đang ở trong ứng dụng khác hoặc dịch vụ có thể tìm nạp dữ liệu qua mạng mà không chặn tương tác của người dùng với hoạt động. Một thành phần khác, chẳng hạn như hoạt động , có thể bắt đầu dịch vụ và để cho nó chạy hoặc liên kết với nó theo thứ tự để tương tác với nó.

Nguồn:http://developer.android.com/guide/topics/fundamentals.html

Google cung cấp các nhà phát triển với một hướng dẫn để sử dụng Services trên trang web nhà phát triển Android. Đây là liên kết trực tiếp: http://developer.android.com/guide/topics/fundamentals/services.html

+1

Hầu hết chúng ta đều biết rằng chúng tôi có thể sử dụng dịch vụ để giữ cho ứng dụng Android chạy trong backgroud. Nhưng làm thế nào để bắt đầu một dịch vụ từ SDK Phonegap của Android ... dats vấn đề .... :( –

1

Bạn có thể sử dụng service cho việc này.

0

Bạn có thể thêm plugin để khởi động dịch vụ. Thêm callbacks và phương thức vào plugin để nhận thông báo hoặc truy xuất thông tin. Plugin về cơ bản là một lớp giao tiếp giữa Cordova/Phonegap và bản địa.

Các vấn đề liên quan