01/10/2018, 12:08

Prevent Service from stopping when task is killed

Mình có một Service nhưng khi task bị giết (bị kéo ngang qua trong recent app) thì theo quy luật thì nó cũng sẽ giết hết process và service. Nhưng mình muốn service vẫn tiếp tục chạy và không bị ảnh hưởng bởi task.
Có cách nào làm được như vậy không?
Mình thấy mấy app như Google, Facebook hay ZingMP3 luôn có 1 process và 1 service mặc dù chả có task nào cả.

Hung Nguyen viết 14:10 ngày 01/10/2018

trong onStrartCommand của Service bạn return START_STICKY thì service sẽ tự động khởi động lại khi bị kill

thanggun99 viết 14:10 ngày 01/10/2018

https://developer.android.com/guide/components/services.html

ngoài ra trên một số thiết bị android bị hạn chế service chạy ngầm trong phần cài đặt, ví dụ như MI phone của Trung Quốc bạn phải vào phần cài đặt, tắt chế độ hạn chế này và cả ở trong phần cấp quyền, cấp cho nó quyền tự khởi chạy

Phạm Vinh viết 14:17 ngày 01/10/2018

Mình đã thử nhưng không được bạn à. START_STICKY không hoạt động khi mình kéo nó ra khỏi recent app

Phạm Vinh viết 14:13 ngày 01/10/2018

Quyền tự khởi chạy là gì vậy bạn. Tên permission của nó là gì?

Hung Nguyen viết 14:20 ngày 01/10/2018

vẫn khởi động lại bạn nhé, mình đã làm qua phần này rồi, bạn đọc kỹ lại cái link của @Thang_tran1 gửi nhé

Phạm Vinh viết 14:08 ngày 01/10/2018

Ủa kỳ vậy. Hay do dòng điện thoại. Mình test trên con Lenovo A6010

Trần Trọng Đức viết 14:22 ngày 01/10/2018

vẫn được mà nhỉ bạn có thể tham khảo qua ở trang này dù bạn có làm ntn (trừ khi tắt services) thì nó mới dừng nhé
http://o7planning.org/vi/10421/huong-dan-su-dung-service-trong-android

thanggun99 viết 14:17 ngày 01/10/2018

Nó không phải là quyền quản lý của Android mà là của một số hãng điện thoại custom lại, bạn vào cài đặt để tìm ở trong phần pin và hiệu xuất, quản lý quyền ứng dụng, quyền tự khởi chạy

Phạm Vinh viết 14:21 ngày 01/10/2018

@Thang_Tran1 cảm ơn bạn nhưng mình đang kiếm cách làm nó có thể ít phụ thuộc vào custom của nhà phát hành

Cảm ơn mọi người đã giúp đỡ mình. Mình thấy mấy vấn đề này cũng tràn lan trên Stackoverflow nhưng vẫn chưa có câu trả lời cụ thể. Mình định thử dùng BroadcastReceiver hay AlarmManager thể restart service nhưng non quá nên chưa vào đâu cả.

Bài liên quan
0