เพิ่มการลงชื่อเข้าใช้แอป iOS ของคุณได้อย่างง่ายดายด้วย FirebaseUI

FirebaseUI เป็นไลบรารีที่สร้างขึ้นจาก SDK การตรวจสอบสิทธิ์ของ Firebase ซึ่งจัดเตรียมโฟลว์ UI แบบดรอปอินสำหรับใช้ในแอปของคุณ FirebaseUI ให้ประโยชน์ดังต่อไปนี้:

  • ผู้ให้บริการหลายราย : ขั้นตอนการลงชื่อเข้าใช้สำหรับอีเมล/รหัสผ่าน ลิงก์อีเมล การยืนยันตัวตนทางโทรศัพท์ การลงชื่อเข้าใช้ Google การเข้าสู่ระบบ Facebook และการเข้าสู่ระบบ Twitter
  • การจัดการบัญชี : โฟลว์เพื่อจัดการงานการจัดการบัญชี เช่น การสร้างบัญชีและการรีเซ็ตรหัสผ่าน
  • การเชื่อมโยงบัญชีที่ไม่ระบุชื่อ : โฟลว์เพื่อเชื่อมโยงบัญชีที่ไม่ระบุชื่อกับผู้ให้บริการข้อมูลประจำตัวโดยอัตโนมัติ
  • ปรับแต่งได้ : ปรับแต่งรูปลักษณ์ของ FirebaseUI ให้ตรงกับแอปของคุณ นอกจากนี้ เนื่องจาก FirebaseUI เป็นโอเพ่นซอร์ส คุณจึงสามารถแยกโครงการและปรับแต่งตามความต้องการของคุณได้

ก่อนที่คุณจะเริ่มต้น

  1. เพิ่ม Firebase ในโครงการ Apple ของคุณ

  2. เพิ่ม FirebaseUI ให้กับ Podfile ของคุณ:

    pod 'FirebaseUI'
    

    หากต้องการ คุณสามารถเพิ่มเฉพาะส่วนประกอบ Auth และผู้ให้บริการที่คุณต้องการใช้:

    pod 'FirebaseUI/Auth'
    
    pod 'FirebaseUI/Google'
    pod 'FirebaseUI/Facebook'
    pod 'FirebaseUI/OAuth' # Used for Sign in with Apple, Twitter, etc
    pod 'FirebaseUI/Phone'
    
  3. หากคุณยังไม่ได้เชื่อมต่อแอปกับโปรเจ็กต์ Firebase ให้เชื่อมต่อจาก คอนโซล Firebase

ตั้งค่าวิธีการลงชื่อเข้าใช้

ก่อนที่คุณจะสามารถใช้ Firebase เพื่อลงชื่อเข้าใช้ผู้ใช้ คุณต้องเปิดใช้งานและกำหนดค่าวิธีการลงชื่อเข้าใช้ที่คุณต้องการสนับสนุน

ที่อยู่อีเมลและรหัสผ่าน

ใน คอนโซล Firebase ให้เปิดส่วน การตรวจสอบสิทธิ์ และเปิดใช้งานการตรวจสอบสิทธิ์อีเมลและรหัสผ่าน

  1. ใน คอนโซล Firebase ให้เปิดส่วน การรับรองความถูกต้อง บนแท็บ วิธีการลงชื่อเข้า ใช้ ให้เปิดใช้งานผู้ให้บริการ อีเมล/รหัสผ่าน โปรดทราบว่าต้องเปิดใช้งานการลงชื่อเข้าใช้ด้วยอีเมล/รหัสผ่านเพื่อใช้การลงชื่อเข้าใช้ด้วยลิงก์อีเมล

  2. ในส่วนเดียวกัน ให้เปิดใช้งานวิธีการลงชื่อเข้า ใช้ด้วยลิงก์อีเมล (ลงชื่อเข้าใช้แบบไม่ใช้รหัสผ่าน) แล้วคลิก บันทึก

  3. คุณสามารถเปิดใช้งานการลงชื่อเข้าใช้ลิงก์อีเมลโดยเริ่มต้นอินสแตนซ์ FUIEmailAuth ด้วย FIREmailLinkAuthSignInMethod คุณจะต้องระบุวัตถุ FIRActionCodeSettings ที่ถูกต้องโดยตั้งค่า handleCodeInApp เป็น True

