Di chuyển từ Bộ công cụ nhận dạng của Google sang Xác thực Firebase

Phiên bản mới nhất của Bộ công cụ nhận dạng của Google đã được phát hành dưới dạng Xác thực Firebase. Trong tương lai, công việc phát triển tính năng trên Bộ công cụ nhận dạng sẽ bị tạm dừng và mọi hoạt động phát triển tính năng mới sẽ được thực hiện trên Xác thực Firebase. Nhà phát triển Bộ công cụ nhận dạng nên chuyển sang Xác thực Firebase càng sớm càng tốt cho ứng dụng của họ. Tuy nhiên, Bộ công cụ nhận dạng vẫn tiếp tục hoạt động và sẽ không bị ngừng cung cấp nếu không có thông báo thêm.

Tính năng mới

Xác thực Firebase đã có một số tính năng cải tiến đáng kể so với Bộ công cụ nhận dạng của Google:

  • Quyền truy cập vào tất cả các tính năng của Firebase

    Firebase là một nền tảng di động giúp bạn nhanh chóng phát triển các ứng dụng chất lượng cao, gia tăng cơ sở người dùng và kiếm nhiều tiền hơn. Firebase bao gồm các tính năng bổ sung mà bạn có thể kết hợp để phù hợp với nhu cầu của mình và bao gồm cơ sở hạ tầng cho: số liệu phân tích trên thiết bị di động, giải pháp gửi thông báo qua đám mây, cơ sở dữ liệu theo thời gian thực, bộ nhớ tệp, dịch vụ lưu trữ tĩnh, cấu hình từ xa, báo cáo sự cố trên thiết bị di động và kiểm thử trên Android.

  • Giao diện người dùng mới cập nhật

    Chúng tôi đã xây dựng lại hoàn toàn các quy trình giao diện người dùng dựa trên nghiên cứu mới nhất của Google về trải nghiệm người dùng. Điều này bao gồm quy trình khôi phục mật khẩu, liên kết tài khoản, quy trình phân biệt tài khoản mới/hiện có thường mất nhiều thời gian để viết mã và gỡ lỗi. Tính năng này tích hợp Smart Lock cho Mật khẩu trên Android, giúp cải thiện đáng kể tỷ lệ chuyển đổi đăng nhập và đăng ký cho các ứng dụng tham gia. Tính năng này cũng hỗ trợ các sửa đổi chủ đề dễ dàng để phù hợp với ứng dụng của bạn và để có khả năng tuỳ chỉnh tối đa, các phiên bản AndroidiOS đã được cung cấp dưới dạng mã nguồn mở.

  • Đơn giản hoá quy trình thiết lập máy chủ

    Chúng tôi đã giúp nhà phát triển dễ dàng sử dụng Xác thực Firebase hơn. Với Bộ công cụ nhận dạng, chúng tôi nhận thấy rằng nhiều nhà phát triển đã chọn không triển khai quy trình khôi phục email, khiến người dùng không thể khôi phục tài khoản nếu quên mật khẩu. Xác thực Firebase có thể gửi email xác minh, đặt lại mật khẩu và thông báo mật khẩu đã thay đổi cho người dùng và văn bản có thể dễ dàng tuỳ chỉnh cho người dùng của bạn. Ngoài ra, bạn không còn cần lưu trữ các tiện ích giao diện người dùng để lưu trữ các lệnh chuyển hướng và hoàn tất các thao tác thay đổi mật khẩu.

  • Bảng điều khiển dành cho quản trị viên mới

    Firebase có một bảng điều khiển mới dành cho nhà phát triển và phần Xác thực cho phép bạn xem, sửa đổi và xoá người dùng. Điều này có thể giúp ích rất nhiều trong việc gỡ lỗi quy trình đăng nhập và đăng ký. Bảng điều khiển này cũng cho phép bạn định cấu hình các phương thức xác thực và tuỳ chỉnh mẫu email.

  • SDK mới

    Tất cả các API máy chủ của Bộ công cụ nhận dạng hiện đều có sẵn ở dạng gốc với từng thư viện ứng dụng (Android, iOS, web). Nhà phát triển có thể đăng nhập và đăng ký người dùng cũ và mới, truy cập vào các thuộc tính của người dùng, liên kết, cập nhật và xoá tài khoản, đặt lại mật khẩu và nhiều thao tác khác mà không bị ràng buộc với giao diện người dùng cố định. Nếu muốn, bạn có thể tự xây dựng toàn bộ quy trình đăng nhập và trải nghiệm trên API này.

  • Quản lý phiên hoạt động cho ứng dụng di động

    Với Bộ công cụ nhận dạng, các ứng dụng đã tạo trạng thái phiên hoạt động riêng dựa trên sự kiện xác thực ban đầu từ Bộ công cụ nhận dạng. Firebase Auth sử dụng một dịch vụ phụ trợ lấy mã làm mới, được tạo từ sự kiện xác thực và trao đổi mã đó để lấy mã truy cập có thời hạn một giờ cho Android, iOS và JavaScript. Khi người dùng thay đổi mật khẩu, mã làm mới sẽ không thể tạo mã truy cập mới, do đó vô hiệu hoá quyền truy cập cho đến khi người dùng xác thực lại trên thiết bị đó.

  • Xác thực ẩn danh và GitHub

    Xác thực Firebase hỗ trợ hai loại xác thực mới: GitHub và ẩn danh. Bạn có thể sử dụng tính năng đăng nhập ẩn danh để tạo mã nhận dạng người dùng duy nhất mà không yêu cầu người dùng thực hiện bất kỳ quy trình đăng nhập hoặc đăng ký nào. Với người dùng ẩn danh, giờ đây bạn có thể thực hiện các lệnh gọi API đã xác thực, giống như với người dùng thông thường. Khi người dùng quyết định đăng ký tài khoản, tất cả hoạt động sẽ được giữ nguyên với cùng một mã nhận dạng người dùng. Điều này rất hữu ích trong các trường hợp như giỏ hàng phía máy chủ hoặc bất kỳ ứng dụng nào mà bạn muốn thu hút người dùng trước khi gửi họ qua quy trình đăng ký.

