2010-10-10 33 views
8

Tôi có một ứng dụng ban đầu được viết bằng iOS 3.1 Tuần trước tôi đã cập nhật ứng dụng qua iTunes Connect nhưng bị nhầm lẫn trái "SDK cơ sở" và "iPhone OS Deployment Target" cả hai thiết lập thành 4.1 Tôi bây giờ có kế hoạch gửi lại ứng dụng sử dụng "SDK cơ sở: 4.1" và "Mục tiêu triển khai hệ điều hành iPhone: 3.1"SDK cơ sở và Mục tiêu dành cho nhà phát triển iOS?

Câu hỏi của tôi là hiện tại được đăng với cả hai giá trị được đặt là 4,1, mặc dù tôi đoán nó sẽ chạy trên bất cứ điều gì sau 4.1? N/B: ứng dụng là hoàn toàn tương thích với 3.1 (tức là nó không sử dụng bất kỳ 4,0 tính năng)

hiểu biết của tôi trong hai tùy chọn là: "Base SDK" là số phiên bản mới nhất của iOS có tính năng bạn muốn. "iPhone OS Deployment Target" là số phiên bản iOS cũ nhất mà bạn sẽ hỗ trợ

+0

bản sao có thể có của [iPhone: Hệ điều hành tối thiểu, Mục tiêu triển khai & Cơ sở/SDK hoạt động] (http://stackoverflow.com/questions/1920542/iphone-minimum-os-deployment-target-base-active-sdk) –

Trả lời

10

Sự hiểu biết của bạn là chính xác, nó chính xác như vậy.

Về câu hỏi của bạn: tất nhiên ứng dụng của bạn sẽ chạy trên các phiên bản hệ điều hành mới hơn, miễn là chúng không xóa bất kỳ phương pháp/lớp học nào bạn sử dụng. Nhưng nếu ứng dụng của bạn không sử dụng các tính năng 4.0 hoặc yêu cầu sự tồn tại của chúng một cách chính xác qua respondsToSelector: thì tôi chắc chắn sẽ đặt Mục tiêu triển khai thành 3.1 để có được cơ sở người dùng lớn hơn. Nhưng SDK cơ sở của bạn phải được đặt thành 4.1

AFAIK sẽ có một Sử dụng tùy chọn SDK SDK cơ sở mới nhất cho Xcode 4 sắp tới để bạn không phải lo lắng về việc chuyển đổi đó nữa khi nâng cấp Xcode/iOS-SDK.

+0

Cảm ơn bạn, tôi chỉ muốn kiểm tra trước khi tôi rắc rối Apple với một bản cập nhật :) nhiều đánh giá cao. – fuzzygoat

Các vấn đề liên quan