Facebook Auth 和 Firebase - 如何在同一 Facebook 应用程序下添加 4 个应用程序?
Facebook Auth and Firebase - How to add 4 apps under same Facebook app?
假设我有 4 个应用程序,"Uber Clone" 用于 iOS 和 Android,"Uber Driver Clone" 用于 iOS 和 Android。我为所有 4 个使用相同的 Firebase 项目,因为它们共享相同的数据库。
虽然谈到 Facebook 身份验证,但我只能将一个 Facebook 应用程序添加到 Firebase。对于每个 Facebook 应用程序,我只能添加一个 iOS 和一个 Android 应用程序。因此,我该如何进行这项工作?
Firebases,recommendation/solution 有什么想法吗?
允许单个 Facebook 应用程序连接到多个 iOS 应用程序和多个 Android 应用程序。
对于 iOS 个应用,您可以在 Facebook 应用设置页面指定多个 Bundle ID
。
假设您正在使用 Firebase 进行身份验证,我假设您也在使用实时数据库或 Cloud Firestore 来存储用户数据。
在您的用户数据模型中,您可以添加用户类型。
例如,
user_type : "driver"
然后这样查询用户:
DBreference.collection("users").whereField("user_type", isEqualTo: "driver").getDocuments() {(querySnapshot, error) in
if error != nil { print(error.debugDescription)
return
}
else if let users = querySnapshot.documents {
for user in users {
guard let userType = user.data()["user_type"] as? String else { return }
print(userType)
}
}
}
这样您就不必创建多个 Facebook 应用程序。只需使用您拥有的那个并相应地细分用户和他们的特权。
例如,在两个应用程序上登录时,检查用户是尝试以 driver 还是乘客身份登录。
if currentUser.userType != "passenger" {
print("You can't log into the passanger app with your driver's account.")
}
希望对您有所帮助。
单个 Facebook 应用上的多个应用
- 转到您的 Facebook 开发者控制台
- 转到您的应用页面
- 进入基本设置
- 添加所有相关的捆绑 ID
- 关键在于:为每个应用添加不同的URL Scheme后缀。这会在您的单个 Facebook 应用程序下区分每个 iOS 应用程序。
- 在您的每个应用程序中 info.plist 添加后缀信息(确保更新 URL 方案并添加 "FacebookURLSchemeSuffix"!)
- 现在您的每个应用程序都在同一个 Facebook 应用程序下,因此可以在同一个 Firebase 实时数据库下注册。查看此以获取更多信息:Two iOS apps using the same Facebook app ID - is it possible?
在这个时间点,似乎不可能在一个 Firebase 实时数据库下拥有多个 FB 应用程序。
假设我有 4 个应用程序,"Uber Clone" 用于 iOS 和 Android,"Uber Driver Clone" 用于 iOS 和 Android。我为所有 4 个使用相同的 Firebase 项目,因为它们共享相同的数据库。
虽然谈到 Facebook 身份验证,但我只能将一个 Facebook 应用程序添加到 Firebase。对于每个 Facebook 应用程序,我只能添加一个 iOS 和一个 Android 应用程序。因此,我该如何进行这项工作?
Firebases,recommendation/solution 有什么想法吗?
允许单个 Facebook 应用程序连接到多个 iOS 应用程序和多个 Android 应用程序。
对于 iOS 个应用,您可以在 Facebook 应用设置页面指定多个 Bundle ID
。
假设您正在使用 Firebase 进行身份验证,我假设您也在使用实时数据库或 Cloud Firestore 来存储用户数据。 在您的用户数据模型中,您可以添加用户类型。
例如,
user_type : "driver"
然后这样查询用户:
DBreference.collection("users").whereField("user_type", isEqualTo: "driver").getDocuments() {(querySnapshot, error) in
if error != nil { print(error.debugDescription)
return
}
else if let users = querySnapshot.documents {
for user in users {
guard let userType = user.data()["user_type"] as? String else { return }
print(userType)
}
}
}
这样您就不必创建多个 Facebook 应用程序。只需使用您拥有的那个并相应地细分用户和他们的特权。 例如,在两个应用程序上登录时,检查用户是尝试以 driver 还是乘客身份登录。
if currentUser.userType != "passenger" {
print("You can't log into the passanger app with your driver's account.")
}
希望对您有所帮助。
单个 Facebook 应用上的多个应用
- 转到您的 Facebook 开发者控制台
- 转到您的应用页面
- 进入基本设置
- 添加所有相关的捆绑 ID
- 关键在于:为每个应用添加不同的URL Scheme后缀。这会在您的单个 Facebook 应用程序下区分每个 iOS 应用程序。
- 在您的每个应用程序中 info.plist 添加后缀信息(确保更新 URL 方案并添加 "FacebookURLSchemeSuffix"!)
- 现在您的每个应用程序都在同一个 Facebook 应用程序下,因此可以在同一个 Firebase 实时数据库下注册。查看此以获取更多信息:Two iOS apps using the same Facebook app ID - is it possible?
在这个时间点,似乎不可能在一个 Firebase 实时数据库下拥有多个 FB 应用程序。