Các điểm khác biệt về tính năng

Một số tính năng của Bộ công cụ nhận dạng hiện không có trong Xác thực Firebase, trong khi các tính năng khác đã được thiết kế lại và hoạt động khác đi. Bạn có thể chọn không di chuyển ngay nếu các tính năng này quan trọng đối với ứng dụng của bạn. Trong nhiều trường hợp, các tính năng này có thể không quan trọng đối với ứng dụng của bạn hoặc có thể có các giải pháp dự phòng dễ dàng giúp bạn tiếp tục di chuyển.

Các điểm khác biệt phía máy chủ

Dịch vụ cốt lõi của Bộ công cụ nhận dạng với các API REST cơ bản, logic xác thực tài khoản và cơ sở dữ liệu người dùng chính chỉ trải qua các bản cập nhật nhỏ. Tuy nhiên, một số tính năng và cách bạn tích hợp Xác thực Firebase vào dịch vụ của mình đã thay đổi.

  • Nhà cung cấp danh tính

    Không hỗ trợ Paypal và AOL. Người dùng có tài khoản từ các nhà cung cấp danh tính này vẫn có thể đăng nhập vào ứng dụng của bạn bằng quy trình khôi phục mật khẩu và thiết lập mật khẩu cho tài khoản của họ.

  • Thư viện máy chủ

    Hiện tại, có các SDK quản trị Firebase cho Java, Node.js, Python, Go và C#.

  • Email quản lý tài khoản

    Bạn có thể đặt lại mật khẩu, xác minh email và thay đổi email bằng Firebase hoặc từ máy chủ thư riêng của nhà phát triển. Hiện tại, các mẫu email của Firebase chỉ cung cấp khả năng tuỳ chỉnh có giới hạn.

  • Xác nhận thay đổi địa chỉ email

    Trong Bộ công cụ nhận dạng, khi người dùng quyết định thay đổi địa chỉ email, hệ thống sẽ gửi email đến địa chỉ mới có đường liên kết để tiếp tục quy trình thay đổi địa chỉ email.

    Firebase xác nhận việc thay đổi địa chỉ email bằng cách gửi email thu hồi đến địa chỉ email cũ có đường liên kết để hoàn nguyên thay đổi.

  • Triển khai nhà cung cấp danh tính

    Bộ công cụ nhận dạng có khả năng thêm dần các nhà cung cấp danh tính vào hệ thống đăng nhập của bạn, để bạn có thể thử nghiệm tác động đến các yêu cầu hỗ trợ của mình. Tính năng này đã bị loại bỏ trong Xác thực Firebase.

