Cách ngăn khóa màn hình trên ứng dụng của tôi nhanh chóng trên iOS


113

Làm cách nào để chỉ ngăn khóa màn hình khi sử dụng Điều hướng?

Waze có tùy chọn để làm điều đó, làm cách nào tôi có thể thực hiện việc này trong Ứng dụng của mình?

Câu trả lời:


241

Dùng cái này:

Mục tiêu-C:

[[UIApplication sharedApplication] setIdleTimerDisabled: YES];

Swift (kế thừa):

UIApplication.sharedApplication().idleTimerDisabled = true

Swift 3 trở lên:

UIApplication.shared.isIdleTimerDisabled = true

Đảm bảo nhập khẩu UIKit.

Đây là liên kết đến tài liệu từ apple.developer.com.


4
Swift nên làUIApplication.sharedApplication().idleTimerDisabled = true
Doug

3
Swift 3:UIApplication.shared.idleTimerDisabled = true
funkenstrahlen

2
Nó đã đổi thànhUIApplication.shared.isIdleTimerDisabled = true
Lucas Farah.

1
thêm dòng này ở đâu? Tôi không có AppDelegate.swift vì tôi đang sử dụng
react

@PradnyanandMilindPohare bạn có thể thêm nó vào bất cứ nơi nào bạn muốn, chỉ cần đảm bảo dòng này được thực thi
Mellao

20

Đối với Swift 3.0, đây là hai tùy chọn tùy thuộc vào nơi bạn muốn gọi mã:

Bên trong AppDelegate.swift:

application.idleTimerDisabled = true

Bên ngoài AppDelegate.swift:

UIApplication.shared().isIdleTimerDisabled = true


2
Đang AppDelegate.swift bên ngoài nên được như thế:UIApplication.shared.isIdleTimerDisabled = false
DevStarlight

13

Swift 4

trong tệp AppDelegate.swift, hãy thêm dòng sau vào bên trong hàm ứng dụng :

    application.isIdleTimerDisabled = true

6

Bạn có thể sử dụng Little lib Ins mất ngủ của tôi (Swift 3, iOS 9+) - một tính năng thú vị khác là bạn có thể ngăn ngủ chỉ khi sạc.

Linh idleTimerDisabledhồn là được nhưng bạn phải nhớ đặt nó thành falsesau đó.


0

Nếu bạn có trường hợp nâng cao hơn, bạn có thể sử dụng dự án nhỏ của chúng tôi: ScreenSleepManager hoặc nếu nó chỉ về ViewControllers cụ thể - sử dụng Ins mất ngủ như đã chỉ ra trước đó. Việc xử lý thủ công idleTimerDisabledhầu như luôn luôn gây ra cho tôi một số vấn đề (như quên đặt lại thành sai hoặc xử lý nhiều mô-đun (lồng nhau) cố gắng đặt nó).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.