【问题标题】:How to work on Firebase project without impacting users?如何在不影响用户的情况下处理 Firebase 项目?
【发布时间】:2018-06-08 15:40:20
【问题描述】:
我希望能够在不影响当前用户的情况下使用我的应用。但是,我仍然想使用当前的数据结构和存储中的文件。我想在没有用户看到这些操作的情况下测试发布数据和查询数据。这样做的最佳方法是什么?
目前我想在 Firebase 中制作另一个项目。我可以导出数据库的 JSON,但我将无法访问存储中的文件?我看不到导出存储中所有文件的方法,所以我不确定如何继续。
更新
不确定我是否应该删除这个问题,因为它似乎与this question 重复。
【问题讨论】:
标签:
ios
firebase
firebase-realtime-database
firebase-storage
【解决方案2】:
查看documentation,您可以通过手动配置您的 GoogleService-Info.plist 来轻松做到这一点:
// Configure with manual options.
let secondaryOptions = FirebaseOptions(googleAppID: "1:27992087142:ios:2a4732a34787067a", gcmSenderID: "27992087142")
secondaryOptions.bundleID = "com.google.firebase.devrel.FiroptionConfiguration"
secondaryOptions.apiKey = "AIzaSyBicqfAZPvMgC7NZkjayUEsrepxuXzZDsk"
secondaryOptions.clientID = "27992087142-ola6qe637ulk8780vl8mo5vogegkm23n.apps.googleusercontent.com"
secondaryOptions.databaseURL = "https://myproject.firebaseio.com"
secondaryOptions.storageBucket = "myproject.appspot.com"
您可以像这样将其合并到您的 AppDelegate 中:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
if !isDebug {
print("setting config for release")
let releaseOptions = FirebaseOptions(googleAppID: "1:27992087142:ios:2a4732a34787067a", gcmSenderID: "27992087142")
releaseOptions.bundleID = "com.myProject"
releaseOptions.apiKey = "AIzaSyBicqfAZPvMgC7NZkjayUEsrepxuXzZDsk"
releaseOptions.clientID = "27992087142-ola6qe637ulk8780vl8mo5vogegkm23n.apps.googleusercontent.com"
releaseOptions.databaseURL = "https://myproject.firebaseio.com"
releaseOptions.storageBucket = "myproject.appspot.com"
FirebaseApp.configure(options: releaseOptions)
}
else {
print("setting config for debug")
let debugOptions = FirebaseOptions(googleAppID: "DebugID", gcmSenderID: "DebugSender")
debugOptions.bundleID = "com.myProjectDebug"
debugOptions.apiKey = "Debug API key"
debugOptions.clientID = "Debug Client ID
debugOptions.databaseURL = "https://myprojectDebug.firebaseio.com"
debugOptions.storageBucket = "myprojectDebug.appspot.com"
FirebaseApp.configure(options: debugOptions)
}
return true
}
然后,您只需翻转isDebug 的值即可确定加载的应用程序版本。使用此方法还允许分析在应用程序的两个版本上工作。对于生产代码,只需删除 isDebug 和 else 情况。