Swiftでplistを読み込む
iOSのアプリ開発していて、定数どこに書こうか迷ったというはなし。
結論
この記事を書いている時点(2018年6月19日現在 xcode 9.4.1, swift 4, ios 11.4)
色々考えたけどとりあえずリテラルな定数についてはplistでやる。
理由
- plistってproperty listの略だからプロパティはなんでもそこに書いておけばいい気がした
方針
- プロジェクト直下にpropertiesグループを作成
- グループないにplist作成(ただしinfo.plistは他人が見たときにどこいったかわからなくなるので移動しない)
- カテゴリーごとにplist作ったほうがいい気がする
##方法
- ↓のようなPlist作成する(APIアクセスに関するプロパティリスト)

if let urls = Bundle.main.path(forResource: "ApiURL", ofType:"plist" ) {
let plist = NSDictionary(contentsOfFile: urls) as! Dictionary<String, Any>
}
NSDictionaryを介さないでやる方法を調べたのだけど、パッと出てこなかったのでとりあえずこれで。