Các điểm khác biệt phía ứng dụng

Trong Firebase, các tính năng do Bộ công cụ nhận dạng của Google cung cấp được chia thành hai thành phần:

  • SDK xác thực Firebase

    Trong Xác thực Firebase, chức năng do API REST của Bộ công cụ nhận dạng cung cấp đã được đóng gói trong các SDK ứng dụng có sẵn cho Android, iOS và JavaScript. Bạn có thể sử dụng SDK để đăng nhập và đăng ký người dùng; truy cập vào thông tin hồ sơ người dùng; liên kết, cập nhật và xoá tài khoản; và đặt lại mật khẩu bằng SDK ứng dụng thay vì giao tiếp với dịch vụ phụ trợ thông qua các lệnh gọi REST.

  • Xác thực FirebaseUI

    Tất cả các quy trình giao diện người dùng quản lý việc đăng nhập, đăng ký, khôi phục mật khẩu và liên kết tài khoản đều đã được xây dựng lại bằng các SDK xác thực Firebase. Các SDK này có sẵn dưới dạng mã nguồn mở cho iOS và Android để cho phép bạn tuỳ chỉnh hoàn toàn các quy trình theo những cách mà Bộ công cụ nhận dạng không thể thực hiện được.

Các điểm khác biệt khác bao gồm:

  • Phiên hoạt động và di chuyển

    Vì các phiên hoạt động được quản lý khác nhau trong Bộ công cụ nhận dạng và Xác thực Firebase, nên các phiên hoạt động hiện có của người dùng sẽ bị chấm dứt khi nâng cấp SDK và người dùng sẽ phải đăng nhập lại.

Trước khi bắt đầu

Trước khi có thể di chuyển từ Bộ công cụ nhận dạng sang Xác thực Firebase, bạn phải

  1. Mở bảng điều khiển của Firebase, nhấp vào Nhập dự án Google rồi chọn dự án Bộ công cụ nhận dạng.

  2. Nhấp vào > Quyền để mở trang IAM & Quản trị.

  3. Mở trang Tài khoản dịch vụ. Tại đây, bạn có thể thấy tài khoản dịch vụ mà bạn đã định cấu hình trước đó cho Bộ công cụ nhận dạng.

  4. Bên cạnh tài khoản dịch vụ, hãy nhấp vào > Tạo khoá. Sau đó, trong hộp thoại Tạo khoá riêng tư, hãy đặt Loại khoá thành JSON rồi nhấp vào Tạo. Một tệp JSON chứa thông tin đăng nhập của tài khoản dịch vụ sẽ được tải xuống cho bạn. Bạn sẽ cần tệp này để khởi chạy SDK trong bước tiếp theo.

  5. Quay lại bảng điều khiển của Firebase. Trong phần Xác thực, hãy mở trang Mẫu email. Trên trang này, hãy tuỳ chỉnh các mẫu email của ứng dụng.

    Trong Bộ công cụ nhận dạng, khi người dùng đặt lại mật khẩu, thay đổi địa chỉ email và xác minh địa chỉ email, bạn cần lấy mã OOB từ máy chủ Bộ công cụ nhận dạng, sau đó gửi mã đó cho người dùng qua email. Firebase gửi email dựa trên các mẫu mà bạn định cấu hình mà không cần thực hiện thêm thao tác nào.

  6. Không bắt buộc: Nếu bạn cần truy cập vào các dịch vụ của Firebase trên máy chủ, hãy cài đặt Firebase SDK.

    1. Bạn có thể cài đặt mô-đun Firebase Node.js bằng npm:

      $ npm init
      $ npm install --save firebase-admin
      
    2. Trong mã của mình, bạn có thể truy cập vào Firebase bằng cách sử dụng:

      var admin = require('firebase-admin');
      var app = admin.initializeApp({
        credential: admin.credential.cert('path/to/serviceAccountCredentials.json')
      });
      

