Chuyển đến nội dung
Nộp ứng dụng lên store

Danh sách kiểm tra khi nộp ứng dụng lên App Store (2026): từ bản build Xcode 26 đến Submit for Review

Rà soát bản build, ảnh chụp màn hình, câu trả lời về quyền riêng tư và quyền truy cập cho người duyệt trước khi bấm Submit, để lần xét duyệt đầu tiên không bị trả về vì lỗi lẽ ra bạn đã kiểm tra được.

Trả lời ngắn gọn

Một danh sách kiểm tra khi nộp ứng dụng lên App Store gồm sáu mục: bản build bằng Xcode 26 nhắm tới iOS 13 trở lên, metadata bắt buộc, ảnh chụp màn hình cho các kích thước màn hình bắt buộc, chính sách quyền riêng tư cùng các câu trả lời về quyền riêng tư khớp với mã nguồn, tài khoản demo hoạt động theo hướng dẫn 2.1(a), và bước Submit for Review cuối cùng. Add for Review chỉ tạo một bản nháp gửi duyệt. Không có gì đến tay Apple cho tới khi bạn bấm Submit for Review.

Điểm chính
  • Từ ngày 28/4/2026, các bản tải lên App Store Connect phải được build bằng Xcode 26 trở lên với SDK iOS 26. Từ ngày 9/9/2026, ứng dụng iOS phải nhắm tới iOS 13 trở lên.
  • Tính đến tháng 10/2026, bạn cần ít nhất một ảnh chụp màn hình cho iPhone có Dynamic Island (màn hình cỡ trung), cộng thêm iPad 13 inch nếu ứng dụng chạy trên iPad. Bạn có thể tải lên tối đa 10 ảnh cho mỗi kích thước.
  • Hướng dẫn 2.1(a) yêu cầu thông tin tài khoản demo và backend đang hoạt động bất cứ khi nào ứng dụng có chức năng đăng nhập.
  • Hướng dẫn 5.1.1(i) yêu cầu liên kết đến chính sách quyền riêng tư cả trong App Store Connect lẫn bên trong ứng dụng. Ứng dụng hỗ trợ tạo tài khoản cũng phải cho phép xóa tài khoản ngay trong ứng dụng.
  • Add for Review chỉ tạo bản nháp gửi duyệt. Submit for Review mới gửi nó đến App Review, và cả hai bước đều cần vai trò Account Holder, Admin hoặc App Manager.
Sẵn sàng để xét duyệt?

Danh sách kiểm tra khi nộp ứng dụng lên App Store là danh sách những thứ phải sẵn sàng cùng lúc trước khi bạn gửi duyệt: một bản build hoạt động, trang ứng dụng chính xác, câu trả lời trung thực về quyền riêng tư và đủ ngữ cảnh để người duyệt sử dụng được ứng dụng. Chỉ một bản build chạy thành công là chưa đủ. Sáu phần dưới đây đi theo đúng thứ tự App Store Connect yêu cầu, và mỗi phần mở đầu bằng một câu trả lời ngắn để bạn có thể làm theo ngay.

Một lần nộp lên App Store cần những gì trước khi bấm Submit?

Một lần nộp lên App Store cần bản build đã xử lý xong được gắn vào phiên bản, metadata bắt buộc của phiên bản, ảnh chụp màn hình, chính sách quyền riêng tư, thông tin liên hệ cho App Review và, nếu ứng dụng có đăng nhập, thông tin đăng nhập demo hoạt động được. Danh sách "Before You Submit" của chính Apple trong App Review Guidelines bổ sung thêm hai mục: "Bật các dịch vụ backend để chúng hoạt động và truy cập được trong quá trình xét duyệt" và giải thích các tính năng không hiển nhiên trong phần ghi chú cho người duyệt.

