ตรวจจับการกดปุ่มโฮมใน Android
สิ่งนี้ทำให้ฉันคลั่งไคล้มาระยะหนึ่งแล้ว มีวิธีใดในการตรวจจับได้อย่างน่าเชื่อถือว่ามีการกดปุ่มโฮมในแอปพลิเคชัน Android หรือไม่? หากล้มเหลวมีวิธีที่ชัดเจนในการบอกว่าอะไรทำให้กิจกรรมเข้าสู่ onPause หรือไม่? เช่นเราสามารถตรวจสอบได้ว่าเกิดจากการเปิดตัวกิจกรรมใหม่หรือโดยการกดกลับ / home คำแนะนำอย่างหนึ่งที่ฉันเห็นคือการแทนที่ onPause () และเรียก isFinishing () แต่สิ่งนี้จะส่งคืนเป็นเท็จเมื่อกดปุ่มโฮมเช่นเดียวกับที่จะทำหากกิจกรรมใหม่กำลังเริ่มต้นดังนั้นจึงไม่สามารถแยกความแตกต่างระหว่างทั้งสองได้ ความช่วยเหลือใด ๆ ที่ชื่นชมมาก ** อัปเดต **: ขอบคุณ @ android- หิวสำหรับลิงค์นี้: https://nishandroid.blogspot.com/ การควบคุมวิธีการต่อไปนี้: @Override public void onAttachedToWindow() { super.onAttachedToWindow(); this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD); } จากนั้นเหตุการณ์ต่อไปนี้จะเริ่มขึ้นสำหรับการกดปุ่มโฮม: @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if(keyCode == KeyEvent.KEYCODE_HOME) { …