когда устанавливать NSKeyedArchiver (требующийSecureCoding: false) - PullRequest
0 голосов
/ 02 октября 2018

Я обновляю часть своего кода, который устарел в IOS12.
Ниже приведен старый код:

    let gameData : NSMutableData = NSMutableData()
    let archiver = NSKeyedArchiver(forWritingWith: gameData)
    archiver.encode(MatchInformationValues.currentMatchInfo, forKey: "MatchData")
    archiver.encode(CurrentGameState.currentGameStatus, forKey: "GameData")
    archiver.finishEncoding()

Новый код, который работает с IOS12:

let archiver = NSKeyedArchiver(requiringSecureCoding: false)
archiver.encode(MatchInformationValues.currentMatchInfo, forKey: "MatchData")
archiver.encode(CurrentGameState.currentGameStatus, forKey: "GameData")
archiver.finishEncoding()
let gameData = archiver.encodedData

Я пытаюсь понять свойство "requireSecureCoding:".Когда вы устанавливаете значение true и когда используете false?Мои данные - это просто словарь, содержащий игровые данные, поэтому мне кажется, что я должен использовать false, но это всего лишь предположение.Документация Apple не дает никаких указаний, когда использовать истину или ложь.Любое понимание будет оценено.

...