Hạng mụcCần kiểm tra gìHậu quả nếu bỏ sót
BuildXcode 26 / SDK iOS 26, build number duy nhất, đã thử trên thiết bị thậtBản tải lên bị từ chối hoặc bị từ chối vì crash theo hướng dẫn 2.1
MetadataTên, mô tả, danh mục, URL hỗ trợ, bản quyền, phân loại độ tuổiKhông thể thêm lần gửi vào xét duyệt
Ảnh chụp màn hìnhCác kích thước màn hình bắt buộc, màn hình thật trong ứng dụngBị từ chối metadata theo hướng dẫn 2.3.3
Quyền riêng tưURL chính sách trong App Store Connect và trong ứng dụng, câu trả lời về quyền riêng tư, privacy manifestBị từ chối theo hướng dẫn 5.1.1 hoặc nhận cảnh báo ITMS
Quyền truy cập cho người duyệtTài khoản demo, backend đang chạy, ghi chúHướng dẫn 2.1 Information Needed
Phát hànhTùy chọn phát hành thủ công hoặc tự độngỨng dụng lên kệ trước ngày ra mắt của bạn

Cần chuẩn bị những thiết lập nào cho tài khoản và bản ghi ứng dụng?

Bạn cần một gói thành viên Apple Developer đang hoạt động, một bản ghi ứng dụng có bundle ID khớp với bản build đã ký, và một người trong nhóm có vai trò Account Holder, Admin hoặc App Manager. Đây là các vai trò mà trang Submit an app của Apple yêu cầu để gửi duyệt.

Khi tạo bản ghi, hãy chọn tên, ngôn ngữ chính và SKU. SKU chỉ dùng nội bộ và khách hàng không bao giờ thấy. Nếu bạn bán ứng dụng trả phí hoặc mua hàng trong ứng dụng, hãy hoàn tất thỏa thuận ứng dụng trả phí, thông tin thuế và ngân hàng trước. Một thỏa thuận chưa ký có thể làm chậm việc ra mắt thương mại ngay cả khi bản build không có vấn đề gì.

Năm 2026, bản tải lên App Store phải đáp ứng yêu cầu build nào?

Tính đến tháng 10/2026, trang upcoming requirements của Apple ghi rằng "Ứng dụng tải lên App Store Connect phải được build bằng Xcode 26 trở lên, sử dụng SDK cho iOS 26, iPadOS 26, tvOS 26, visionOS 26 hoặc watchOS 26" (từ ngày 28/4/2026). Trang này cũng nêu rằng ứng dụng iOS và iPadOS "phải nhắm tới iOS 13 trở lên" (từ ngày 9/9/2026).

  • Tăng build number ở mỗi lần tải lên, và đảm bảo version number khớp với bản phát hành bạn định đưa ra.
  • Cập nhật image Xcode trong CI (Codemagic, Expo EAS, GitHub Actions, v.v.) chứ không chỉ trên máy của bạn.
  • Sau khi xử lý xong, trả lời câu hỏi về tuân thủ xuất khẩu (export compliance) nếu có và gắn bản build đã xử lý vào phiên bản.
  • Cài bản build TestFlight trên thiết bị thật. Kiểm tra onboarding, đăng nhập, trạng thái ngoại tuyến, mua hàng và khôi phục giao dịch mua. Chạy được trên simulator không chứng minh bản build phân phối hoạt động.
  • Đọc email App Store Connect gửi sau khi tải lên. Các cảnh báo ITMS về privacy manifest hoặc phiên bản SDK sẽ trở thành lỗi chặn nếu bạn bỏ qua.

Hướng dẫn 2.1(a) nói thẳng hậu quả nếu không làm vậy: "Chúng tôi sẽ từ chối các gói ứng dụng và tệp nhị phân chưa hoàn chỉnh, bị crash hoặc có lỗi kỹ thuật rõ ràng." Hãy gỡ bỏ màn hình placeholder, menu debug và liên kết hỏng trước khi archive. Kế hoạch kiểm thử bản release cho hướng dẫn 2.1 của chúng tôi đi qua chi tiết từng bước kiểm tra này.

App Store Connect yêu cầu những ảnh chụp màn hình và metadata nào?