Tiếp theo, hãy hoàn tất các bước di chuyển cho nền tảng của ứng dụng: Android, iOS, web.

Máy chủ và JavaScript

Các thay đổi đáng chú ý

Có một số điểm khác biệt khác trong việc triển khai Firebase trên web so với Bộ công cụ nhận dạng.

  • Quản lý phiên hoạt động trên web

    Trước đây, khi người dùng xác thực bằng tiện ích Bộ công cụ nhận dạng, một cookie sẽ được đặt cho người dùng để khởi động phiên hoạt động. Cookie này có thời hạn hai tuần và được dùng để cho phép người dùng sử dụng tiện ích quản lý tài khoản để thay đổi mật khẩu và địa chỉ email. Một số trang web đã sử dụng cookie này để xác thực tất cả các yêu cầu trang khác trên trang web. Các trang web khác đã sử dụng cookie này để tạo cookie riêng thông qua hệ thống quản lý cookie của khung.

    Các SDK ứng dụng Firebase hiện quản lý mã thông báo mã nhận dạng Firebase và hoạt động với phần phụ trợ của Xác thực Firebase để duy trì phiên hoạt động mới. Phần phụ trợ sẽ hết hạn các phiên hoạt động khi có các thay đổi quan trọng về tài khoản (chẳng hạn như thay đổi mật khẩu người dùng). Mã thông báo mã nhận dạng Firebase không tự động được đặt làm cookie trên ứng dụng web và chỉ có thời hạn một giờ. Trừ phi bạn chỉ muốn các phiên hoạt động có thời hạn một giờ, mã thông báo mã nhận dạng Firebase không phù hợp để sử dụng làm cookie nhằm xác thực tất cả các yêu cầu trang của bạn. Thay vào đó, bạn sẽ cần thiết lập trình nghe khi người dùng đăng nhập, lấy mã thông báo mã nhận dạng Firebase, xác thực mã thông báo và tạo cookie riêng thông qua hệ thống quản lý cookie của khung.

    Bạn cần đặt thời hạn phiên hoạt động của cookie dựa trên nhu cầu bảo mật của ứng dụng.

  • Quy trình đăng nhập trên web

    Trước đây, người dùng được chuyển hướng đến accountchooser.com khi bắt đầu đăng nhập để tìm hiểu giá trị nhận dạng mà người dùng muốn sử dụng. Quy trình của giao diện người dùng Xác thực Firebase hiện bắt đầu bằng danh sách các phương thức đăng nhập, bao gồm cả tuỳ chọn email chuyển đến accountchooser.com cho web và sử dụng API hintRequest trên Android. Ngoài ra, địa chỉ email không còn bắt buộc trong giao diện người dùng Firebase. Điều này sẽ giúp bạn dễ dàng hỗ trợ người dùng ẩn danh, người dùng xác thực tuỳ chỉnh hoặc người dùng từ các nhà cung cấp không yêu cầu địa chỉ email.

  • Tiện ích quản lý tài khoản

    Tiện ích này cung cấp giao diện người dùng để người dùng thay đổi địa chỉ email, thay đổi mật khẩu hoặc huỷ liên kết tài khoản của họ với nhà cung cấp danh tính. Tiện ích này hiện đang được phát triển.

  • Nút/tiện ích đăng nhập

    Các tiện ích như nút đăng nhập và thẻ người dùng không còn được cung cấp nữa. Bạn có thể xây dựng các tiện ích này rất dễ dàng bằng API Xác thực Firebase.

  • Không có signOutUrl

    Bạn cần gọi firebase.auth.signOut() và xử lý lệnh gọi lại.

  • Không có oobActionUrl

    Việc gửi email hiện do Firebase xử lý và được định cấu hình trong bảng điều khiển của Firebase.

  • Tuỳ chỉnh CSS

    FirebaseUI sử dụng kiểu Material Design Lite, tự động thêm ảnh động Material Design.

