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 với tên là Xác thực Firebase. Từ giờ trở đi, hoạt động tính năng trên Bộ công cụ nhận dạng sẽ bị treo 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. Các nhà phát triển Bộ công cụ danh tính nên chuyển sang tính năng Xác thực Firebase ngay khi có thể áp dụng cho ứng dụng của họ. Tuy nhiên, Bộ công cụ danh tính vẫn tiếp tục hoạt động và sẽ vẫn tiếp tục hoạt động nếu không có thông báo khác.

Tính năng mới

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

  • Quyền truy cập vào toàn bộ Firebase

    Firebase là nền tảng trên thiết bị 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 được tạo nên từ các tính năng bổ sung mà bạn có thể kết hợp cho phù hợp với nhu cầu của mình và bao gồm cơ sở hạ tầng cho: phân tích trên thiết bị di động, gửi thông báo trên đám mây, cơ sở dữ liệu thời gian thực, lưu trữ tệp, 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ử Android .

  • Cập nhật giao diện người dùng

    Chúng tôi đã xây dựng lại hoàn toàn luồng 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. Những quy trình này bao gồm khôi phục mật khẩu, liên kết tài khoản, các quy trình phân định 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. Dịch vụ 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. Phiên bản này cũng hỗ trợ việc sửa đổi giao diện dễ dàng để phù hợp với ứng dụng của bạn, đồng thời để có thể tuỳ chỉnh tối đa, phiên bản AndroidiOS đã trở thành 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 sử dụng tính năng Xác thực Firebase dễ dàng 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. Quy trình này khiến người dùng không thể khôi phục tài khoản của họ nếu quên mật khẩu. Xác thực Firebase có thể gửi thông báo xác minh email, đặt lại mật khẩu và thay đổi mật khẩu cho người dùng. Ngoài ra, bạn có thể dễ dàng tuỳ chỉnh văn bản cho người dùng. Ngoài ra, bạn không cần lưu trữ tiện ích giao diện người dùng để lưu trữ các lệnh chuyển hướng và hoàn thành các thao tác thay đổi mật khẩu.

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

    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 của mình. Đây có thể là một công cụ hữu ích giúp bạn 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 các mẫu email.

  • SDK mới

    Tất cả API máy chủ của Bộ công cụ nhận dạng hiện đã có sẵn trong từng thư viện ứng dụng của chúng tôi (Android, iOS, web). Nhà phát triển sẽ có thể đăng nhập và đăng ký người dùng cũ và mới, truy cập vào thuộc tính 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à làm nhiều việc khác mà không bị ràng buộc với một 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 của riêng mình trên API này.

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

    Với Bộ công cụ nhận dạng, các ứng dụng sẽ tự tạo trạng thái phiên hoạt động dựa trên sự kiện xác thực ban đầu của Bộ công cụ nhận dạng. Tính năng Xác thực Firebase sử dụng một dịch vụ phụ trợ lấy mã làm mới, đúc từ sự kiện xác thực và trao đổi mã đó để lấy mã truy cập trong một giờ cho Android, iOS và JavaScript. Khi người dùng thay đổi mật khẩu, mã thông báo làm mới sẽ không thể tạo mã truy cập mới nữa, 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

    Tính năng Xác thực Firebase hỗ trợ 2 loại xác thực mới: GitHub và ẩn danh. Tính năng đăng nhập ẩn danh có thể được dùng để tạo một 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 quy trình đăng nhập hoặc đăng ký. 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ư cách bạn sẽ làm 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 đều đượ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 phù hợp với 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 chuyển họ đến quy trình đăng ký.

Đ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 sử dụng được trong tính năng 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. Bạn có thể chọn không di chuyển ngay lập tức nếu những tính năng này quan trọng đối với ứng dụng. 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 hoặc có thể có các bản dự phòng dễ dàng giúp bạn tiếp tục di chuyển.

Sự khác biệt phía máy chủ