Tính đến tháng 10/2026, đặc tả ảnh chụp màn hình của Apple yêu cầu ít nhất một ảnh cho "iPhone có Dynamic Island (màn hình cỡ trung)", ví dụ 1206 × 2622 hoặc 1179 × 2556 theo chiều dọc. Ứng dụng chạy trên iPad cũng cần ít nhất một ảnh iPad 13 inch, chẳng hạn 2064 × 2752 hoặc 2048 × 2732.

Bạn "có thể tải lên tối đa 10 ảnh chụp màn hình cho mỗi kích thước thiết bị ở định dạng .jpeg, .jpg hoặc .png", và "Hình ảnh không được chứa kênh alpha hoặc vùng trong suốt." Nếu giao diện giống nhau ở mọi kích thước, chỉ cần tải lên ảnh có độ phân giải bắt buộc cao nhất và App Store Connect sẽ tự thu nhỏ. Hướng dẫn 2.3.3 nêu rằng ảnh chụp màn hình "nên thể hiện ứng dụng đang được sử dụng, không chỉ là ảnh tiêu đề, trang đăng nhập hay màn hình splash."

  • Viết phần mô tả nói rõ ứng dụng dành cho ai và người dùng có thể làm gì trong phiên sử dụng đầu tiên.
  • Giữ tên, phụ đề và từ khóa đúng trọng tâm. Không lặp từ khóa hoặc dùng tên đối thủ cạnh tranh.
  • Đảm bảo URL hỗ trợ và URL chính sách quyền riêng tư mở được mà không cần đăng nhập.
  • Trả lời bảng câu hỏi phân loại độ tuổi dựa trên nội dung và khả năng thực tế của ứng dụng.
  • Thể hiện bản build hiện tại trong ảnh chụp màn hình, bao gồm cả paywall mà người dùng sẽ gặp.

Làm sao để câu trả lời về quyền riêng tư khớp với ứng dụng?

Để câu trả lời về quyền riêng tư khớp với ứng dụng, hãy liệt kê mọi SDK bạn đóng gói kèm và dữ liệu mỗi SDK thu thập, rồi dùng danh sách đó để điền phần App Privacy, viết chính sách quyền riêng tư và thiết lập hành vi trong ứng dụng. Hướng dẫn 2.3 quy định metadata của bạn, "bao gồm thông tin về quyền riêng tư", phải phản ánh chính xác ứng dụng.

Hướng dẫn 5.1.1(i) nêu: "Mọi ứng dụng phải có liên kết đến chính sách quyền riêng tư trong trường metadata của App Store Connect và bên trong ứng dụng ở vị trí dễ truy cập." Hướng dẫn 5.1.1(v) bổ sung: "Nếu ứng dụng hỗ trợ tạo tài khoản, bạn cũng phải cho phép xóa tài khoản ngay trong ứng dụng." Các SDK phân tích, báo cáo crash, quảng cáo và đăng nhập thường làm thay đổi câu trả lời của bạn, vì vậy hãy rà soát chúng bằng bài kiểm tra SDK cho nhãn quyền riêng tư của chúng tôi. Đồng thời kiểm tra rằng ứng dụng và mọi SDK đi kèm đều có privacy manifest PrivacyInfo.xcprivacy bao quát mọi API thuộc diện required-reason mà chúng sử dụng.

Phần App Review Information nên có những gì?

App Review Information nên có một đầu mối liên hệ sẽ phản hồi, thông tin đăng nhập demo hoạt động được và không hết hạn, cùng ghi chú đưa người duyệt thẳng đến các tính năng cốt lõi. Hướng dẫn 2.1(a) yêu cầu bạn "cung cấp thông tin tài khoản demo (và bật dịch vụ back-end!) nếu ứng dụng có đăng nhập"; dùng chế độ demo tích hợp thay cho tài khoản thì cần Apple chấp thuận trước.

