[英]Can background services keep running when the App Data is encrypted in iOS
我正在嘗試研究創建一個在后台運行后台服務的iOS應用程序。 該后台服務需要訪問應用程序數據。
我也希望存儲在設備上的應用程序數據被加密。 但是它在Apple Developer頁面的說明中說,如果應用程序數據被加密,則只有在用戶解鎖手機后才能訪問它。
這是否意味着如果后台服務以任何方式要求應用程序數據,將不允許其訪問它?
后台中可用的訪問取決於分配給數據的保護級別。 默認情況下, NSFileProtectionCompleteUntilFirstUserAuthentication
應用於您的應用創建的數據。 該保護等級將不允許訪問數據,直到重啟后用戶首次將設備解鎖后。 首次解鎖設備后,訪問才可用,直到下次重新啟動設備為止。
如果您需要應用程序在重新啟動后的首次解鎖之前能夠訪問數據,則可以應用NSFileProtectionNone
。 請注意,即使應用了此級別,iOS設備上的所有數據也會被加密,但是在這種情況下,解密數據所需的密鑰存儲在設備上,並且不需要用戶的密碼來生成解密密鑰。
有關更多信息,請參閱Apple的iOS安全指南和NSFileManager文檔。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.