สวิฟต์

var actionCodeSettings = ActionCodeSettings()
actionCodeSettings.url = URL(string: "https://example.appspot.com")
actionCodeSettings.handleCodeInApp = true
actionCodeSettings.setAndroidPackageName("com.firebase.example", installIfNotAvailable: false, minimumVersion: "12")

let provider = FUIEmailAuth(authUI: FUIAuth.defaultAuthUI()!,
                            signInMethod: FIREmailLinkAuthSignInMethod,
                            forceSameDevice: false,
                            allowNewEmailAccounts: true,
                            actionCodeSetting: actionCodeSettings)

วัตถุประสงค์-C

FIRActionCodeSettings *actionCodeSettings = [[FIRActionCodeSettings alloc] init];
actionCodeSettings.URL = [NSURL URLWithString:@"https://example.appspot.com"];
actionCodeSettings.handleCodeInApp = YES;
[actionCodeSettings setAndroidPackageName:@"com.firebase.example"
                    installIfNotAvailable:NO
                           minimumVersion:@"12"];

id<FUIAuthProvider> provider = [[FUIEmailAuth alloc] initWithAuthUI:[FUIAuth defaultAuthUI]
                                                       signInMethod:FIREmailLinkAuthSignInMethod
                                                    forceSameDevice:NO
                                              allowNewEmailAccounts:YES
                                                  actionCodeSetting:actionCodeSettings];
  1. นอกจากนี้ คุณต้องไวท์ลิสต์ URL ที่คุณส่งไปยังโปรแกรมเริ่มต้น คุณสามารถทำได้ใน คอนโซล Firebase เปิดส่วน การรับรองความถูกต้อง ในแท็บ วิธีการลงชื่อเข้า ใช้ ให้เพิ่ม URL ภายใต้ โดเมนที่ได้รับอนุญาต

  2. เมื่อคุณจับลิงก์ในรายละเอียดได้แล้ว คุณจะต้องส่งต่อไปยัง UI การตรวจสอบสิทธิ์เพื่อให้สามารถจัดการได้

สวิฟต์

FUIAuth.defaultAuthUI()!.handleOpen(url, sourceApplication: sourceApplication)

วัตถุประสงค์-C

[[FUIAuth defaultAuthUI] handleOpenURL:url sourceApplication:sourceApplication];
  1. การลงชื่อเข้าใช้ด้วยลิงก์อีเมลใน FirebaseUI-iOS เข้ากันได้กับ FirebaseUI-Android และ FirebaseUI-เว็บ โดยผู้ใช้หนึ่งรายที่เริ่มต้นโฟลว์จาก FirebaseUI-Android สามารถเปิดลิงก์และลงชื่อเข้าใช้ด้วย FirebaseUI-web ได้ เช่นเดียวกับกระแสตรงข้าม

แอปเปิล

  1. ปฏิบัติตามส่วน ก่อนที่คุณจะเริ่มต้น และ ปฏิบัติตามข้อกำหนดข้อมูลที่ไม่ระบุตัวตนของ Apple ในคู่มือ Firebase Sign in with Apple

  2. เพิ่มความสามารถในการลงชื่อเข้าใช้ด้วย Apple ลงในไฟล์การให้สิทธิ์ของคุณ

  3. เริ่มต้นอินสแตนซ์ของผู้ให้บริการ OAuth ที่กำหนดค่าสำหรับการลงชื่อเข้าใช้ด้วย Apple:

    สวิฟต์

    provider = FUIOAuth.appleAuthProvider()
    

    วัตถุประสงค์-C

    FUIOAuth *provider = [FUIOAuth appleAuthProvider];
    