Bước 1: Thay đổi mã máy chủ

  1. Nếu máy chủ của bạn dựa vào mã thông báo Bộ công cụ nhận dạng (có hiệu lực trong hai tuần) để quản lý các phiên hoạt động của người dùng trên web, thì bạn cần chuyển đổi máy chủ để sử dụng cookie của phiên riêng.

    1. Triển khai một điểm cuối để xác thực mã thông báo mã nhận dạng Firebase và đặt cookie của phiên cho người dùng. Ứng dụng gửi mã thông báo mã nhận dạng Firebase đến điểm cuối này.
    2. Nếu yêu cầu đến chứa cookie của phiên riêng của bạn, bạn có thể coi người dùng đã xác thực. Nếu không, hãy coi yêu cầu là chưa xác thực.
    3. Nếu không muốn bất kỳ người dùng nào mất các phiên hoạt động đã đăng nhập hiện có, bạn nên đợi hai tuần để tất cả mã thông báo Bộ công cụ nhận dạng hết hạn hoặc thực hiện xác thực mã thông báo kép cho ứng dụng web của bạn như mô tả bên dưới trong bước 3.
  2. Tiếp theo, vì mã thông báo Firebase khác với mã thông báo Bộ công cụ nhận dạng, nên bạn phải cập nhật logic xác thực mã thông báo. Cài đặt SDK máy chủ Firebase vào máy chủ của bạn; hoặc nếu bạn sử dụng ngôn ngữ không được hỗ trợ bởi SDK máy chủ Firebase, hãy tải thư viện xác thực mã thông báo JWT xuống cho môi trường của bạn và xác thực mã thông báo đúng cách.

  3. Khi lần đầu tiên thực hiện các bản cập nhật ở trên, bạn vẫn có thể có các đường dẫn mã dựa vào mã thông báo Bộ công cụ nhận dạng. Nếu bạn có ứng dụng iOS hoặc Android, người dùng sẽ cần nâng cấp lên phiên bản mới của ứng dụng để các đường dẫn mã mới hoạt động. Nếu không muốn buộc người dùng cập nhật ứng dụng, bạn có thể thêm logic xác thực máy chủ bổ sung để kiểm tra mã thông báo và xác định xem có cần sử dụng Firebase SDK hay SDK Bộ công cụ nhận dạng để xác thực mã thông báo hay không. Nếu bạn chỉ có ứng dụng web, tất cả các yêu cầu xác thực mới sẽ được chuyển sang Firebase và do đó, bạn chỉ cần sử dụng các phương thức xác minh mã thông báo Firebase.

Xem Tài liệu tham khảo API web của Firebase.

