Bắt đầu với iOS 7, API đa nhiệm của Apple cho phép ứng dụng chạy trong ba Chế độ nền mới: Tìm nạp nền, Nội dung thông báo từ xa và Dịch vụ chuyển nền. Apple cũng cung cấp cho người dùng iOS khả năng kiểm soát xem tất cả các ứng dụng có được phép chạy trong nền hay cho dù các ứng dụng riêng lẻ có thể chạy trong nền hay không (Cài đặt> Chung> Làm mới ứng dụng nền). Có cách nào để ứng dụng của tôi có thể phát hiện chương trình cho dù người dùng đã tắt khả năng làm mới của ứng dụng của tôi trong nền không?Phát hiện cài đặt người dùng cho Làm mới ứng dụng nền trong iOS 7
40
A
Trả lời
69
đây là những gì bạn đang tìm kiếm.
if ([[UIApplication sharedApplication] backgroundRefreshStatus] == UIBackgroundRefreshStatusAvailable) {
NSLog(@"Background updates are available for the app.");
}else if([[UIApplication sharedApplication] backgroundRefreshStatus] == UIBackgroundRefreshStatusDenied)
{
NSLog(@"The user explicitly disabled background behavior for this app or for the whole system.");
}else if([[UIApplication sharedApplication] backgroundRefreshStatus] == UIBackgroundRefreshStatusRestricted)
{
NSLog(@"Background updates are unavailable and the user cannot enable them again. For example, this status can occur when parental controls are in effect for the current user.");
}
8
Kiểm tra thuộc tính backgroundRefreshStatus của UIApplication. Sau đây là trích dẫn từ tài liệu apple.
Thuộc tính này phản ánh liệu ứng dụng có thể được đưa vào nền để xử lý các hành vi nền, chẳng hạn như xử lý cập nhật vị trí nền và thực hiện tải nền. Nếu ứng dụng của bạn dựa vào việc được khởi chạy vào nền để thực hiện các tác vụ, bạn có thể sử dụng giá trị của thuộc tính này để xác định xem có làm như vậy hay không và cảnh báo người dùng nếu không. Không cảnh báo người dùng nếu giá trị của thuộc tính này được đặt thành UIBackgroundRefreshStatusRestricted; người dùng bị hạn chế không có khả năng bật đa nhiệm cho ứng dụng.
3
Cập nhật cho Swift 3 và iOS10:
switch UIApplication.shared.backgroundRefreshStatus {
case .available:
print("Refresh available")
case .denied:
print("Refresh denied")
case .restricted:
print("Refresh restricted")
}
Các vấn đề liên quan
- 1. Phát hiện cài đặt AppStore của ứng dụng iOS
- 2. Làm thế nào để phát hiện có thể phát hiện khi người dùng cài đặt ứng dụng ios từ liên kết được cung cấp?
- 3. Phát hiện phiên bản ứng dụng nào được cài đặt trong iOS?
- 4. Lưu thông tin người dùng trong cài đặt ứng dụng
- 5. Phát hiện xem ứng dụng đã được gỡ cài đặt
- 6. cho phép người dùng Crop ảnh trong ứng dụng iOS
- 7. Phát hiện cài đặt lần đầu tiên trong iOS NOT NSUserDefaults
- 8. iOS Safari phát hiện khi người dùng nhấp vào "Xong" trong trình phát bản địa
- 9. Phát hiện một ứng dụng được cài đặt hay chưa?
- 10. Cài đặt riêng trong Ứng dụng iOS phổ biến?
- 11. Làm cách nào để ứng dụng Delphi phát hiện cài đặt proxy mạng của PC Windows?
- 12. Mục tiêu c - Phát hiện khi người dùng thay đổi cài đặt thông báo của ứng dụng
- 13. Cách tốt nhất để lưu cài đặt người dùng cho ứng dụng .NET là gì?
- 14. Phát hiện từ trình duyệt nếu một ứng dụng cụ thể được cài đặt trong Android
- 15. Làm cách nào để đặt một người dùng admob trong màn hình cài đặt cho hình nền động?
- 16. Xóa cài đặt người dùng cũ
- 17. Facebook: buộc người dùng đăng nhập/cài đặt ứng dụng bằng FBML
- 18. Facebook SDK 3.1 iOS: Xử lý đăng nhập nếu người dùng xóa ứng dụng khỏi Cài đặt Facebook
- 19. Cách giữ cài đặt người dùng khi gỡ cài đặt
- 20. Cài đặt info.plist cho ứng dụng chỉ dành cho iPad
- 21. iOS không nhận được người dùng yêu cầu ứng dụng của người dùng
- 22. Cài đặt ứng dụng
- 23. Làm cách nào để mở ứng dụng Cài đặt khi người dùng nhấn một nút?
- 24. Lưu (Riêng tư) Cài đặt ứng dụng trên iOS?
- 25. Nền tảng điện thoại Windows 7 mới có sử dụng Silverlight cho giao diện người dùng của nó không?
- 26. Cài đặt ứng dụng iOS khác nhau trong cấu hình gỡ lỗi/phát hành?
- 27. Phát hiện người dùng lần đầu tiên trong ứng dụng java
- 28. Làm thế nào để cài đặt XCODE trong nền tảng Windows 7?
- 29. Nhắc người dùng đóng ứng dụng trong khi gỡ cài đặt (trong WiX)
- 30. Phát tệp SoundCloud trong ứng dụng IOS
Cảm ơn, đó là hữu ích. Tuy nhiên, bạn có thể nhận xét về câu hỏi phụ thuộc của tôi trong lĩnh vực này không - http://stackoverflow.com/questions/19235183/uiapplicationbackgroundrefreshstatusdidchangenotification-usage-without-correspo – Ashok
Xin chào, đã gọi phương thức thiS. Trong nền không gọi được –
Tôi ' m đoán nền appRefresh không có gì để làm với các thông báo im lặng là phải không? – Honey