您好我试图在GitHub中发布iOS(SWIFT)个人项目,但我害怕与所有人共享我的私有API密钥和秘密。
我正在使用解析,所以我在AppDelegate中有这样的东西:
let applicationId = "mySecretApplicationId"
let clientKey = "mySecretClientKey"
Parse.setApplicationId(applicationId!, clientKey: clientKey!)
我想隐藏" mySecretApplicationId"和#34; mySecretClientKey",在我的项目中有私有地方或目录,我可以把这些变量放在哪里?
谢谢!
答案 0 :(得分:30)
您可以使用.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)
}
答案 1 :(得分:2)
将它们放入您添加到.gitignore
文件的配置文件中。检入每个开发人员可以用来创建自己的配置的示例配置文件。