Bước 2: Cập nhật HTML

  1. Thêm mã khởi chạy Firebase vào ứng dụng của bạn:

    1. Mở dự án của bạn trong bảng điều khiển của Firebase.
    2. Trên trang Tổng quan, hãy nhấp vào Thêm ứng dụng, sau đó nhấp vào Thêm Firebase vào ứng dụng web của bạn. Một đoạn mã khởi chạy Firebase sẽ xuất hiện.
    3. Sao chép và dán đoạn mã khởi chạy vào trang web của bạn.
  2. Thêm Xác thực FirebaseUI vào ứng dụng của bạn:

    <script src="https://www.gstatic.com/firebasejs/ui/live/0.4/firebase-ui-auth.js"></script>
    <link type="text/css" rel="stylesheet" href="https://www.gstatic.com/firebasejs/ui/live/0.4/firebase-ui-auth.css" />
    <!-- *******************************************************************************************
       * TODO(DEVELOPER): Paste the initialization snippet from:
       * Firebase Console > Overview > Add Firebase to your web app. *
       ***************************************************************************************** -->
    <script type="text/javascript">
      // FirebaseUI config.
      var uiConfig = {
        'signInSuccessUrl': '<url-to-redirect-to-on-success>',
        'signInOptions': [
          // Leave the lines as is for the providers you want to offer your users.
          firebase.auth.GoogleAuthProvider.PROVIDER_ID,
          firebase.auth.FacebookAuthProvider.PROVIDER_ID,
          firebase.auth.TwitterAuthProvider.PROVIDER_ID,
          firebase.auth.GithubAuthProvider.PROVIDER_ID,
          firebase.auth.EmailAuthProvider.PROVIDER_ID
        ],
        // Terms of service url.
        'tosUrl': '<your-tos-url>',
      };
    
      // Initialize the FirebaseUI Widget using Firebase.
      var ui = new firebaseui.auth.AuthUI(firebase.auth());
      // The start method will wait until the DOM is loaded.
      ui.start('#firebaseui-auth-container', uiConfig);
    </script>
    
  3. Xoá SDK Bộ công cụ nhận dạng khỏi ứng dụng của bạn.

  4. Nếu bạn dựa vào mã thông báo mã nhận dạng Bộ công cụ nhận dạng để quản lý phiên hoạt động, thì bạn phải thực hiện các thay đổi sau ở phía ứng dụng:

    1. Sau khi đăng nhập thành công bằng Firebase, hãy lấy mã thông báo mã nhận dạng Firebase bằng cách gọi firebase.auth().currentUser.getToken().

    2. Gửi mã thông báo mã nhận dạng Firebase đến máy chủ phụ trợ, xác thực mã thông báo đó và cấp cookie của phiên riêng của bạn.

      Đừng chỉ dựa vào cookie của phiên khi thực hiện các thao tác nhạy cảm hoặc gửi các yêu cầu chỉnh sửa đã xác thực đến máy chủ của bạn. Bạn cần cung cấp thêm biện pháp bảo vệ chống giả mạo yêu cầu trên nhiều trang web (CSRF).

      Nếu khung của bạn không cung cấp biện pháp bảo vệ CSRF, thì một cách để ngăn chặn cuộc tấn công là lấy mã thông báo mã nhận dạng Firebase cho người dùng đã đăng nhập bằng getToken() và đưa mã thông báo đó vào mỗi yêu cầu (cookie phiên hoạt động cũng sẽ được gửi theo mặc định). Sau đó, bạn sẽ xác thực mã thông báo đó bằng SDK máy chủ Firebase ngoài việc kiểm tra cookie của phiên hoạt động mà khung phụ trợ của bạn đã hoàn tất. Điều này sẽ khiến các cuộc tấn công CSRF khó thành công hơn, vì mã thông báo mã nhận dạng Firebase chỉ được lưu trữ bằng bộ nhớ web và không bao giờ được lưu trữ trong cookie.

    3. Mã thông báo Bộ công cụ nhận dạng có hiệu lực trong hai tuần. Bạn có thể muốn tiếp tục cấp mã thông báo có thời hạn hai tuần hoặc bạn có thể muốn kéo dài hoặc rút ngắn thời hạn dựa trên các yêu cầu bảo mật của ứng dụng. Khi người dùng đăng xuất, hãy xoá cookie của phiên.

Bước 3: Cập nhật URL chuyển hướng của nhà cung cấp danh tính

  1. Trong bảng điều khiển của Firebase, hãy mở phần Xác thực rồi nhấp vào thẻ Phương thức đăng nhập.

  2. Đối với mỗi nhà cung cấp dịch vụ đăng nhập liên kết mà bạn hỗ trợ, hãy làm như sau:

    1. Nhấp vào tên của nhà cung cấp dịch vụ đăng nhập.
    2. Sao chép URI chuyển hướng OAuth.
    3. Trong bảng điều khiển dành cho nhà phát triển của nhà cung cấp dịch vụ đăng nhập, hãy cập nhật URI chuyển hướng OAuth.

Android