Dịch vụ Bộ công cụ nhận dạng chính có 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ỉ mới trải qua những lần cập nhật nhỏ. Tuy nhiên, một số tính năng và cách thức bạn tích hợp tính năng Xác thực Firebase vào dịch vụ đã thay đổi.

  • Nhà cung cấp danh tính

    PayPal và AOL không được hỗ trợ. Người dùng có tài khoản từ các IDP 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ó SDK quản trị của Firebase cho Java, Node.js, Python, Go và C#.

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

    Firebase hoặc từ máy chủ thư của chính nhà phát triển có thể thực hiện thông báo đặt lại mật khẩu, xác minh email và thay đổi email. Hiện tại, các mẫu email 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, bộ công cụ này sẽ gửi email tới đị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 thay đổi địa chỉ email bằng cách gửi email thu hồi đến địa chỉ email cũ kèm theo đường liên kết để huỷ bỏ thay đổi.

  • Ra mắt IDP

    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 đối với các yêu cầu hỗ trợ của mình. Tính năng này đã bị xoá trong phần Xác thực Firebase.

Sự khác biệt phía máy khách

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 tính năng 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 SDK ứng dụng dành 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; cũng như đặ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 lệnh gọi REST.

  • Xác thực FirebaseUI

    Tất cả các luồng 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 đã được xây dựng lại bằng SDK xác thực Frebase. Các công cụ này có sẵn dưới dạng SDK 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 không thể thực hiện được với Bộ công cụ nhận dạng.

Những điểm khác biệt khác bao gồm:

  • Số phiên và quá trình di chuyển

    Do các phiên được quản lý theo cách khác nhau trong Bộ công cụ nhận dạng và tính năng Xác thực Firebase, nên các phiên 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 của bạn 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 tính năng 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 của Google rồi chọn dự án Bộ công cụ nhận dạng của bạn.

  2. Nhấp vào > Quyền để mở trang Quản trị và quản lý danh tính và quyền truy cập (IAM).

  3. Mở Tài khoản dịch vụ. Tại đây, bạn có thể thấy tài khoản dịch vụ mình đã đị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 > Create key (Tạo khoá). Sau đó, trong hộp thoại Create private key (Tạo khoá riêng tư), hãy đặt Loại khoá thành JSON (JSON) và nhấp vào Create (Tạo). Tệp JSON chứa thông tin xác thực của tài khoản dịch vụ sẽ được tải xuống cho bạn. Bạn sẽ cần có dữ liệu 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 của họ, bạn cần lấy mã OOB từ máy chủ Bộ công cụ nhận dạng rồi gửi mã cho người dùng qua email. Firebase gửi email dựa trên các mẫu bạn định cấu hình mà không cần làm gì thêm.

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

    1. Bạn có thể cài đặt mô-đun Node.js của Firebase với 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:

      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

