Thủ thuật Android

Hướng dẫn giới hạn ứng dụng chạy nền trên Android 7 Nougat để tăng thời gian sủ dụng pin

Pin là mối quan tâm hàng đầu đối với bất kỳ người dùng smartphone nào, đặc biệt là với những thiết bị Android khi có quá nhiều dịch vụ ứng dụng được phép chạy ngầm. Sau đây là một số mẹo hữu ích có thể giúp cải thiện pin trên phiên bản Android Nougat bằng cách giới hạn ứng dụng chạy ngầm, mời các bạn cùng tham khảo!

Cách 1: Ngăn chặn các dịch vụ chạy nền thông qua lệnh adb

Trên phiên bản Android Nougat, Google đã giới thiệu một quyền ứng dụng đặc biệt là "RUN_IN_BACKGROUND", và nó chỉ được phép sử dụng bởi các nhà phát triển cho mục đích thử nghiệm và bị ẩn đi. Về cơ bản, RUN_IN_BACKGROUND thực hiện nhiệm vụ cho phép các dịch vụ của ứng dụng chạy liên tục ở chế độ nền. Ví dụ: Ứng dụng nhắn tin có thể kích hoạt đồng bộ hóa và tìm nạp nội dung tin nhắn khi người dùng kết nối internet v.v...

Mặc dù việc luôn hoạt động ở chế độ chạy nền có thể giúp tạo ra những trải nghiệm tốt hơn cho người dùng, nhưng nó lại tiêu tốn quá nhiều năng lượng và tài nguyên hệ thống. Có thể kể đến các ứng dụng phổ biến như Facebook, Facebook Messenger v.v...

Thật may mắn khi cộng đồng lập trình Android đã tìm hiểu và phát hiện ra cách để sử dụng quyền của RUN_IN_BACKGROUND thông qua lệnh adb, giúp người dùng chủ động loại bỏ bất kỳ dịch vụ ứng dụng chạy nền nào nếu muốn. Tất nhiên, việc hạn chế các dịch vụ này sẽ làm giảm khả năng trải nghiệm và hiệu suất hoạt động trên thiết bị, nhưng đổi lại là một lượng lớn năng lượng được giải phóng khỏi việc bị chiếm dụng bởi các ứng dụng (dịch vụ) chạy nền khác.

Các thao tác thực hiện như sau:

 

  • B1: Cài đặt ADB trên máy tính
  • B2: Kết nối thiết bị Android với máy tính và khởi động trình nhập mã lệnh ADB
  • B3: Nhập câu lệnh "adb shell cmd appops set RUN_IN_BACKGROUND ignore" trong đó là tên dịch vụ bạn cần tắt khỏi chế độ chạy nền. Ví dụ: com.android.calculator2
  • B4: Để cấp phép hoạt động ở chế độ chạy nền cho một dịch vụ (ứng dụng) bất kỳ, bạn nhập câu lệnh "adb shell cmd appops set RUN_IN_BACKGROUND allow" trong đó là tên dịch vụ bạn mong muốn. Ví dụ: com.android.calculator2

 

Cách 2: Sử dụng ứng dụng BackgroundRestrictor (cần root)

Mặc dù giải pháp chặn ứng dụng (dịch vụ) chạy nền thông qua ADB hoạt động khá tốt, nhưng có một số ứng dụng cho phép thực hiện thao tác này một cách nhanh chóng và hiệu quả hơn. Cụ thể trong bài viết này là BackgroundRestrictor.

Sau khi cài đặt ứng dụng, bạn sẽ thấy một danh sách bao gồm các ứng dụng và dịch vụ đang hoạt động ở chế độ chạy nền (theo giấy phép RUN_IN_BACKGROUND). Bạn có thể tắt hoặc bật quyền này cho bất kỳ ứng dụng nào trong danh sách bằng cách nhấp vào nút chuyển đổi bên cạnh tên của nó.

 

Hướng dẫn giới hạn
ứng dụng
chạy nền và cải thiện pin cho Android 7 Nougat


Tuy nhiên, một nhược điểm khi sử dụng BackgroundRestrictor chính là đòi hỏi quyền root máy! Nếu như thiết bị của bạn chưa được root hoặc không thể root thì cách duy nhất để kiểm soát RUN_IN_BACKGROUND là thông qua lệnh ADB.

Bạn có thể tải về BackgroundRestrictor thông qua F-Droid hoặc cài đặt trực tiếp bằng file APK đều được nhé:

 

 

Có thể bạn quan tâm:

 

 

Nguồn: Droidviews​, Techrum

Bình luận về bài viết