こんにちは私はGitHubでiOS(Swift)パーソナルプロジェクトを公開しようとしていますが、プライベートAPIキーとシークレットをすべての人と共有することを恐れています。
私は解析を使用しているので、AppDelegateに次のようなものがあります。
let applicationId = "mySecretApplicationId"
let clientKey = "mySecretClientKey"
Parse.setApplicationId(applicationId!, clientKey: clientKey!)
「mySecretApplicationId」と「mySecretClientKey」を非表示にしたいのですが、プロジェクト内にこの変数を配置できるプライベートな場所またはディレクトリはありますか?
ありがとう!
すべての重要なキーを保存する.plist
ファイルを使用できます。このファイルを.gitignore
ファイルに入れることは非常に重要です。
あなたの場合、あなたはあなたのkeys.plist
ファイルを次のように設定する必要があります:
そして、次のようにAppDelegate内で使用します。
var keys: NSDictionary?
if let path = NSBundle.mainBundle().pathForResource("Keys", ofType: "plist") {
keys = NSDictionary(contentsOfFile: path)
}
if let dict = keys {
let applicationId = dict["parseApplicationId"] as? String
let clientKey = dict["parseClientKey"] as? String
// Initialize Parse.
Parse.setApplicationId(applicationId!, clientKey: clientKey!)
}
Swift 3アップデート:
if let path = Bundle.main.path(forResource: "Keys", ofType: "plist") {
keys = NSDictionary(contentsOfFile: path)
}
それらを.gitignore
ファイルに追加する構成ファイルに入れます。すべての開発者が独自の構成を作成するために使用できるサンプル構成ファイルをチェックインします。