Bước 1: Thêm Firebase vào ứng dụng của bạn

  1. Mở bảng điều khiển của Firebase rồi chọn dự án Bộ công cụ nhận dạng mà bạn đã nhập.

  2. Trên trang Tổng quan, hãy nhấp vào Thêm ứng dụng, sau đó nhấp vào Thêm Firebase vào ứng dụng Android của bạn. Trong hộp thoại Thêm Firebase, hãy cung cấp tên gói và dấu vân tay chứng chỉ ký của ứng dụng rồi nhấp vào Thêm ứng dụng. Sau đó, tệp cấu hình google-services.json sẽ được tải xuống máy tính của bạn.

  3. Sao chép tệp cấu hình vào thư mục gốc của mô-đun ứng dụng Android. Tệp cấu hình này chứa thông tin về dự án và ứng dụng OAuth của Google.

  4. Trong tệp build.gradle ở cấp dự án (<var>your-project</var>/build.gradle), hãy chỉ định tên gói của ứng dụng trong phần defaultConfig section:

    defaultConfig {
       …..
      applicationId "com.your-app"
    }
    
  5. Cũng trong tệp build.gradle ở cấp dự án, hãy thêm phần phụ thuộc để đưa trình bổ trợ google-services vào:

    buildscript {
     dependencies {
       // Add this line
       classpath 'com.google.gms:google-services:3.0.0'
     }
    }
    
  6. Trong tệp build.gradle ở cấp ứng dụng (<var>my-project</var>/<var>app-module</var>/build.gradle), hãy thêm dòng sau vào cuối để bật trình bổ trợ google-services:

    // Add to the bottom of the file
    apply plugin: 'com.google.gms.google-services'
    

    Trình bổ trợ google-services sử dụng tệp google-services.json để định cấu hình ứng dụng của bạn sử dụng Firebase.

  7. Cũng trong tệp build.gradle ở cấp ứng dụng, hãy thêm phần phụ thuộc Xác thực Firebase:

    compile 'com.google.firebase:firebase-auth:24.1.0'
    compile 'com.google.android.gms:play-services-auth:21.6.0'
    

Bước 2: Xoá SDK Bộ công cụ nhận dạng

  1. Xoá cấu hình Bộ công cụ nhận dạng khỏi tệp AndroidManifest.xml. Thông tin này được đưa vào tệp google-service.json và được trình bổ trợ google-services tải.
  2. Xoá SDK Bộ công cụ nhận dạng khỏi ứng dụng của bạn.

Bước 3: Thêm FirebaseUI vào ứng dụng của bạn

  1. Thêm Xác thực FirebaseUI vào ứng dụng của bạn.

  2. Trong ứng dụng của bạn, hãy thay thế các lệnh gọi đến SDK Bộ công cụ nhận dạng bằng các lệnh gọi đến FirebaseUI.

iOS

Bước 1: Thêm Firebase vào ứng dụng của bạn

  1. Thêm SDK Firebase vào ứng dụng của bạn bằng cách chạy các lệnh sau:

    $ cd your-project directory
    $ pod init
    $ pod 'Firebase'
    
  2. Mở bảng điều khiển của Firebase rồi chọn dự án Bộ công cụ nhận dạng mà bạn đã nhập.

  3. Trên trang Tổng quan, hãy nhấp vào Thêm ứng dụng, sau đó nhấp vào Thêm Firebase vào ứng dụng iOS của bạn. Trong hộp thoại Thêm Firebase, hãy cung cấp mã nhận dạng gói và mã Cửa hàng ứng dụng của ứng dụng, sau đó nhấp vào Thêm ứng dụng. Sau đó, tệp cấu hình GoogleService-Info.plist sẽ được tải xuống máy tính của bạn. Nếu bạn có nhiều mã nhận dạng gói trong dự án, thì mỗi mã nhận dạng gói phải được kết nối trong bảng điều khiển của Firebase để có thể có tệp GoogleService-Info.plist riêng.

  4. Sao chép tệp cấu hình vào thư mục gốc của dự án Xcode rồi thêm tệp đó vào tất cả các đích.

Bước 2: Xoá SDK Bộ công cụ nhận dạng

  1. Xoá GoogleIdentityToolkit khỏi Podfile của ứng dụng.
  2. Chạy lệnh pod install.

Bước 3: Thêm FirebaseUI vào ứng dụng của bạn

  1. Thêm Xác thực FirebaseUI vào ứng dụng của bạn.

  2. Trong ứng dụng của bạn, hãy thay thế các lệnh gọi đến SDK Bộ công cụ nhận dạng bằng các lệnh gọi đến FirebaseUI.