Đây là một ví dụ ghi chú cho người duyệt: "Đăng nhập bằng tài khoản xét duyệt được cung cấp. Mở Library, chọn dự án mẫu và nhấn Export. Tài khoản đã mở khóa toàn bộ tính năng premium. Các tính năng vị trí dùng một thành phố mô phỏng nên không cần di chuyển." Đừng để người duyệt vào một tài khoản trống, một mã dùng một lần sẽ hết hạn, hoặc một luồng chỉ hoạt động khi bạn đang trực tuyến để phê duyệt. Hướng dẫn thiết lập tài khoản demo của chúng tôi chỉ cách tạo thông tin đăng nhập cho người duyệt hoạt động ổn định.

Gửi ứng dụng đi xét duyệt trong App Store Connect như thế nào?

Để gửi ứng dụng đi xét duyệt, hãy gắn bản build vào phiên bản, bấm Add for Review, rồi bấm Submit for Review. Chỉ bấm Add for Review thì không có gì được gửi đến Apple. Trình tự dưới đây theo trang Submit an app của Apple tính đến tháng 10/2026.

  1. Trong Apps, chọn ứng dụng, rồi bấm vào phiên bản ứng dụng ở thanh bên.
  2. Cuộn đến phần Build và xác nhận đã gắn đúng bản build.
  3. Trong phần App Store Version Release, chọn phát hành thủ công nếu bạn muốn tự quyết ngày ra mắt, rồi bấm Save.
  4. Bấm Add for Review và chọn một bản nháp gửi duyệt có sẵn hoặc tạo bản mới. Trạng thái chuyển thành Ready for Review.
  5. Bấm Submit for Review. Khi quá trình xét duyệt bắt đầu, trạng thái chuyển thành In Review.
  6. Lưu lại bản sao metadata và ghi chú đã gửi, đồng thời theo dõi email liên hệ xét duyệt để trả lời câu hỏi.

Nếu lần gửi bị từ chối, hãy đọc số hiệu hướng dẫn và phần giải thích của người duyệt trước khi thay đổi bất cứ điều gì. Có lỗi chỉ cần sửa metadata. Có lỗi cần bản build mới. Hướng dẫn xử lý khi bị App Store từ chối của chúng tôi chỉ cách phân biệt bạn đang gặp loại nào.

Các nhà phát triển khác đã gặp sự cố gì khi nộp ứng dụng?

Trong cả hai trường hợp công khai dưới đây, ứng dụng đều chạy tốt trên máy của nhà phát triển, và vấn đề chỉ lộ ra ở bản build đã tải lên hoặc trong phiên sử dụng đầu tiên của người duyệt.

Một nhà phát triển trên diễn đàn Adalo bị từ chối theo hướng dẫn 2.1: "chúng tôi không thể đăng nhập bằng thông tin tài khoản demo bạn cung cấp." Thông tin đăng nhập vẫn hợp lệ, nhưng lần nhấn đăng nhập đầu tiên không có tác dụng và chỉ lần nhấn thứ hai mới được, vì điều hướng có điều kiện chạy trên nút đăng nhập trước khi phiên người dùng được ghi nhận. Họ khắc phục bằng cách cho nút đăng nhập chuyển đến một màn hình trung gian trống chứa các hành động có điều kiện, rồi gửi duyệt lại.

Một nhà phát triển trên diễn đàn JUCE nhận được "ITMS-91053: Missing API declaration" sau khi tải lên, với nội dung các bản tải lên mới "phải có mảng NSPrivacyAccessedAPITypes trong privacy manifest của ứng dụng." Các nhóm API bị đánh dấu là SystemBootTime và FileTimestamp, còn một người dùng khác báo cáo UserDefaults. Cách khắc phục là thêm tệp PrivacyInfo.xcprivacy với các mã lý do được chấp thuận làm tài nguyên trong Xcode. Phiên bản đầu tiên của một người dùng thiếu một khóa type, dẫn đến lỗi ITMS-91056 do manifest không hợp lệ cho đến khi họ sửa lại.

