PropertyList - shirai/SwiftLearning GitHub Wiki

PropertyList

概論

目標

  • 概論を説明できる

わかったこと

  • PropertyListとはiOSで利用することができるデータ永続化のためのファイル形式(拡張子.plist)
  • Xcode内でPropertyListを編集するとPropertyListEditorで簡単に編集できる
  • PropertyListの大元のデータはNSDictionaryかNSArrayのデータでなければならない
    • その中に保存できるデータはNSString、NSNumber(実数型、数値型、ブール型に対応)、NSData、NSDate、NSArray、NSDictionary
  • PropertyListはプログラム内で定数宣言するには多いデータ(都道府県など)、プログラム上から変更することのないアプリ固有の設定情報、アプリで使うURLなどの情報を保存するのに向いている
  • 初期で配置されるinfo.plistでATS対応ができる

つぎにやること

■課題アプリ4作成 ■学習まとめ作成

読み込み/書き込み

目標

  • 読み書きできる

わかったこと

  • 作成・更新 new fileでPropertyListを選択し新しいPropertyListを作成する 作成したPropertyListを編集する

  • 取得 // 前提:URL.plistを作成し、その中にurlと言うキーで格納したURLを取り出す NSBundle *bundle = [NSBundle mainBundle]; //URL.plistのファイルパスを取得する NSString *path = [bundle pathForResource:@"URL" ofType:@"plist"]; //パスを使って、URL.plistファイルのデータを取得 NSDictionary *dictionary = [NSDictionary dictionaryWithContentsOfFile:path]; //中に入っているデータを取り出す self.urlString = [NSMutableString stringWithString:dictionary[@"url"]];

  • ATS対応 info.plistにNSAppTransportSecurity(dict)を追加 その中にNSExceptionDomains(dict)を追加 その中に対応させたいURL(dict)を追加 その中に以下3点を追加 NSIncludesSubdomains(BOOL:YES) NSTemporaryExceptionAllowsInsecureHTTPLoads(BOOL:YES) NSTemporaryExceptionRequiresForwardSecrecy(BOOL:NO)

わからなかったこと

  • コードでplistへデータを追加するやり方と、実施機会がわからない

つぎにやること

■課題アプリ4作成 ■学習まとめ作成

参考

Objective-C のPlistを使ってみる。(メモ) iOS9 ATS問題←iOS10で同じ方法でできるかは不明