Những thay đổi đáng chú ý

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

  • Quản lý phiên 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 đã được đặt cho người dùng, cookie này được dùng để khởi động phiên. Cookie này có thời gian tồn tại 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 dùng cookie này để xác thực tất cả các yêu cầu khác trên trang web. Các trang web khác đã dùng cookie này để tạo cookie của riêng mình thông qua hệ thống quản lý cookie của khung.

    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 tính năng Xác thực Firebase để duy trì phiên làm mới. Phần phụ trợ sẽ hết hạn các phiên khi có các thay đổi quan trọng về tài khoả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 được tự động đặt làm cookie trên ứng dụng web và chỉ có thời gian tồn tại trong vòng một giờ. Trừ khi bạn chỉ muốn các phiên có thời lượng một giờ, mã thông báo ID Firebase không thích hợp để sử dụng làm cookie để xác thực tất cả các yêu cầu trang của bạn. Thay vào đó, bạn 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 của riêng bạn thông qua hệ thống quản lý cookie của khung.

    Bạn sẽ cần đặt thời gian tồn tại của phiên 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 đăng nhập để tìm hiểu giá trị nhận dạng mà người dùng muốn sử dụng. Giờ đây, quy trình của Giao diện người dùng Xác thực Firebase bắt đầu với danh sách các phương thức đăng nhập, bao gồm cả tuỳ chọn email chuyển tới accountchooser.com dành cho web và sử dụng hintRequest API trên Android. Ngoài ra, bạn không cần phải sử dụng địa chỉ email trong giao diện người dùng Firebase nữa. Điều này sẽ giúp việc 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 trở nên dễ dàng hơn.

  • 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ọ khỏi nhà cung cấp danh tính. API này hiện đang trong quá trình phát triển.

  • Tiện ích/nút đă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ể tạo các trình kiểm thử này rất dễ dàng bằng cách sử dụng API xác thực Firebase.

  • Không có signOutUrl

    Bạn sẽ 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, giúp 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 2 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 trong phiên hoạt động của chính nó.

    1. Triển khai điểm cuối để xác thực mã thông báo mã nhận dạng Firebase và đặt cookie phiên cho người dùng. Ứng dụng khách sẽ 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 phiên của riêng bạn, bạn có thể xem xét người dùng đã xác thực. Nếu không, hãy coi yêu cầu là chưa được xác thực.
    3. Nếu không muốn người dùng nào mất các phiên đã đăng nhập hiện có, bạn nên đợi 2 tuần để tất cả cá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ả dưới đây 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ủa mình. Cài đặt SDK máy chủ Firebase cho máy chủ của bạn; hoặc nếu bạn sử dụng ngôn ngữ không được SDK máy chủ Firebase hỗ trợ, 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. Trong lần đầu cập nhật ở trên, có thể bạn vẫn sẽ thấy đườ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 ứng dụng mới để đườ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ần sử dụng SDK Firebase hay SDK Bộ công cụ nhận dạng để xác thực mã thông báo. Nếu bạn chỉ có một ứ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.

Hãy xem Tài liệu tham khảo về API Web của Firebase.

Bước 2: Cập nhật HTML của bạn

  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ẽ hiển thị.
    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 tính năng Xác thực FirebaseUI vào ứng dụng:

    <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 dựa vào mã thông báo giá trị nhận dạng cho Bộ công cụ nhận dạng để quản lý phiên, bạn phải thực hiện những thay đổi sau ở phía máy khách:

    1. Sau khi đăng nhập thành công bằng Firebase, hãy nhận mã thông báo mã nhận dạng của 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ã đó và phát hành cookie phiên của riêng bạn.

      Đừng chỉ dựa vào cookie phiên khi thực hiện các thao tác nhạy cảm hoặc gửi yêu cầu chỉnh sửa đã xác thực đến máy chủ của bạn. Bạn sẽ cần phải cung cấp thêm biện pháp bảo vệ 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, 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 của phiên 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 cách sử dụng SDK máy chủ Firebase cùng với bước kiểm tra cookie của phiên 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 của 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 2 tuần. Bạn nên tiếp tục cấp mã thông báo trong 2 tuần gần nhất hoặc kéo dài hơn hoặc ngắn hơn tuỳ theo các yêu cầu về 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 hoạt động.

Bước 3: Cập nhật URL chuyển hướng của IDP

  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 được 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 trì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 Add App (Thêm ứng dụng), sau đó nhấp vào Add Firebase to your Android app (Thêm Firebase vào ứng dụng Android của bạn). Trong hộp thoại Add Firebase (Thêm Firebase), hãy cung cấp tên gói của ứng dụng và vân tay số của chứng chỉ, rồi nhấp vào Add App (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:

    defaultConfig {
       …..
      applicationId "com.your-app"
    }
    
  5. Ngoài ra, trong tệp build.gradle cấp dự án, hãy thêm một 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 dưới cùng để 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 cho ứng dụng của bạn sử dụng Firebase.

  7. Ngoài ra, 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:22.3.1'
    compile 'com.google.android.gms:play-services-auth:21.0.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ó trong 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 tính năng Xác thực FirebaseUI vào ứng dụng.

  2. Trong ứng dụng, 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 Firebase SDK 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 và thêm tệp đó vào tất cả các mục tiêu.

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 tính năng Xác thực FirebaseUI vào ứng dụng.

  2. Trong ứng dụng, 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.