Apple cấm sử dụng các API riêng tư hoặc không có giấy tờ trong ứng dụng iOS. Bất kỳ lệnh gọi nào bạn thực hiện tới các phương thức có cùng tên với các phương thức API riêng tư hoặc không có tài liệu sẽ được gắn cờ là sử dụng API riêng tư, ngay cả khi phương thức được gọi là phương thức do bạn tự xác định.
App Loader thực hiện quét ban đầu, kiểm tra tên phương thức, quyền truy cập biến phiên bản và thậm chí sử dụng @selector với tên phương thức riêng tư. App Loader không phải lúc nào cũng hoạt động tốt và bạn càng có nhiều tệp nguồn thì càng có nhiều khả năng đưa ra cảnh báo rằng tệp phân tích API mà nó đã tạo là "quá lớn".
May mắn thay, bạn vẫn có thể gửi đơn đăng ký của mình, bất chấp cảnh báo. Apple sẽ kiểm tra nội bộ và nếu có vấn đề gì đó bị phản đối do trùng tên, bạn sẽ phải xem xét lại một lần nữa.
Erika Sadun đã cố gắng tạo một ứng dụng có tên API Kit có thể quét cho bạn, nhưng dường như cô ấy đã từ bỏ công việc của mình và xóa mọi dấu vết của ứng dụng khỏi trang web của mình.
Chimp Studios đã tạo ra App Scanner để làm điều tương tự, nhưng nó đã không được cập nhật kể từ năm 2011. Thật không may, đối với các dự án lớn - và điều này bao gồm các dự án có rất nhiều nhóm bổ sung từ CocoaPods - hiện tại (2014) không tốt cách giải quyết vấn đề này ngoài việc chủ động đặt tên cho những thứ sao cho chúng không xung đột với phương thức API riêng và tên phiên bản.
Bạn có thể chủ động tìm hiểu về Quy ước đặt tên ca cao của Apple và cố gắng dự đoán. Điều đó sẽ làm giảm các cơn đau đầu trong tương lai. Tuy nhiên, cho đến khi Apple giới thiệu một cái gì đó như không gian tên, chúng ta có thể tiếp tục gặp phải vấn đề này.
Lỗi "nhị phân không hợp lệ" có thể xuất phát từ một số nguyên nhân, nhưng nó hoàn toàn không liên quan đến tài liệu phân tích API được tạo bởi App Loader.
Bạn nên biết rằng ngay cả khi quét, vẫn có nhiều cách để vượt qua việc cấm sử dụng các API riêng tư / không có giấy tờ. :)