Lưu ý: giải pháp bên dưới yêu cầu Android của bạn phải được root.
Tôi tin rằng tự động hóa mà không cần root sẽ giải quyết thẳng vấn đề, vì nó không thay đổi hoặc ghi đè bất cứ điều gì, mà là thực hiện công cụ của riêng nó đối với các thay đổi hiện có. Tôi đã định đăng lên những dòng tương tự cho đến khi tôi nhận ra rằng chìa khóa của giải pháp là một tệp có tên max_brightness
, một tệp bên dưới /sys
, do đó là một phần của nhân Linux và được quản lý trực tiếp bởi nó. Tôi thấy rằng thiết lập giới hạn độ sáng trong tệp đó là cách tốt nhất để đến đây. Bạn có thể không đồng ý với một giải pháp tốt hơn.
Tôi nhận thấy rằng một khi độ sáng tối đa tùy chỉnh của bạn được đặt, cả Android và ứng dụng đều không thể đặt độ sáng vượt quá mức tùy chỉnh đó trừ khi họ thay đổi nội dung của tệp đó, thường là một ứng dụng không có lý do và không ai trong số họ thay đổi. Ngoài ra, tệp được sở hữu bởi root và là một phần của root nhóm, vì vậy bất kỳ ứng dụng hoặc thậm chí system_server nào cũng sẽ yêu cầu quyền root để thực hiện các thay đổi trong tệp đó.
Tìm tập tin đó là một chút khó khăn. Trong thiết bị MTK của tôi với Android 4.2, tệp đó dường như nằm dưới /sys/devices/platform/leds-mt65xx/leds/lcd-backlight/
.
Trong thiết bị Qualcomm của tôi có Android 5.0.2 trở lên, tệp dường như nằm trong /sys/devices/mdp.0/qcom,mdss_fb_primary.168/leds/lcd-backlight/
.
Tôi giả sử rằng cách tốt nhất để tìm tệp đó là chạy truy vấn tìm kiếm (thiết lập adb cho điều đó), chẳng hạn như:
(Yêu cầu bận rộn )
adb shell su -c 'find /sys/ -type f -iname "max_brightness"'
Trong thiết bị Qualcomm của tôi, đầu ra mà nó mang lại là:
/sys/devices/f9924000.i2c/i2c-2/2-0068/leds/red/max_brightness
/sys/devices/f9924000.i2c/i2c-2/2-0068/leds/blue/max_brightness
/sys/devices/f9924000.i2c/i2c-2/2-0068/leds/green/max_brightness
/sys/devices/mdp.0/qcom,mdss_fb_primary.168/leds/lcd-backlight / max_brightness
/sys/devices/qcom,camera-led-flash.81/leds/torch-light/max_brightness
/sys/devices/msm_sdcc.1/leds/mmc0::/max_brightness
/sys/devices/msm_sdcc.2/leds/mmc1::/max_brightness
/ sys / thiết bị / 01-qcom, led-d300 / leds / led: flash_torch / max_brightness
/ sys / thiết bị / 01-qcom, led-d300 / leds / led: flash_0 / max_brightness
/ sys / thiết bị / 01-qcom, led-d300 / leds / led: flash_1 / max_brightness
/ sys / thiết bị / 01-qcom, led-e200 / leds / kpdbl-lut-2 / max_brightness
/ sys / thiết bị / 01-qcom, led-e200 / leds / kpdbl-pwm-3 / max_brightness
/ sys / thiết bị / 01-qcom, led-e200 / leds / kpdbl-pwm-4 / max_brightness
/ sys / thiết bị / 01-qcom, led-e200 / leds / button-backlight / max_brightness
Vị trí lcd-backlight
được đề cập là nơi duy nhất có ý nghĩa với tôi và đây là cách tôi tìm thấy tệp trong thiết bị của mình. Đừng lo lắng hỏi về người khác. Tôi đã cố gắng thay đổi độ sáng của màn hình và tìm kiếm những thay đổi trong tệp có tên brightness
(cũng nằm dưới những vị trí đã nói). Không ai trong số họ phản ánh đầu ra chính xác ngoài đầu ra tại /sys/devices/mdp.0/qcom,mdss_fb_primary.168/leds/lcd-backlight
.
Chỉ để trình diễn, hãy thử đặt giới hạn trong max_brightness
adb shell su -c 'echo LIMIT > PATH_TO_MAX_BRIGHTNESS' # in my case PATH_TO_MAX_BRIGHTNESS is /sys/devices/mdp.0/qcom,mdss_fb_primary.168/leds/lcd-backlight/ and set LIMIT to a value less than 30 (not limited to).
Bây giờ hãy thử tối đa hóa độ sáng bằng cách sử dụng thanh trượt độ sáng hoặc ứng dụng của bên thứ ba và bạn sẽ nhận thấy rằng độ sáng của màn hình của bạn không vượt quá một điểm nhất định ngay cả khi thanh trượt hoặc cấu hình của ứng dụng xuất hiện tối đa. Độ sáng cho "điểm nhất định" đó chắc chắn sẽ thấp hơn điểm mặc định mà bạn đã quen.
Lưu ý rằng giá trị tối đa trong max_brightness thường được tìm thấy là 255 và độ sáng nằm trong khoảng 0-255. Thông thường, không phải lúc nào cũng đúng, đó là. Và đừng sợ đặt giới hạn thành 0. Nó sẽ khiến màn hình không sáng cho đến khi bạn hoàn nguyên các thay đổi hoặc khởi động lại thiết bị.
Tìm một giới hạn sẽ không làm phiền bạn trong giấc ngủ hoặc làm cạn kiệt pin khi pin cạn nước.
Tự động hóa
Để tự động hóa , hãy sử dụng bất kỳ ứng dụng tự động hóa nào có thể chạy lệnh với đặc quyền gốc và khi bối cảnh kích hoạt ưa thích của bạn được đáp ứng. Tôi đề nghị một kích hoạt dựa trên thời gian.
Một số ví dụ hoạt động:
Trong Tasker , thiết lập một hồ sơ cá nhân với bối cảnh ưa thích của bạn, tạo ra một nhiệm vụ và sử dụng các hành động: Mã → Run Shell:
- Chỉ huy:
echo LIMIT > PATH_TO_MAX_BRIGHTNESS
- kiểm tra sử dụng Root
Trong MacroDroid , thiết lập trình kích hoạt ưa thích của bạn và để cài đặt hành động Cài đặt bảo mật , chọn nó → Hành động → Chạy lệnh:
- Chỉ huy:
echo LIMIT > PATH_TO_MAX_BRIGHTNESS
- kiểm tra sử dụng Root
Trong Tự động hóa , là một phần trong luồng của bạn, khi thiết lập hành động cho trình kích hoạt của bạn, chọn trình siêu người dùng lệnh Shell trong Ứng dụng và thực hiện:
- Dòng lệnh:
echo LIMIT > PATH_TO_MAX_BRIGHTNESS
Đảm bảo cài đặt tất cả các quyền mà luồng yêu cầu.
Trong DroidAutomation , thiết lập trình kích hoạt của bạn và theo tác vụ, chọn Root → Thực hiện một dòng lệnh và gõ:echo LIMIT > PATH_TO_MAX_BRIGHTNESS
Như bạn đã đoán, bạn sẽ phải thiết lập hai hồ sơ cho mỗi ứng dụng. Một để thiết lập giới hạn và một để đặt độ sáng tối đa thành mặc định bạn đã sử dụng.
Rõ ràng kích hoạt pin thấp:
Nhân viên
- Trạng thái → Mức pin → đặt phạm vi
- Thay thế: Sự kiện → Hệ thống → Ý định đã nhận → để mọi thứ không bị ảnh hưởng nhưng đặt Hành động thành
android.intent.action.BATTERY_LOW
.
MacroDroid
Thực hiện theo câu trả lời của beeshayms để thiết lập kích hoạt
Tự động hóa
Truy cập Ứng dụng → Nhận phát sóng → để mọi thứ chưa được xử lý nhưng chọn Pin yếu trong Hành động
Tự động hóa Droid
Chọn Pin yếu từ Thêm kích hoạt
Tôi muốn bạn xem xét điều này điều này rằng việc sử dụng pin yếu hoặc kích hoạt pin 100% sẽ đánh bại mục đích của câu trả lời này, đó là ghi đè lên những thay đổi mà Android muốn thực hiện. Ví dụ: nếu bạn thiết lập LIMIT thành 0 bất cứ khi nào pin đạt 100%, điều gì sẽ xảy ra là Android của bạn sẽ sáng màn hình lên tối đa như bình thường và trong vài mili giây (bạn đọc chính xác) ứng dụng tự động hóa của bạn sẽ chạy và đặt giới hạn. Giấc ngủ của bạn có thể bị gián đoạn trong những mili giây đó.
Trong một tình huống khác, khi hệ thống phát ra pin yếu, máy tính bảng của Cool Guy có thể kết thúc với màn hình sáng tối đa và trong vài mili giây, độ sáng sẽ giảm xuống GIỚI HẠN.
Cách giải quyết là thiết lập mức pin lên 16 trở lên đối với kích hoạt pin yếu và 99 hoặc ít hơn để sạc đầy pin.