Quy trình build IOS
Hướng dẫn build iOS và distribute app lên appstore
Last updated
Hướng dẫn build iOS và distribute app lên appstore
Last updated
Bản iOS luôn có những thay đổi khác so với bản android nên BẮT BUỘC phải tạo riêng nhánh iOS trên git để tiện cho việc bổ sung những thay đổi dành riêng cho bản iOS.
Ngoài những thông tin dùng chung: facebook, adjust, gsm… thì phiên bản iOS sẽ có những thông tin dành riêng cho bản iOS: Ads mediation, firebase,….Tất cả những thông tin đều được PM điền trong file infor của dự án
Ngoài ra cũng cần chú ý các thông tin trong game: link rate app, feedback,…
Bản ios khác android là sẽ cần phải tích hợp thêm App Tracking Transparency(ATT)
Đối với những app dùng Max Mediation(Applovin Mediation) thì không cần phải tích hợp ATT mà chỉ cần tích vào trong phần setting
Tạo app trên firebase và setup những thông tin cần thiết(Có thể nhờ PM hoặc tự tạo)
Tải và thêm file googleservice-Info.plist vào trong dự án
Chú ý:
Cần kiểm tra lại thông tin trong build setting xem đã đúng với file infor hay chưa.
*Version: Nên đặt version giống bên android để dễ theo dõi. Tuy nhiên, khi game đã release thì cần phải tăng version.
*Build: Mỗi lần build và up lên testflight/store thì cần phải tăng giá trị lên nếu vẫn muốn giữ nguyên version.
Ví dụ: Cùng version thì các Build phải khác nhau
0.0.1
4
0.0.1
5
*Target minium iOS Version: các plugin gắn vào dự án sẽ yêu cầu min iOS version khác nhau.
Chú ý khi build:
Chuyển Compression Method về LZ4HC để giảm dung lượng file build
Khi build cần tạo 1 thư mục riêng để tránh mất dữ liệu vì lần đầu build thì unity sẽ xoá toàn bộ dữ liệu trong thư mục đó
Từ lần build thứ 2 sẽ xuất hiện warning(như hình bên dưới)
Replace: Build lại từ đầu và xoá toàn bộ setting trong xcode
Append: Giữ lại các thay đổi trong file info.plist, framework, plugin,...
Tuỳ vào mục đích build mà lựa chọn cho phù hợp
Khi build thành công trên unity sẽ có 1 folder build(như hình bên dưới)
Tiếp theo, mở file Unity-iphone.xcworkspace bằng xcode.
Build settings
B1: Kiểm tra lại Product Bundle Identifier
B2: Thay đổi tên ở mục Product Name về đúng tên game.
B3: Tắt Bitcode
Info
Kiểm tra các trường thông tin được đánh dấu xem đã đúng với thông tin dự án chưa. Trường hợp thiếu cần bổ sung thêm
(1): Mô tả của ATT popup
(2): SKAdNetworkItem chứa id các mạng quảng cáo. Cần cập nhật, bổ sung nếu bị thiếu. Kiểm tra ở các trang chủ của các Ads mediation: Ironsource, Max,...
(3): App Admob Id: Kiểm tra lại trong file infor dự án
(4): Dùng để xác định ứng dụng có mã hoá hay không. Thường các ứng dụng đều không mã hoá và đặt giá trị là “NO”. Lần đầu build sẽ không có, cần bổ sung thêm.
(5): Kiểm tra lại facebook app id có đúng với file infor hay không
Signing & Capabilities
Tab này đóng vai trò cấu hình các quyền và xác thực ứng dụng
(1) Team: Cần phải trao đổi với PM xem ứng dụng được đẩy lên store nào và chọn đúng store đó.
Capability: Nhấn chọn để xin cấp các quyền cần thiết. Các quyền hay sử dụng:
In app purchase
Push notification
Sign in with apple
General
Tab này chủ yếu bổ sung thêm các framework
Chọn Unity Framework trong mục Targets, sau đó add thêm các framework cần thiết:
GameKit.framework
AdSupport.framework
AdServices.framework
StoreKit.framework
AppTrackingTransparency.framework
WebKit.framework
Kết nối thiết bị test với máy build - Chọn thiết bị - Build
Chọn Product - Archive
Kết quả sau khi build thành công:
Chọn method là App Store Connect để đẩy game lên store và Testflight
Khi distribute app thành công thì sẽ cần phải đợi 10-15’ mới có trên testflight.