Cả hai nhà phát triển đều chỉ thử nghiệm trên môi trường của riêng mình. Hãy kiểm thử chính bản build mà Apple nhận được bằng một lần đăng nhập mới, và đọc mọi email sau khi tải lên, trước khi bấm Submit for Review. Nếu bạn muốn có thêm người rà soát gói nộp, xem các dịch vụ hỗ trợ nộp ứng dụng của chúng tôi.

Câu hỏi thường gặp

Add for Review và Submit for Review khác nhau thế nào?

Add for Review đưa phiên bản ứng dụng vào một bản nháp gửi duyệt và chuyển trạng thái sang Ready for Review. Ở bước này chưa có gì được gửi đến Apple. Submit for Review gửi bản nháp đến App Review, và trạng thái chuyển thành In Review khi quá trình xét duyệt bắt đầu. Nếu bạn thêm cả In-App Events hoặc các mục khác vào cùng lần gửi, Apple cho biết tất cả các mục được gửi cùng nhau phải ở trạng thái Accepted thì lần gửi mới hoàn tất.

Tôi còn tải lên được ứng dụng iOS build bằng Xcode 16 không?

Không. Từ ngày 28/4/2026, Apple yêu cầu ứng dụng tải lên App Store Connect phải được build bằng Xcode 26 trở lên với SDK iOS 26, iPadOS 26, tvOS 26, visionOS 26 hoặc watchOS 26. Trước ngày đó, các bản build dùng SDK cũ sẽ nhận cảnh báo phiên bản SDK ITMS-90725. Hãy cập nhật Xcode trên máy và trong image CI, sau đó archive lại và tải lên với build number mới.

Ứng dụng chỉ dành cho iPhone có cần ảnh chụp màn hình iPad không?

Không. Đặc tả ảnh chụp màn hình của Apple chỉ ghi ảnh iPad 13 inch là bắt buộc nếu ứng dụng chạy trên iPad. Ứng dụng chỉ dành cho iPhone cần ít nhất một ảnh chụp màn hình cho iPhone có Dynamic Island (màn hình cỡ trung). Nếu giao diện giống nhau ở mọi kích thước, hãy tải lên ảnh có độ phân giải bắt buộc cao nhất và App Store Connect sẽ tự thu nhỏ. Ảnh chụp màn hình không được chứa kênh alpha hoặc vùng trong suốt.

Ứng dụng iOS có cần chính sách quyền riêng tư nếu không thu thập dữ liệu nào không?

Có. Hướng dẫn 5.1.1(i) quy định mọi ứng dụng phải có liên kết đến chính sách quyền riêng tư trong trường metadata của App Store Connect và bên trong ứng dụng ở vị trí dễ truy cập. Chính sách phải nêu rõ ứng dụng thu thập dữ liệu gì, dùng vào việc gì, lưu giữ bao lâu và người dùng có thể yêu cầu xóa như thế nào. Nếu ứng dụng thực sự không thu thập gì, chính sách nên nói rõ điều đó.

Ai trong nhóm có thể gửi ứng dụng đi xét duyệt?

Trang Submit an app của Apple liệt kê ba vai trò có quyền gửi duyệt: Account Holder, Admin và App Manager. Vai trò chỉ dành cho developer có thể tải build lên nhưng không bấm được Submit for Review. Việc thiết lập tùy chọn phát hành phiên bản App Store cũng cần một trong ba vai trò này. Hãy kiểm tra vai trò của nhóm trong App Store Connect trước ngày ra mắt để người thực hiện gửi duyệt không bị kẹt chờ cấp quyền.

Nguồn & tài liệu tham khảo

Chính sách có thể thay đổi. Hãy kiểm tra tài liệu chính thức trước khi nộp.

Mang bản build đến. Hoặc ý tưởng.

Cùng đưa ứng dụng của bạn về đích.

Một cuộc gọi tập trung để tìm ra điều gì đang ngăn ứng dụng của bạn lên store.

Đặt lịch gọi ↗