Google

  1. ใน คอนโซล Firebase ให้เปิดส่วน การรับรองความถูกต้อง และเปิดใช้งานการลงชื่อเข้าใช้ Google

  2. ดาวน์โหลดสำเนาใหม่ของไฟล์ GoogleService-Info.plist ของโปรเจ็กต์ แล้วคัดลอกไปยังโปรเจ็กต์ Xcode เขียนทับเวอร์ชันที่มีอยู่ด้วยเวอร์ชันใหม่ (ดู เพิ่ม Firebase ในโครงการ iOS ของคุณ )

  3. เพิ่ม ID ไคลเอ็นต์ที่ย้อนกลับเป็นรูปแบบ URL ในโครงการ Xcode ของคุณ คุณสามารถค้นหาค่านี้ได้ในไฟล์ GoogleService-Info.plist

    เฟสบุ๊ค

  4. ตั้งค่า Facebook Login SDK โดยทำตาม หน้าเริ่มต้นของ Facebook

  5. ใน คอนโซล Firebase ให้เปิดส่วน การรับรองความถูกต้อง และเปิดใช้งาน Facebook หากต้องการเปิดใช้งานการลงชื่อเข้าใช้ด้วย Facebook คุณต้องระบุ Facebook App ID และ App Secret ซึ่งคุณสามารถหาได้จาก Facebook Developers Console

  6. เปิดใช้งานการแบ่งปันพวงกุญแจในโครงการ Xcode ของคุณจากหน้าจอ การตั้งค่าโครงการ > ความสามารถ

  7. เพิ่ม fb FACEBOOK_APP_ID เป็นรูปแบบ URL ในโครงการ Xcode ของคุณ

  8. เพิ่ม Facebook App ID ของคุณและชื่อที่แสดงลงในไฟล์ Info.plist :

    สำคัญ ค่า
    FacebookAppID FACEBOOK_APP_ID (เช่น 1234567890 )
    FacebookDisplayName ชื่อแอปของคุณ
  9. เริ่มต้นอินสแตนซ์ของผู้ให้บริการ Facebook:

    สวิฟต์

    provider = FUIFacebookAuth(authUI: FUIAuth.defaultAuthUI())
    

    วัตถุประสงค์-C

    FUIFacebookAuth *provider = [[FUIFacebookAuth alloc] initWithAuthUI:[FUIAuth defaultAuthUI]];
    

  10. หากคุณต้องการใช้ Facebook Limited Login ให้ตั้งค่าคุณสมบัติ useLimitedLogin บนอินสแตนซ์ FUIFacebookAuth

    สวิฟต์

    provider.useLimitedLogin = true
    

    วัตถุประสงค์-C

    provider.useLimitedLogin = YES;
    

ทวิตเตอร์

  1. ใน คอนโซล Firebase ให้เปิดส่วน การรับรองความถูกต้อง และเปิดใช้งาน Twitter ในการเปิดใช้งานการลงชื่อเข้าใช้ Twitter คุณต้องระบุรหัสผู้ใช้และข้อมูลลับของ Twitter API ซึ่งคุณสามารถรับได้ในคอนโซลการจัดการแอปพลิเคชัน Twitter

  2. เริ่มต้นอินสแตนซ์ผู้ให้บริการ OAuth ที่กำหนดค่าสำหรับการเข้าสู่ระบบ Twitter:

    สวิฟต์

    provider = FUIOAuth.twitterAuthProvider()
    

    วัตถุประสงค์-C

    FUIOAuth *provider = [FUIOAuth twitterAuthProvider];
    

