我的專案中有不同的環境(從 1 到 9 命名),它們設定在 info.plist “Environment”鍵中。
如何在代碼中訪問這些環境以根據生成存檔的環境更改變數?
例如,假設我在環境 n 上生成了一個存檔。9、我想使用網址“https://example2.com”。粗體部分是我無法弄清楚的部分(假設其余部分也是正確的):
func webViewURLRequest() -> URLRequest {
if **ENVIRONMENT = 1** {
let url = URL.safe(stringURL: "https://example1.com")
}
else {
let url = URL.safe(stringURL: "https://example2.com")
}
return URLRequest(url: url)
}
基于 Leo 的回答的第二次嘗試:
func webViewURLRequest() -> URLRequest {
let environment = Bundle.main.infoDictionary?["Environment"] as? String
if environment == "1" {
let url = URL.safe(stringURL: "https://example1.com")
} else {
let url = URL.safe(stringURL: "https://example2.com")
}
return URLRequest(url: url)
}
uj5u.com熱心網友回復:
您可以使用 BundleinfoDictionary并從那里獲取您的環境值:
Bundle.main.infoDictionary?["CFBundleIdentifier"]
uj5u.com熱心網友回復:
在您的第二次嘗試中,無法在范圍內找到 url,因為您在 if 陳述句中創建了它。假設您的環境已正確找到,您可以將代碼重新排列為類似這樣的內容來測驗它:
func webViewURLRequest() -> URLRequest {
let environment = Bundle.main.infoDictionary?["Environment"] as? String
if environment == "1" {
return URLRequest(url: URL.safe(stringURL: "https://example1.com"))
} else {
return URLRequest(url: URL.safe(stringURL: "https://example2.com"))
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/409123.html
標籤:
