ก่อนที่จะทำเครื่องหมายโพสต์นี้ว่า "ซ้ำ" ฉันกำลังเขียนโพสต์นี้เนื่องจากไม่มีโพสต์อื่นใดที่ช่วยแก้ปัญหาได้
ฉันกำลังพยายามปิดอุปกรณ์หลังจากนั้นไม่กี่นาทีหรือเปลี่ยนเซ็นเซอร์ให้เปิดอีกครั้ง
ปิดการทดสอบการแสดงผล
ฉันสามารถปิดหน้าจอโดยใช้:
params.flags |= LayoutParams.FLAG_KEEP_SCREEN_ON;
params.screenBrightness = 0;
getWindow().setAttributes(params);
ฉันไม่สามารถปิดหน้าจอโดยใช้วิธี wl.release () ได้
เปิดการทดสอบการแสดงผล
การเดาครั้งแรกของฉันดังต่อไปนี้ไม่ได้ผล ไม่มีอะไรเกิดขึ้นหน้าจอยังคงปิดอยู่
params.flags |= LayoutParams.FLAG_KEEP_SCREEN_ON;
params.screenBrightness = -1f;
getWindow().setAttributes(params);
จากนั้นฉันก็พยายามใช้ wakelocks แต่ก็ไม่ประสบความสำเร็จ
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "tag");
wl.acquire();
ในที่สุดฉันก็ได้ลองทำสิ่งต่อไปนี้ แต่ก็ไม่มีผลลัพธ์
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
สรุปแล้วฉันไม่ได้รับข้อผิดพลาดใด ๆ ในคอนโซลสำหรับวิธีการเหล่านี้ ข้อความทดสอบของฉัน "ควรเปิดหน้าจอ" อยู่บนหน้าจอเมื่อฉันเปิดอุปกรณ์โดยใช้ปุ่มเปิด / ปิด นี่แสดงว่าโค้ดควรทำงานแล้ว โปรดตอบเฉพาะในกรณีที่คุณได้ทดสอบโค้ดดูเหมือนว่าฟังก์ชันหลายอย่างเช่นparams.screenBrightness = -1ไม่ทำงานตามที่ควรจะเป็นตาม sdk