หมายเลขโทรศัพท์

  1. ใน คอนโซล Firebase ให้เปิดส่วน การรับรองความถูกต้อง และเปิดใช้งานการลงชื่อเข้าใช้ด้วยหมายเลขโทรศัพท์

  2. Firebase ต้องสามารถตรวจสอบได้ว่าคำขอลงชื่อเข้าใช้หมายเลขโทรศัพท์นั้นมาจากแอปของคุณ วิธีหนึ่งในการทำเช่นนี้คือผ่านการแจ้งเตือน APN โปรดดูรายละเอียด ที่เปิดใช้งานการยืนยันแอป

    วิธีเปิดใช้งานการแจ้งเตือน APN สำหรับใช้กับ Firebase Authentication:

    1. ใน Xcode เปิดใช้งานการแจ้งเตือนแบบพุช สำหรับโครงการของคุณ

    2. อัปโหลดคีย์การตรวจสอบสิทธิ์ APN ของคุณไปยัง Firebase หากคุณยังไม่มีคีย์การตรวจสอบสิทธิ์ APN โปรดสร้างคีย์ใน Apple Developer Member Center

      1. ภายในโครงการของคุณในคอนโซล Firebase เลือกไอคอนรูปเฟือง เลือก การตั้งค่าโครงการ จากนั้นเลือกแท็บ Cloud Messaging

      2. ใน คีย์การตรวจสอบสิทธิ์ APN ภายใต้ การกำหนดค่าแอป iOS ให้คลิกปุ่ม อัปโหลด

      3. เรียกดูตำแหน่งที่คุณบันทึกคีย์ เลือก และคลิก เปิด เพิ่ม ID คีย์สำหรับคีย์ (มีให้ใน Apple Developer Member Center ) แล้วคลิก อัปโหลด

      หากคุณมีใบรับรอง APN อยู่แล้ว คุณสามารถอัปโหลดใบรับรองแทนได้

  3. เมื่อไม่สามารถรับการแจ้งเตือน APN บนอุปกรณ์ได้ Firebase จะใช้ reCAPTCHA เพื่อยืนยันคำขอ

    หากต้องการเปิดใช้งานการยืนยัน reCAPTCHA ให้ทำดังนี้ใน Xcode:

    1. เปิดการกำหนดค่าโครงการของคุณ: ดับเบิลคลิกที่ชื่อโครงการในมุมมองแบบต้นไม้ด้านซ้าย เลือกแอปของคุณจากส่วน เป้าหมาย จากนั้นเลือกแท็บ ข้อมูล และขยายส่วน ประเภท URL
    2. คลิกปุ่ม + และเพิ่ม ID แอปที่เข้ารหัสเป็นรูปแบบ URL คุณสามารถค้นหา ID แอปที่เข้ารหัสของคุณได้ในหน้า การตั้งค่าทั่วไป ของคอนโซล Firebase ในส่วนสำหรับแอป iOS ของคุณ เว้นช่องอื่นๆ ว่างไว้

      เมื่อเสร็จแล้ว การกำหนดค่าของคุณควรมีลักษณะดังนี้ (แต่มีค่าเฉพาะแอปพลิเคชันของคุณ):

      ภาพหน้าจอของอินเทอร์เฟซการตั้งค่ารูปแบบ URL ที่กำหนดเองของ Xcode
  4. ไม่บังคับ : Firebase ใช้วิธีการหมุนเพื่อรับโทเค็น APN ของแอปโดยอัตโนมัติ เพื่อจัดการการแจ้งเตือนแบบเงียบที่ Firebase ส่งไปยังแอปของคุณ และเพื่อสกัดกั้นการเปลี่ยนเส้นทางโครงร่างที่กำหนดเองโดยอัตโนมัติจากหน้าการยืนยัน reCAPTCHA ระหว่างการยืนยัน

    หากคุณไม่ต้องการใช้การหวด โปรดดู ภาคผนวก: การใช้การลงชื่อเข้าใช้ด้วยโทรศัพท์โดยไม่ใช้การหวด ในเอกสารการตรวจสอบสิทธิ์ Firebase SDK

