1. Sơ lượt
Chào mừng bạn đến với Tích hợp SDK phân phối ứng dụng Firebase trong bảng mã ứng dụng iOS của bạn. Trong bảng mã này, bạn sẽ thêm SDK phân phối ứng dụng vào ứng dụng của mình để hiển thị cảnh báo trong ứng dụng cho người thử nghiệm của bạn khi có sẵn các bản dựng mới để tải xuống. Bạn sẽ học cách sử dụng cả cấu hình cơ bản và cấu hình tùy chỉnh để giúp người thử nghiệm của bạn đăng nhập để nhận các bản cập nhật. Sau đó, bạn sẽ đẩy bản phát hành mới lên Phân phối ứng dụng và kích hoạt cảnh báo bản dựng mới ngay trong ứng dụng.
Những gì bạn sẽ học
- Cách sử dụng Phân phối ứng dụng để phân phối ứng dụng trước khi phát hành cho những người thử nghiệm trực tiếp
- Cách tích hợp SDK iOS phân phối ứng dụng vào ứng dụng của bạn
- Cách thông báo cho người thử nghiệm khi có một bản dựng tiền phát hành mới sẵn sàng cài đặt
- Cách tùy chỉnh SDK để phù hợp với nhu cầu thử nghiệm duy nhất của bạn
Những gì bạn cần
- Xcode 12 (hoặc cao hơn)
- CocoaPods 1.9.1 (hoặc cao hơn)
- Một tài khoản Nhà phát triển Apple cho phân phối Ad Hoc
- Một thiết bị iOS vật lý để thử nghiệm. ( Ứng dụng trình mô phỏng iOS sẽ hoạt động với hầu hết các mã nguồn, nhưng trình mô phỏng không thể tải xuống các bản phát hành.)
Bạn sẽ sử dụng hướng dẫn này như thế nào?
Đánh giá trải nghiệm của bạn với việc xây dựng ứng dụng iOS như thế nào?
2. Tạo dự án bảng điều khiển Firebase
Thêm dự án Firebase mới
- Đăng nhập vào Firebase.
- Trong bảng điều khiển Firebase, nhấp vào Thêm dự án, sau đó đặt tên cho dự án của bạn là "Firebase Codelab".
Bạn không cần phải bật Google Analytics cho dự án này.
- Nhấp vào Tạo dự án .
Thêm ứng dụng vào Firebase
Làm theo tài liệu để đăng ký ứng dụng của bạn với Firebase. Sử dụng "com.google.firebase.codelab.AppDistribution. <your_name>" làm ID gói iOS.
Khi được nhắc, hãy tải xuống tệp GoogleService-Info.plist
của dự án của bạn. Bạn sẽ cần cái này sau.
3. Nhận dự án mẫu
Tải xuống mã
Bắt đầu bằng cách nhân bản dự án mẫu.
git clone git@github.com:googlecodelabs/firebase-appdistribution-ios.git
Nếu bạn chưa cài đặt git, bạn cũng có thể tải xuống dự án mẫu từ trang GitHub của nó hoặc bằng cách nhấp vào liên kết này .
Tải xuống các phần phụ thuộc và Mở dự án bằng Xcode
- Mở Podfile trong cùng một thư mục
cd firebase-appdistribution-ios/start Open Podfile
- Thêm dòng sau vào podfile của bạn:
Podfile
pod 'Firebase/AppDistribution'
Chạy pod update
trong thư mục dự án và mở dự án bằng Xcode.
pod install --repo-update xed .
Cập nhật mã nhận dạng gói để khớp với ứng dụng Firebase của bạn
Trong menu bên trái, nhấp đúp vào AppDistributionExample. Sau đó, tìm tab Chung và thay đổi số nhận dạng gói để khớp với số nhận dạng gói của ứng dụng Firebase của bạn, bạn có thể tìm thấy số này trong cài đặt dự án . Đây phải là "com.google.firebase.codelab.AppDistribution. <your_name>"
Thêm Firebase vào ứng dụng của bạn
Tìm tệp GoogleService-Info.plist
bạn đã tải xuống trước đó trong hệ thống tệp của mình và kéo tệp đó vào thư mục gốc của dự án Xcode. Bạn cũng có thể tải xuống tệp này bất kỳ lúc nào từ trang cài đặt dự án của bạn.
Trong AppDistributionExample/AppDelegate.swift
nhập Firebase ở đầu tệp
AppDistributionExample / AppDelegate.swift
import Firebase
Và trong phương thức didFinishLaunchingWithOptions
thêm một lệnh gọi để cấu hình Firebase.
AppDistributionExample / AppDelegate.swift
FirebaseApp.configure()
4. Thiết lập cảnh báo bản dựng mới trong ứng dụng với SDK phân phối ứng dụng
Trong bước này, bạn sẽ thêm SDK phân phối ứng dụng Firebase vào ứng dụng của mình và hiển thị cảnh báo trong ứng dụng cho người thử nghiệm khi có các bản dựng mới của ứng dụng để cài đặt. Để thực hiện việc này, hãy đảm bảo rằng bạn đã bật API người kiểm tra ứng dụng Firebase cho dự án "Firebase Codelab" (trong Google Cloud Console). Bạn sẽ cần đăng nhập bằng cùng một tài khoản và chọn đúng dự án từ menu thả xuống ở trên cùng.
Định cấu hình cảnh báo trong ứng dụng
SDK phân phối ứng dụng cung cấp hai cách thiết lập cảnh báo bản dựng trong ứng dụng cho người thử nghiệm của bạn: cấu hình cảnh báo cơ bản, đi kèm với hộp thoại đăng nhập được tạo sẵn để hiển thị cho người thử nghiệm và cấu hình cảnh báo nâng cao, cho phép bạn tùy chỉnh giao diện người dùng (UI) của riêng bạn.
Chúng tôi sẽ bắt đầu với cấu hình cảnh báo cơ bản. Bạn có thể sử dụng checkForUpdate
để hiển thị hộp thoại cảnh báo kích hoạt được tạo sẵn cho những người thử nghiệm chưa bật cảnh báo, sau đó kiểm tra xem có bản dựng mới hay không. Người kiểm tra bật cảnh báo bằng cách đăng nhập vào tài khoản có quyền truy cập vào ứng dụng trong Phân phối ứng dụng. Khi được gọi, phương thức thực hiện chuỗi sau:
- Kiểm tra xem người thử nghiệm đã bật cảnh báo chưa. Nếu không, hãy hiển thị một đoạn hội thoại dựng sẵn nhắc họ đăng nhập vào Phân phối ứng dụng bằng tài khoản Google của họ.
Bật cảnh báo là quy trình một lần trên thiết bị thử nghiệm và vẫn tồn tại qua các bản cập nhật ứng dụng của bạn. Cảnh báo vẫn được bật trên thiết bị thử nghiệm cho đến khi ứng dụng được gỡ cài đặt hoặc cho đến khi phương thức signOutTester
được gọi. Xem tài liệu tham khảo của phương pháp ( Swift hoặc Objective-C ) để biết thêm thông tin.
- Kiểm tra các bản dựng mới có sẵn để người thử nghiệm cài đặt. Trả về một đối tượng phát hành hoặc một lỗi .
Bạn có thể bao gồm checkForUpdate
tại bất kỳ thời điểm nào trong ứng dụng của mình. Ví dụ: bạn có thể nhắc người thử nghiệm của mình cài đặt các bản dựng mới có sẵn khi khởi động bằng cách đưa checkForUpdate vào viewDidAppear của UIViewController .
Trong tệp AppDistributionViewController.swift
nhập Firebase ở đầu tệp
AppDistributionViewController.swift
import Firebase
Mở AppDistributionExample / AppDistributionViewController.swift và sao chép các dòng vào phương thức viewDidAppear
như sau:
AppDistributionViewController.swift
override func viewDidAppear(_ animated: Bool) {
checkForUpdate()
}
Bây giờ hãy triển khai phương thức checkForUpdate ().
AppDistributionViewController.swift
private func checkForUpdate() {
AppDistribution.appDistribution().checkForUpdate(completion: { [self] release, error in
var uiAlert: UIAlertController
if error != nil {
uiAlert = UIAlertController(title: "Error", message: "Error Checking for update! \(error?.localizedDescription ?? "")", preferredStyle: .alert)
} else if release == nil {
uiAlert = UIAlertController(title: "Check for Update", message: "No releases found!!", preferredStyle: .alert)
uiAlert.addAction(UIAlertAction(title: "Ok", style: UIAlertAction.Style.default))
} else {
guard let release = release else { return }
let title = "New Version Available"
let message = "Version \(release.displayVersion)(\(release.buildVersion)) is available."
uiAlert = UIAlertController(title: title, message: message, preferredStyle: .alert)
uiAlert.addAction(UIAlertAction(title: "Update", style: UIAlertAction.Style.default) {
_ in
UIApplication.shared.open(release.downloadURL)
})
uiAlert.addAction(UIAlertAction(title: "Cancel", style: UIAlertAction.Style.cancel) {
_ in
})
}
self.present(uiAlert, animated: true, completion: nil)
})
}
5. Xây dựng và mời người thử nghiệm tải xuống ứng dụng của bạn
Trong bước này, bạn sẽ xây dựng ứng dụng của mình và kiểm tra việc triển khai bằng cách phân phối bản dựng cho người thử nghiệm bằng bảng điều khiển Firebase.
Xây dựng ứng dụng của bạn
Khi bạn đã sẵn sàng phân phối phiên bản phát hành trước của ứng dụng cho người thử nghiệm, hãy chọn "Bất kỳ thiết bị iOS nào (arm64)" làm đích bản dựng và Sản phẩm-> Lưu trữ. Khi tệp lưu trữ được tạo, hãy xây dựng bản phân phối đã ký với Hồ sơ phân phối phát triển.
Khi quá trình xây dựng hoàn tất, nó sẽ lưu một tệp IPA và một số tệp nhật ký trong thư mục bạn chỉ định. Bạn phân phối tệp IPA cho người thử nghiệm của mình theo các bước sau.
Nếu bạn gặp sự cố khi xây dựng ứng dụng của mình, hãy xem tài liệu thiết kế mã của Apple để biết các bước khắc phục sự cố.
Phân phối ứng dụng của bạn cho người thử nghiệm
Để phân phối ứng dụng của bạn cho người thử nghiệm, hãy tải tệp IPA lên bằng bảng điều khiển Firebase:
- Mở trang Phân phối ứng dụng của bảng điều khiển Firebase. Chọn dự án Firebase của bạn khi được nhắc.
- Nhấn Bắt đầu
- Trên trang Bản phát hành, chọn ứng dụng bạn muốn phân phối từ menu thả xuống.
- Kéo tệp IPA của ứng dụng của bạn vào bảng điều khiển để tải tệp đó lên.
- Khi quá trình tải lên hoàn tất, hãy chỉ định nhóm người thử nghiệm và từng người thử nghiệm mà bạn muốn nhận bản dựng. (Thêm email của bạn để nhận lời mời.) Sau đó, thêm ghi chú phát hành cho bản dựng. Xem Quản lý người thử nghiệm để biết thêm về cách tạo nhóm người thử nghiệm.
- Nhấp vào Phân phối để cung cấp bản dựng cho người thử nghiệm.
Thêm chính bạn làm người thử nghiệm cho bản phát hành
Trong bảng điều khiển Firebase, giờ đây bạn có thể thấy những người thử nghiệm mà bạn đã thêm trong bản phát hành ứng dụng của mình.
Vì bạn đã bao gồm địa chỉ email của mình nên bạn sẽ nhận được email từ Firebase App Distribution mời bạn thử nghiệm ứng dụng. Bây giờ bạn là người thử nghiệm đầu tiên! Tiếp tục phần bên dưới để thiết lập làm người thử nghiệm trên thiết bị thử nghiệm của bạn.
Đăng ký thiết bị thử nghiệm của bạn
Trước tiên, bạn cần đăng ký thiết bị thử nghiệm của mình để tải xuống và thử nghiệm bản phát hành Ad Hoc.
- Trên thiết bị thử nghiệm iOS của bạn, mở email được gửi từ Firebase App Distribution và nhấn vào liên kết Bắt đầu. Đảm bảo mở liên kết trong Safari.
- Trong ứng dụng web trình kiểm tra Phân phối ứng dụng Firebase xuất hiện, hãy đăng nhập bằng tài khoản Google của bạn và nhấn vào Chấp nhận lời mời.
Bây giờ, bạn sẽ thấy bản phát hành mà bạn đã được mời.
- Nhấn vào Đăng ký thiết bị để chia sẻ UDID của bạn với Firebase để bạn có thể cập nhật hồ sơ cấp phép của ứng dụng sau này.
- Làm theo hướng dẫn và đi tới cài đặt để tải xuống hồ sơ và chia sẻ UDID của bạn.
Bây giờ, khi bạn quay lại Phân phối ứng dụng, bản phát hành hiện được đánh dấu là "Đã đăng ký thiết bị":
UDID của người thử nghiệm hiện đã được chia sẻ với nhà phát triển. Giờ đây, nhà phát triển phải xây dựng cho người thử nghiệm một phiên bản mới của ứng dụng.
Xem thông tin người thử nghiệm trong bảng điều khiển
Quay lại chế độ xem của nhà phát triển trong bảng điều khiển Firebase, người thử nghiệm sẽ hiển thị là "Đã chấp nhận" trong bản phát hành:
Sau đó, bạn cũng sẽ nhận được email với tư cách là nhà phát triển nếu thiết bị họ đang sử dụng chưa được đưa vào hồ sơ cấp phép. Thao tác này sẽ thông báo cho bạn về UDID mới mà bạn cần thêm. Bạn cũng có tùy chọn xuất tất cả các UDID dưới dạng tệp văn bản.
- Để xuất tất cả các UDID, hãy mở tab Người thử nghiệm & Nhóm.
- Nhấp vào "Xuất UDID của Apple".
Tệp phải chứa UDID của thiết bị thử nghiệm của bạn.
Device ID Device Name Device Platform
1234567890 tester.app.distribtuion@gmail.com - iPhone SE 2nd Gen ios
Khi bạn nhận được một trong những email này, hãy cập nhật hồ sơ cấp phép của bạn với UDID và phân phối bản dựng mới cho người thử nghiệm của bạn bằng cách làm theo các bước sau:
- Thêm các thiết bị vào cổng nhà phát triển Apple của bạn.
- Tùy chọn 1: Nhập UDID của thiết bị dưới dạng tệp CSV. Trong tab Người thử nghiệm & Nhóm của bảng điều khiển Phân phối ứng dụng, chọn Tất cả người thử nghiệm, sau đó nhấp vào Xuất UDID của Apple để tải xuống tệp CSV. Tiếp theo, nhập tệp vào tài khoản nhà phát triển Apple của bạn bằng cách sử dụng tùy chọn Đăng ký Nhiều thiết bị. Tham khảo tài liệu của Apple để tìm hiểu thêm. Lưu ý rằng tài khoản nhà phát triển Apple của bạn chỉ có thể cho phép bạn nhập một số lượng thiết bị hạn chế mỗi năm.
- Tùy chọn 2: Thu thập và nhập UDID qua email. Trên trang Thêm thiết bị của cổng nhà phát triển Apple, hãy đăng ký UDID mới được chỉ định trong email bạn nhận được.
- Thêm các thiết bị đã đăng ký vào hồ sơ cấp phép của bạn.
- Tải xuống cấu hình cấp phép và sử dụng nó để xây dựng lại ứng dụng của bạn. Nếu bạn đang xây dựng lại chỉ để cập nhật các thiết bị đã đăng ký, đừng cập nhật số phiên bản hoặc phiên bản.
- Phân phối lại ứng dụng của bạn từ bảng điều khiển Firebase hoặc CLI. Nếu bạn đã phân phối một bản dựng có cùng số bản dựng và phiên bản, thì chỉ những người dùng thiết bị mới đăng ký mới nhận được email thông báo.
Tải xuống bản phát hành từ thiết bị thử nghiệm
Hiện bản phát hành có UDID của thiết bị thử nghiệm, vì vậy thiết bị thử nghiệm có thể tải xuống và cài đặt ứng dụng. Phân phối ứng dụng sẽ gửi email đến người thử nghiệm khi UDID của họ được thêm vào bản phát hành mới.
- Trên thiết bị thử nghiệm, quay lại ứng dụng web trình kiểm tra Phân phối ứng dụng bằng liên kết trong email hoặc biểu tượng trên màn hình chính của thiết bị.
Khi điều hướng đến ứng dụng mã hóa UDID, bạn có thể thấy rằng bản phát hành đã sẵn sàng để tải xuống.
- Nếu bạn đang sử dụng thiết bị thực, hãy nhấn tải xuống, sau đó cài đặt và chạy ứng dụng!
- Khi ứng dụng khởi động, nó sẽ yêu cầu bạn bật cảnh báo bản dựng mới. Chọn "Bật"
- Sau đó, nó sẽ yêu cầu bạn đăng nhập. Nhấp vào "Tiếp tục.
- Đăng nhập bằng tài khoản người thử nghiệm của bạn.
- Bạn sẽ được đưa trở lại ứng dụng. Bạn sẽ không phải đăng nhập hoặc chấp nhận cảnh báo trong lần chạy ứng dụng tiếp theo.
Phân phối bản cập nhật cho người thử nghiệm của bạn
- Cập nhật số bản dựng của bạn thành "2".
- Chọn "Bất kỳ thiết bị iOS nào (arm64)" làm đích bản dựng và Sản phẩm-> Lưu trữ. Khi tệp lưu trữ được tạo, hãy xây dựng bản phân phối đã ký với Hồ sơ phân phối phát triển.
- Khi quá trình xây dựng hoàn tất, nó sẽ lưu một tệp IPA và một số tệp nhật ký trong thư mục bạn chỉ định. Tải lên IPA mới này trong bảng điều khiển Firebase của bạn, thêm lại email của bạn làm người thử nghiệm và Phân phối.
Kiểm tra cảnh báo bản dựng
- Đảm bảo rằng bạn đã đóng ứng dụng nếu nó đang mở. Khởi động lại ứng dụng.
- Khi ứng dụng khởi động lại, bạn sẽ nhận được cảnh báo "Có phiên bản mới".
- Nhấp vào "Cập nhật" để nhận phiên bản mới nhất.
- Nhấp vào "Cài đặt" trên màn hình tiếp theo.
- Chúc mừng! Bạn có thể cập nhật ứng dụng của mình bằng các cảnh báo tích hợp.
6. Tùy chỉnh đăng nhập của người thử nghiệm
Các phương thức signInTester / signOutTester và isTesterSignedIn cung cấp cho bạn sự linh hoạt hơn khi tùy chỉnh trải nghiệm đăng nhập của người thử nghiệm, vì vậy nó có thể phù hợp hơn với giao diện ứng dụng của bạn.
Ví dụ sau kiểm tra xem người thử nghiệm đã đăng nhập vào tài khoản người thử nghiệm Phân phối ứng dụng Firebase của họ hay chưa, vì vậy bạn có thể chọn chỉ hiển thị giao diện người dùng đăng nhập của mình cho những người thử nghiệm chưa đăng nhập. Sau khi người thử nghiệm đã đăng nhập, bạn có thể gọi checkForUpdate để kiểm tra xem người thử nghiệm có quyền truy cập vào bản dựng mới hay không.
Hãy tắt tính năng kiểm tra cập nhật tự động trong viewDidAppea r bằng cách bình luận trong lệnh gọi checkForUpdate () .
AppDistributionViewController.swift
override func viewDidAppear(_ animated: Bool) {
// checkForUpdate()
}
Thay vào đó, hãy gọi checkForUpdate () trong checkForUpdateButtonClicked ( ).
@objc func checkForUpdateButtonClicked() {
checkForUpdate()
}
Bây giờ, hãy triển khai phương thức signInOutButtonClicked () của chúng tôi, phương thức này sẽ đăng nhập vào người dùng nếu họ đã đăng xuất hoặc đăng xuất người dùng nếu họ đã đăng nhập.
AppDistributionViewController.swift
@objc func signInOutButtonClicked() {
if isTesterSignedIn() {
AppDistribution.appDistribution().signOutTester()
self.configureCheckForUpdateButton()
self.configureSignInSignOutButton()
self.configureSignInStatus()
} else {
AppDistribution.appDistribution().signInTester(completion: { error in
if error == nil {
self.configureCheckForUpdateButton()
self.configureSignInSignOutButton()
self.configureSignInStatus()
} else {
let uiAlert = UIAlertController(title: "Custom:Error", message: "Error during tester sign in! \(error?.localizedDescription ?? "")", preferredStyle: .alert)
uiAlert.addAction(UIAlertAction(title: "Ok", style: UIAlertAction.Style.default) {
_ in
})
self.present(uiAlert, animated: true, completion: nil)
}
})
}
}
Cuối cùng, hãy triển khai phương thức isTesterSignedI n.
AppDistributionViewController.swift
private func isTesterSignedIn() -> Bool {
return AppDistribution.appDistribution().isTesterSignedIn
}
Xây dựng và kiểm tra việc triển khai của bạn
7. Xin chúc mừng!
Bạn đã xây dựng tính năng "hiển thị cảnh báo trong ứng dụng" vào một ứng dụng bằng cách sử dụng SDK iOS phân phối ứng dụng Firebase.
Những gì chúng tôi đã đề cập
- Phân phối ứng dụng Firebase
- Phân phối ứng dụng Firebase Cảnh báo mới SDK iOS
Bước tiếp theo
Tìm hiểu thêm
Có một câu hỏi?
Báo cáo sự cố