Thiếu tuân thủ trạng thái khi tôi thêm được xây dựng để thử nghiệm nội bộ trong Chuyến bay thử. Làm thế nào để giải quyết?


308

Khi tôi thêm bản dựng mới nhất của mình để thử nghiệm nội bộ TestFlight, tôi thấy rằng nó có trạng thái "Thiếu tuân thủ".

Đây có phải là một vấn đề lớn? Tại sao điều này xuất hiện? Làm thế nào tôi có thể giải quyết vấn đề này?

nhập mô tả hình ảnh ở đây

Câu trả lời:


544

Trừ khi ứng dụng của bạn đang sử dụng một số mã hóa đặc biệt, bạn chỉ cần thêm Boolean một khóa vào Info.plisttên ITSAppUsesNonExemptEncryptionvà giá trị của bạn NO.

Nếu ứng dụng của bạn đang sử dụng mã hóa tùy chỉnh thì bạn sẽ cần cung cấp thêm các tài liệu pháp lý và xem xét mã hóa trước khi có thể chọn các bản dựng.

Nếu bạn tiếp tục chọn phiên bản đó để thử nghiệm, nó sẽ yêu cầu thông tin tuân thủ theo cách thủ công. Chọn "Không" trình bày cho bạn các khuyến nghị chính thức ở trên.

Cảnh báo tuân thủ xuất khẩu mã hóa iTunes Connect để thử nghiệm

Đây là thay đổi đã được công bố trong WWDC 2015, nhưng tôi đoán nó chỉ được thi hành trong thời gian gần đây. Xem cái nàycái này để biết bản sao của phiên WWDC liên quan đến việc tuân thủ xuất khẩu, chỉ với một tìm kiếm văn bản cho "xuất khẩu".

Có những câu hỏi tương tự khác về SO, xem:


3
Mã hóa đặc biệt có nghĩa là gì? Có sử dụng móc khóa iOS để lưu trữ số lượng thông tin của người dùng không?
bluenowhere

1
Trong iTunesConnect mới: Menu trên cùng> Tính năng> Mã hóa
bauerMusic

10
@mokagio Tôi đang sử dụng kết nối Https để sử dụng dữ liệu cho Ứng dụng vì vậy tôi có phải chọn có và gửi bất kỳ tài liệu nào không?
vignesh kumar

126

Không còn cần phải gửi bản dựng hoặc sửa đổi mới Info.plist; thay vào đó, hãy làm theo các bước sau bằng tài khoản Quản trị viên hoặc Trình quản lý ứng dụng:

  1. Chuyển đến tab iOS ở trên cùng bên trái của TestFlight và nhấp vào hình tam giác màu vàng bên cạnh cảnh báo để cung cấp thông tin này trong iTunes Connect:

nhập mô tả hình ảnh ở đây

  1. Nhấp vào liên kết "Cung cấp thông tin tuân thủ xuất khẩu" trong cửa sổ bật lên:

Xuất thông tin tuân thủ

Mặc dù, nếu bạn chọn sửa đổi Info.plist, bạn sẽ không bao giờ phải đối phó với cửa sổ bật lên này nữa.


5
@am_ Mình mới dùng thử và nó vẫn hoạt động. Bạn chỉ cần nhấp vào liên kết "Cung cấp thông tin tuân thủ xuất khẩu" trong cửa sổ bật lên. Bài viết đã được chỉnh sửa với ảnh chụp màn hình mới.
Kevin Cooper

1
Không có liên kết "Cung cấp thông tin tuân thủ xuất khẩu" khi tôi nhấp vào hình tam giác, tôi chỉ nhận được văn bản thông tin.
SafeFastExpressive

13
Hóa ra là một vấn đề truy cập. Tôi không phải là Quản trị viên (Nhà phát triển + một số người khác) và Quản trị viên của chúng tôi là người đã gửi ứng dụng. Tôi đã có Quản trị viên của chúng tôi xem nó trong tài khoản của anh ấy và anh ấy có thể xem / nhấp vào liên kết "Cung cấp thông tin tuân thủ xuất khẩu" để giải quyết vấn đề.
SafeFastExpressive

4
@RandyHill cảm ơn về thông tin - Tôi đã cập nhật câu trả lời của mình để giải thích rằng bạn cần phải là Quản trị viên.
Kevin Cooper

2
@am_ chỉ người dùng có vai trò quản trị viên mới có thể thấy liên kết
Alexis.J

47

Thêm sau ở dưới cùng của bạn Info.plist

<key>ITSAppUsesNonExemptEncryption</key>
<false/>

43

Trong Info.plist, Nhấp chuột phải vào bảng thuộc tính, nhấp Add Row, thêm tên khóa App Uses Non-Exempt Encryptionvới Loại Booleanvà đặt giá trị NO.

nhập mô tả hình ảnh ở đây


1
người ta cần nhấp chuột phải vào bảng thuộc tính và nhấp vào 'Thêm hàng' để làm điều đó, tôi mất vài phút để tìm hiểu :)
Walty Yeung

11

Nếu info.plist của bạn được hiển thị dưới dạng danh sách thuộc tính (chứ không phải xml), văn bản bạn cần nhập cho khóa là:
Ứng dụng sử dụng Mã hóa không miễn trừ


6

Nếu bạn không sử dụng https trong các cuộc gọi api, vui lòng thêm khóa này "Ứng dụng sử dụng mã hóa không miễn trừ" trong thông tin của bạn.plist và đặt thành "KHÔNG"


3
Các kết nối HTTPS sử dụng URLSession, được miễn các yêu cầu tải lên tài liệu xuất khẩu.
Parag Bafna

1
URLSession là gì? Làm thế nào để tôi biết nếu tôi sử dụng nó? Tôi đang sử dụng ứng dụng React Native với yêu cầu Tìm nạp và tôi không biết - đã thử tìm kiếm nó.
Dror Bar

@DrorBar Rốt cuộc bạn đã làm gì ở đây? Tôi cũng đang sử dụng React Native (với hội chợ triển lãm) và tôi không chắc mình nên làm gì ở đây. Tôi đang thực hiện các cuộc gọi tới back-end của mình qua HTTPS.
Darryl Young

1
@DarrylYoung Tôi chưa tìm thấy câu trả lời cụ thể nhưng tôi khá chắc chắn các loại cuộc gọi HTTPS này được miễn yêu cầu mã hóa. Bạn nên tốt hơn khi thêm chìa khóa.
Thanh Dror

@DrorBar Cảm ơn bạn đã trả lời. Bảo trọng.
Darryl Young

1

Ngoài ra, nếu bạn không thể thấy nút "Cung cấp thông tin tuân thủ xuất khẩu", hãy đảm bảo bạn có vai trò phù hợp trong Kết nối cửa hàng ứng dụng của bạn hoặc nói chuyện với đúng người (Chủ tài khoản, Quản trị viên hoặc Trình quản lý ứng dụng).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.