เข้าสู่ระบบ

หากต้องการเริ่มขั้นตอนการลงชื่อเข้าใช้ FirebaseUI ให้เริ่มต้น FirebaseUI ก่อน:

สวิฟต์

import FirebaseAuthUI

/* ... */

FirebaseApp.configure()
let authUI = FUIAuth.defaultAuthUI()
// You need to adopt a FUIAuthDelegate protocol to receive callback
authUI.delegate = self

วัตถุประสงค์-C

@import FirebaseAuthUI;

...

[FIRApp configure];
FUIAuth *authUI = [FUIAuth defaultAuthUI];
// You need to adopt a FUIAuthDelegate protocol to receive callback
authUI.delegate = self;

จากนั้น กำหนดค่า FirebaseUI เพื่อใช้วิธีการลงชื่อเข้าใช้ที่คุณต้องการสนับสนุน:

สวิฟต์

import FirebaseAuthUI
import FirebaseFacebookAuthUI
import FirebaseGoogleAuthUI
import FirebaseOAuthUI
import FirebasePhoneAuthUI

let providers: [FUIAuthProvider] = [
  FUIGoogleAuth(),
  FUIFacebookAuth(),
  FUITwitterAuth(),
  FUIPhoneAuth(authUI:FUIAuth.defaultAuthUI()),
]
self.authUI.providers = providers

วัตถุประสงค์-C

@import FirebaseAuthUI;
@import FirebaseFacebookAuthUI;
@import FirebaseGoogleAuthUI;
@import FirebaseOAuthUI;
@import FirebasePhoneAuthUI;

...

NSArray<id<FUIAuthProvider>> *providers = @[
  [[FUIGoogleAuth alloc] init],
  [[FUIFacebookAuth alloc] init],
  [[FUITwitterAuth alloc] init],
  [[FUIPhoneAuth alloc] initWithAuthUI:[FUIAuth defaultAuthUI]]
];
_authUI.providers = providers;

หากคุณเปิดใช้งานการลงชื่อเข้าใช้ Google หรือ Facebook ให้ใช้ตัวจัดการสำหรับผลลัพธ์ของขั้นตอนการลงชื่อสมัครใช้ Google และ Facebook:

สวิฟต์

func application(_ app: UIApplication, open url: URL,
    options: [UIApplicationOpenURLOptionsKey : Any]) -> Bool {
  let sourceApplication = options[UIApplicationOpenURLOptionsKey.sourceApplication] as! String?
  if FUIAuth.defaultAuthUI()?.handleOpen(url, sourceApplication: sourceApplication) ?? false {
    return true
  }
  // other URL handling goes here.
  return false
}

วัตถุประสงค์-C

- (BOOL)application:(UIApplication *)app
            openURL:(NSURL *)url
            options:(NSDictionary *)options {
  NSString *sourceApplication = options[UIApplicationOpenURLOptionsSourceApplicationKey];
  return [[FUIAuth defaultAuthUI] handleOpenURL:url sourceApplication:sourceApplication];
}

สุดท้าย รับอินสแตนซ์ของ AuthViewController จาก FUIAuth จากนั้นคุณสามารถนำเสนอเป็นตัวควบคุมมุมมองแรกของแอปหรือนำเสนอจากตัวควบคุมมุมมองอื่นในแอปของคุณ

สวิฟต์

วิธีรับตัวเลือกวิธีการลงชื่อเข้าใช้:

let authViewController = authUI.authViewController()

หากคุณใช้เฉพาะการลงชื่อเข้าใช้ด้วยหมายเลขโทรศัพท์ คุณสามารถแสดงมุมมองการลงชื่อเข้าใช้ด้วยหมายเลขโทรศัพท์โดยตรงแทน:

let phoneProvider = FUIAuth.defaultAuthUI().providers.first as! FUIPhoneAuth
phoneProvider.signIn(withPresenting: currentlyVisibleController, phoneNumber: nil)

วัตถุประสงค์-C

วิธีรับตัวเลือกวิธีการลงชื่อเข้าใช้:

UINavigationController *authViewController = [authUI authViewController];

หากคุณใช้เฉพาะการลงชื่อเข้าใช้ด้วยหมายเลขโทรศัพท์ คุณสามารถแสดงมุมมองการลงชื่อเข้าใช้ด้วยหมายเลขโทรศัพท์โดยตรงแทน:

FUIPhoneAuth *phoneProvider = [FUIAuth defaultAuthUI].providers.firstObject;
[phoneProvider signInWithPresentingViewController:currentlyVisibleController phoneNumber:nil];

หลังจากที่คุณแสดงมุมมองการตรวจสอบสิทธิ์และผู้ใช้ลงชื่อเข้าใช้ ผลลัพธ์จะถูกส่งกลับไปยังผู้รับมอบสิทธิ์ FirebaseUI Auth ในเมธอด didSignInWithUser:error: ::

สวิฟต์

func authUI(_ authUI: FUIAuth, didSignInWith user: FIRUser?, error: Error?) {
  // handle user and error as necessary
}

วัตถุประสงค์-C

   - (void)authUI:(FUIAuth *)authUI
didSignInWithUser:(nullable FIRUser *)user
            error:(nullable NSError *)error {
  // Implement this method to handle signed in user or error if any.
}

ออกจากระบบ

FirebaseUI มีวิธีอำนวยความสะดวกในการลงชื่อออกจาก Firebase Authentication รวมถึงผู้ให้บริการข้อมูลประจำตัวทางสังคมทั้งหมด:

สวิฟต์

authUI.signOut()

วัตถุประสงค์-C

[authUI signOut];

การปรับแต่ง

คุณสามารถปรับแต่งหน้าจอการลงชื่อเข้าใช้โดยการจัดคลาสย่อยตัวควบคุมมุมมองของ FirebaseUI และระบุในวิธีการมอบหมายของ FUIAuth :

สวิฟต์

func authPickerViewController(forAuthUI authUI: FUIAuth) -> FUIAuthPickerViewController {
  return FUICustomAuthPickerViewController(nibName: "FUICustomAuthPickerViewController",
                                           bundle: Bundle.main,
                                           authUI: authUI)
}

func emailEntryViewController(forAuthUI authUI: FUIAuth) -> FUIEmailEntryViewController {
  return FUICustomEmailEntryViewController(nibName: "FUICustomEmailEntryViewController",
                                           bundle: Bundle.main,
                                           authUI: authUI)
}

func passwordRecoveryViewController(forAuthUI authUI: FUIAuth, email: String) -> FUIPasswordRecoveryViewController {
  return FUICustomPasswordRecoveryViewController(nibName: "FUICustomPasswordRecoveryViewController",
                                                 bundle: Bundle.main,
                                                 authUI: authUI,
                                                 email: email)
}

func passwordSignInViewController(forAuthUI authUI: FUIAuth, email: String) -> FUIPasswordSignInViewController {
  return FUICustomPasswordSignInViewController(nibName: "FUICustomPasswordSignInViewController",
                                               bundle: Bundle.main,
                                               authUI: authUI,
                                               email: email)
}

func passwordSignUpViewController(forAuthUI authUI: FUIAuth, email: String) -> FUIPasswordSignUpViewController {
  return FUICustomPasswordSignUpViewController(nibName: "FUICustomPasswordSignUpViewController",
                                               bundle: Bundle.main,
                                               authUI: authUI,
                                               email: email)
}

func passwordVerificationViewController(forAuthUI authUI: FUIAuth, email: String, newCredential: AuthCredential) -> FUIPasswordVerificationViewController {
  return FUICustomPasswordVerificationViewController(nibName: "FUICustomPasswordVerificationViewController",
                                                     bundle: Bundle.main,
                                                     authUI: authUI,
                                                     email: email,
                                                     newCredential: newCredential)
}

วัตถุประสงค์-C

- (FUIAuthPickerViewController *)authPickerViewControllerForAuthUI:(FUIAuth *)authUI {
  return [[FUICustomAuthPickerViewController alloc] initWithNibName:@"FUICustomAuthPickerViewController"
                                                             bundle:[NSBundle mainBundle]
                                                             authUI:authUI];
}

- (FUIEmailEntryViewController *)emailEntryViewControllerForAuthUI:(FUIAuth *)authUI {
  return [[FUICustomEmailEntryViewController alloc] initWithNibName:@"FUICustomEmailEntryViewController"
                                                             bundle:[NSBundle mainBundle]
                                                             authUI:authUI];

}

- (FUIPasswordSignInViewController *)passwordSignInViewControllerForAuthUI:(FUIAuth *)authUI
                                                                     email:(NSString *)email {
  return [[FUICustomPasswordSignInViewController alloc] initWithNibName:@"FUICustomPasswordSignInViewController"
                                                                 bundle:[NSBundle mainBundle]
                                                                 authUI:authUI
                                                                  email:email];

}

- (FUIPasswordSignUpViewController *)passwordSignUpViewControllerForAuthUI:(FUIAuth *)authUI
                                                                     email:(NSString *)email {
  return [[FUICustomPasswordSignUpViewController alloc] initWithNibName:@"FUICustomPasswordSignUpViewController"
                                                                 bundle:[NSBundle mainBundle]
                                                                 authUI:authUI
                                                                  email:email];

}

- (FUIPasswordRecoveryViewController *)passwordRecoveryViewControllerForAuthUI:(FUIAuth *)authUI
                                                                         email:(NSString *)email {
  return [[FUICustomPasswordRecoveryViewController alloc] initWithNibName:@"FUICustomPasswordRecoveryViewController"
                                                                   bundle:[NSBundle mainBundle]
                                                                   authUI:authUI
                                                                    email:email];

}

- (FUIPasswordVerificationViewController *)passwordVerificationViewControllerForAuthUI:(FUIAuth *)authUI
                                                                                 email:(NSString *)email
                                                                         newCredential:(FIRAuthCredential *)newCredential {
  return [[FUICustomPasswordVerificationViewController alloc] initWithNibName:@"FUICustomPasswordVerificationViewController"
                                                                       bundle:[NSBundle mainBundle]
                                                                       authUI:authUI
                                                                        email:email
                                                                newCredential:newCredential];
}

คุณสามารถปรับแต่ง URL ให้เข้ากับข้อกำหนดในการให้บริการของแอพของคุณ ซึ่งเชื่อมโยงอยู่ในหน้าจอสร้างบัญชี:

สวิฟต์

let kFirebaseTermsOfService = URL(string: "https://example.com/terms")!
authUI.tosurl = kFirebaseTermsOfService

วัตถุประสงค์-C

authUI.TOSURL = [NSURL URLWithString:@"https://example.com/terms"];

สุดท้าย คุณสามารถปรับแต่งข้อความและพร้อมต์ที่แสดงต่อผู้ใช้ของคุณโดยระบุบันเดิลที่กำหนดเอง:

สวิฟต์

authUI.customStringsBundle = NSBundle.mainBundle() // Or any custom bundle.

วัตถุประสงค์-C

authUI.customStringsBundle = [NSBundle mainBundle]; // Or any custom bundle.

ขั้นตอนถัดไป

  • สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้และปรับแต่ง FirebaseUI โปรดดูไฟล์ README บน GitHub
  • หากคุณพบปัญหาใน FirebaseUI และต้องการรายงาน ให้ใช้ ตัวติดตามปัญหา GitHub