Có thể cài đặt iOS 6 SDK trên Xcode 5 không?


250

Xcode 5 có ngăn tùy chọn cho phép một người tải xuống trình giả lập iPhone 6.1, tuy nhiên tôi không thể tìm thấy nơi cho phép tải xuống SDK iOS 6, do đó không thể đặt SDK hoạt động thành iOS 6 khi phát triển bằng Xcode 5 Có cách giải quyết nào cho phép Xcode 5 cài đặt SDK iOS 6 không?

BIÊN TẬP:

Cách giải quyết không còn cần thiết nữa vì Xcode 5 thường có sẵn và cho phép bạn tải xuống các phiên bản trước của SDK.

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


41
Để tận dụng nhiều cải tiến trong Xcode 5, trong khi vẫn có thể xây dựng ứng dụng cho cửa hàng ứng dụng ngày nay.
Tony

61
Hey maddy, quan điểm về việc "nắm lấy iOS 7 dù sao" hoàn toàn không gắn liền với bản phát hành GA. Quyết định và nỗ lực thiết kế lại toàn bộ ngôn ngữ thiết kế của ứng dụng và UX để phù hợp với thiết kế phẳng và các thành phần UI iOS7 được thiết kế lại là không nhỏ, cũng không thể dễ dàng đến từ góc độ kinh doanh & thời gian. Xây dựng dựa trên SDK 6.1 sẽ có iOS7 sử dụng ngôn ngữ thiết kế giao diện người dùng của iOS 6 và trước đó (cho mục đích hỗ trợ ngược). Do đó, có thể chúng tôi rất chắc chắn rằng chúng tôi muốn phát triển trong Xcode 5 dựa trên SDK 6.1 trong một thời gian tới.
Marchy

2
hmmm có lẽ bởi vì anh ta hy vọng SDK sẽ được tách ra khỏi IDE, thay vì một đống mã nguyên khối?
phreakhead

1
Tôi hiện đang làm việc với một khách hàng chưa sẵn sàng chấp nhận các thay đổi UI IOS7, nhưng có thể hưởng lợi từ các cải tiến di chuyển Dữ liệu lõi trong XCode 5. Vì vậy, trong trường hợp này, đây chính xác là điều tôi muốn.
Droid Chris

Mọi người có thể nghĩ rằng Xcode, nếu không bao gồm SDK 6.1, ít nhất sẽ tích hợp nó một cách trơn tru. Nhưng sau đó có vấn đề này .
JohnK

Câu trả lời:


203

EDIT: Bắt đầu từ ngày 1 tháng 2 năm 2014, Apple sẽ không còn chấp nhận các ứng dụng trước iOS7 để gửi lên App Store. Vì vậy, trong khi kỹ thuật này vẫn hoạt động, nó sẽ không hữu ích cho hầu hết người đọc.


Vâng, điều này là tốt. Tôi vẫn xây dựng với iOS 4.3 cho một dự án (đã được một lúc kể từ khi chúng tôi cập nhật; nhưng họ vẫn chấp nhận sau khi iOS 6 ra mắt) và tôi hiện đang xây dựng 10,5 ứng dụng với Xcode 5.

Xem Cách trỏ Xcode vào SDK cũ để có thể sử dụng nó làm "SDK cơ sở"? để biết chi tiết về cách thiết lập nó. Bạn có thể sử dụng tập lệnh fix-xcode của tôi để liên kết mọi thứ cho bạn mỗi khi bạn nâng cấp.

Bí quyết duy nhất là lấy SDK cũ. Nếu bạn không có chúng, bạn thường cần tải xuống các phiên bản Xcode cũ (vẫn có sẵn trên developer.apple.com ), mở gói trình cài đặt và tìm kiếm xung quanh để tìm SDK bạn cần.

SDK có thể được tìm thấy trong gói trình cài đặt tại:

Xcode.app/Contents/Developer/Plevelops/


Bạn có cần xóa SDK iOS 7 khi lưu trữ để đảm bảo rằng nó được xây dựng với SDK iOS 6 không?
ohayon

6
Chào. Điều này gần nhưng không hoàn toàn đối với tôi. các nút trông giống như iOS 6 nhưng nội dung của trình điều khiển chế độ xem vẫn đi lên phía sau thanh điều hướng khi sử dụng UINavestionControll. Bạn có suy nghĩ gì về cách thực hiện hành vi iOS 6 không?
matt bezark

2
Không; bạn sẽ chỉ thấy điều này trên thiết bị. Không có chế độ tương thích iOS 6 trong trình giả lập iOS 7. Nếu bạn muốn xem nó trông như thế nào trong trình giả lập, hãy thử nghiệm trên trình giả lập iOS 6.
Rob Napier

1
Tôi có thể gửi ứng dụng được xây dựng với SDK Xcode 5 và iOS 6 lên App Store không?
hujunfeng

1
Miễn là iPad 1 vẫn được hỗ trợ, bạn luôn có thể cho rằng Apple sẽ chấp nhận 5.X iOS. Nó không thể được nâng cấp.
ahwulf

60

Tôi cũng đang gặp vấn đề tương tự khi tôi cập nhật lên xcode 5, nó đã xóa sdk cũ hơn. Nhưng tôi đã lấy bản sao SDK cũ hơn từ một máy tính khác và bạn cũng có thể tải xuống từ liên kết sau.

http:
//www.4 Shared.com/zip/NlPgsxz6/iPhoneOS61sdk.html (www.4 Shared.com kiểm tra tài khoản test@yopmail.com/test)

Có 2 cách để làm việc.

1) Giải nén và dán thư mục này vào /Appluggest/Xcode.app/Contents/Developer/Plevelops/iPhoneOS.pl platform / Developer / DDKs và khởi động lại xcode.

Nhưng điều này có thể lại bị xóa bởi Xcode nếu bạn cập nhật xcode.

2. bạn cập nhật Xcode.

Một thay đổi khác tôi đã thực hiện, Xây dựng cài đặt> Kiến trúc> tiêu chuẩn (không phải 64) để liệt kê tất cả các phiên bản của Mục tiêu triển khai

Không cần tải xuống zip nếu bạn chỉ muốn thay đổi mục tiêu triển khai.

Dưới đây là một số ảnh chụp màn hình. nhập mô tả hình ảnh ở đây nhập mô tả hình ảnh ở đây


2
Làm thế nào và ở đâu bạn đã tải xuống sdk ios6.1 này? Tôi đang tìm kiếm sdk iOS 5 để chạy với Xcode của tôi 5. Bạn có thể tải nó lên hoặc chỉ vào nơi tôi có thể tự tải xuống không. Cảm ơn bạn
Sam B

Thật ra, tôi cũng đang có hệ thống cũ. Vì vậy, tôi lấy cái này từ xcode cũ hơn. Tương tự tôi đã thử cho ios sdk 5 nhưng vì không cần nhiều nên tôi đã không thử lấy nó ra. Ngoài ra, nếu câu trả lời này có vẻ tốt, tôi đánh giá phản hồi của bạn dưới dạng + hoặc -. Cảm ơn bạn.
AvtarSingh suchariya

1
Xin chào Avtar, tôi đã tải xuống zip ios6 của bạn, giải nén nó theo đường dẫn vị trí mà bạn đã liệt kê, đóng hoàn toàn xcode 5, khởi chạy lại và tôi vẫn chỉ thấy 7.0 là mục tiêu có thể triển khai trong tùy chọn thả xuống. Tôi giả sử có những bước còn thiếu và có nhiều hơn cho nó?
Sam B

Điều tương tự đang làm việc cho tôi. Chỉ là một câu hỏi, bạn đã thêm nó vào ứng dụng xcode hay tạo một liên kết tượng trưng?
AvtarSingh suchariya

trực tiếp đến ứng dụng dir chính nó.
Sam B

34

Vâng, tôi chỉ giải quyết vấn đề ngày hôm nay.

  1. Tìm tệp SDK, như iPhoneOS6.1.sdk, trong thư mục Xcode cũ hơn của bạn hoặc bạn của bạn.
  2. Sao chép và đặt nó vào thư mục Xcode 5: /Appluggest/Xcode.app/Contents/Developer/Plevelops/iPhoneOS.pl platform / Developer / DDKs.

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

Sau đó, bạn có thể chọn SDK như bên dưới:

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

Hy vọng điều này sẽ giúp bạn.


2
Tôi cũng làm như vậy nhưng GUI của ứng dụng thay đổi và có vẻ như GUI của iOS 7. Tôi đã chọn trình giả lập iPhone Retina (4 inch 64 bit) để chạy ứng dụng. Tôi đang thiếu bất cứ điều gì khác sau khi làm điều này.
con trăn

20

Tìm và tải SDK cũ. SDK cũ hơn được tìm thấy ở đây .

Tôi đã sao chép thư mục xcode.app dưới dạng Xcode_4.6.3.app.

Bây giờ bạn có thể kiểm tra và gỡ lỗi trong cả hai phiên bản xcode. Bạn phải chạy chúng từ các thư mục tương ứng hoặc tạo lối tắt trong màn hình của bạn. Khi xây dựng từ dòng lệnh đưa ra tham số iPhoneOS6.1thay vìiPhoneOS7.0

Điều này làm việc rất tốt cho tôi trong Xcode5 và iOS.

Chuyển đến thư mục SDK của Xcode5. Nó thường nằm ở:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs

Thêm một liên kết tượng trưng cho SDK cũ như thế này:

sudo ln -s /Applications/Xcode_4.6.3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk iPhoneOS6.1.sdk

Hay chính xác hơn là từ bất cứ nơi nào trong dòng lệnh,

sudo ln -s /Applications/Xcode_4.6.3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk  /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk

Chúng tôi có thể sử dụng tùy chọn này để kiểm tra ứng dụng của mình, nhưng có lẽ sau feb 2014, mọi ứng dụng được xây dựng với sdk iOS 7 trước đó sẽ không được chấp nhận trong cửa hàng ứng dụng!
karim

11

Bạn có thể tải xuống SDK cũ hơn và cài đặt nó trong

Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/

thư mục. Đăng xuất + Đăng nhập chỉ để đảm bảo các thay đổi có hiệu lực và bạn sẽ thấy SDK cũ hơn trong XCode mới của mình


Tôi đã thực hiện điều này (sử dụng liên kết tải xuống trong câu trả lời trước đó) và lựa chọn sdk iOS 6.1 sẽ hiển thị trong xcode 5 trong Cài đặt bản dựng> Kiến trúc> SDK cơ sở. Tuy nhiên, khi tôi xây dựng và chạy trên trình giả lập iOS 7 (hoặc thiết bị iOS 7) thì nó vẫn sử dụng các nút UIKit iOS 7 (không phải phiên bản iOS 6). Nếu bất cứ ai có bất kỳ đề nghị nào về lý do tại sao, tôi sẽ biết ơn ....
Bill Patterson

Nếu bạn đã cài đặt TimeMachine, bạn có thể mở đường dẫn trên (trong loại thiết bị đầu cuối: mở "/Appluggest/Xcode.app/Contents/Developer/Plevelops/iPhoneOS.pl platform / Developer / DSKs /") và khôi phục SDK iOS6.1 từ đó .
avance 18/10/13

11

Chỉ cần thêm, bạn thực sự có thể tải xuống các phiên bản giả lập cũ bằng chính Xcode 5 - chỉ cần vào tùy chọn và bạn sẽ tìm thấy chúng trong Tải xuống:

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


Điều này hẳn đã xảy ra kể từ khi xcode 5 ra bản beta và hiện là bản phát hành chung. Rất tốt để biết, cảm ơn Smikey
Tony

5
@Manni Điều này không giống như biên dịch với API cũ. Bạn đang xây dựng bằng API mới cho iOS 6.
oligofren

Các tùy chọn này không xuất hiện theo mặc định trên Xcode 6 ngay cả khi bạn đã đặt nền tảng đích cũ hơn.
GilesDMiddleton

10
  • Tải xuống Xcode 4.6.x từ Trung tâm Dev của Apple: https://developer.apple.com/doads/index.action
  • Tạo một thư mục có tên Xcode4 trong thư mục Ứng dụng và kéo thả dmg đã tải xuống ở đó.
  • Mở một cửa sổ đầu cuối

    $sudo cp -R /Applications/Xcode4/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/
  • Bạn sẽ được nhắc nhập mật khẩu vì bạn đang ở trong một thư mục hệ thống

  • Mở Xcode 5 và bây giờ bạn sẽ thấy cả hai SDK

10

Chỉ cho tôi giải pháp đơn giản nhất:

  1. Định vị SDK cũ hơn như ví dụ "iPhoneOS6.1 sdk" trong phiên bản cũ hơn của xcode chẳng hạn. Nếu bạn chưa có, bạn có thể tải xuống từ máy chủ Apple Developer tại địa chỉ này: https://developer.apple.com/doads/index.action?name=Xcode Khi bạn mở xcode.dmg, bạn có thể tìm thấy nó bằng cách mở Xcode.app (nhấp chuột phải và "hiển thị nội dung") và đi đến Nội dung / Nhà phát triển / Nền tảng / iPhoneOS.pl platform / Developer / SDKs / iPhoneOS6.1 sdk nhập mô tả hình ảnh ở đây
  2. Đơn giản Sao chép thư mục iPhoneOS6.X sdk và dán nó vào xcode.app của bạn
    • nhấp chuột phải vào xcode.app của bạn trong thư mục Ứng dụng.
    • Chuyển đến Nội dung / Nhà phát triển / Nền tảng / iPhoneOS.pl platform / Nhà phát triển / SDK /
    • Chỉ cần dán vào đây.

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

  1. Đóng ứng dụng xcode của bạn và mở lại.

Để kiểm tra một ứng dụng trong iOS 6 trên trình giả lập của bạn: - Chỉ cần chọn iOS 6.0 trong sheme hoạt động của bạn. nhập mô tả hình ảnh ở đây

Để xây dựng ứng dụng của bạn trong iOS 6, do đó, thiết kế ứng dụng của bạn sẽ là thiết kế cũ hơn trên iPhone với iOS 7: - Chọn iOS6.1 trong Mục tiêu - SDK cơ sở

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

Chỉ cần lưu ý: Khi bạn thay đổi SDK cơ sở trong Mục tiêu của mình, iOS 7.0 sẽ không còn khả dụng để xây dựng trình giả lập!


9

Có thể làm điều này , nhưng không thực sự cần thiết

Làm như thế nào

Jason Lee đã có câu trả lời. Khi cài đặt xCode, tôi thích giữ các cài đặt trước hơn là thay thế chúng. Vì vậy, tôi có những thứ này trong Thư mục cài đặt của tôi

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

Vì vậy, /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKschứa các sdks khác nhau. (Thay thế Xcode.app bằng số chính xác) sao chép các sdks trước đó vào

/Applications/Xcode 3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs

Đây là thư mục của tôi sau khi tôi sao chép.

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

Bây giờ khởi động lại xCode và bạn có thể đặt các phiên bản trước của sdks làm sdk cơ sở.

Tại sao không cần thiết

Giới thiệu tài liệu Apple

Để sử dụng SDK cụ thể cho dự án Xcode, hãy thực hiện hai lựa chọn trong cài đặt bản dựng của dự án.

  1. Chọn một mục tiêu triển khai .

    Điều này xác định phiên bản HĐH sớm nhất mà phần mềm của bạn có thể chạy.

  2. Chọn một SDK cơ sở

    Phần mềm của bạn có thể sử dụng các tính năng có sẵn trong các phiên bản HĐH lên đến và bao gồm một tính năng tương ứng với SDK cơ sở. Theo mặc định, Xcode đặt điều này thành HĐH mới nhất được Xcode hỗ trợ.

Quy tắc là Sử dụng mới nhất làm SDK cơ sở và đặt mục tiêu triển khai thành ứng dụng phiên bản tối thiểu được cho là chạy

Ví dụ: bạn có thể sử dụng iOS 7 làm sdk cơ sở và đặt iOS 6 làm mục tiêu triển khai. Chạy trên trình giả lập iOS 6 để kiểm tra cách thức hoạt động trên iOS 6. Cài đặt trình giả lập nếu không có sẵn với danh sách trình giả lập.

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

Bổ sung Bạn có thể sử dụng vô điều kiện các tính năng cho đến iOS 6. Và điều kiện bạn có thể hỗ trợ các tính năng mới của iOS 7 cho các thiết bị cập nhật mới trong khi hỗ trợ các phiên bản trước.

Điều này có thể được thực hiện bằng lớp yếu liên kết , yếu liên kết phương pháp , chức năng , và Biểu tượng

https://developer.apple.com/l Library / ios / documentation / developerertools / conithual / cross_development / Using /USE.html # //apple_Vf / doc / uid / 20002000-WW3

Liên kết yếu

Giả sử trong Xcode, bạn đặt mục tiêu triển khai (phiên bản bắt buộc tối thiểu) thành iOS6 và SDK mục tiêu (phiên bản được phép tối đa) thành iOS7. Trong quá trình biên dịch, trình biên dịch sẽ liên kết yếu bất kỳ giao diện nào được giới thiệu trong iOS7 trong khi liên kết mạnh mẽ các giao diện trước đó. Điều này sẽ cho phép ứng dụng của bạn tiếp tục chạy trên iOS6 nhưng vẫn tận dụng các tính năng mới hơn khi chúng khả dụng.


4

Các câu trả lời khác ở đây cũng đúng, nhưng tôi thấy các bước sau đây là dễ nhất:

Chỉ cần tải xuống Xcode 4.6.3 từ liên kết trung tâm dev có nội dung "Tìm kiếm phiên bản Xcode cũ hơn?" (hiện tại điểm ở đây ) và gắn dmg.

Sau đó, trong thiết bị đầu cuối, sao chép các tệp SDK qua:

cp -R /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/

Cuối cùng, khởi chạy lại Xcode và bạn đã hoàn thành.


3

Ứng dụng của tôi đã được chuyển đổi thành Xcode 5 một cách liền mạch vì nó vẫn có thể được xây dựng với Mục tiêu triển khai iOS ban đầu mà bạn đặt trong dự án (5.1 trong trường hợp của tôi). Nếu SDK mới không gây ra một số vấn đề không thể vượt qua, thì tại sao không xây dựng bằng cách sử dụng nó? Chắc chắn có nhiều cải tiến dưới mui xe.

Ví dụ, tôi sẽ thích sử dụng Xcode 5 hơn thay vì Xcode 4.6.3. Tại sao? Tôi sẽ nhận được nhiều thời lượng pin hơn vì cuộn UI của các vùng văn bản / mã trong Xcode 5 không còn nhai lại toàn bộ luồng CPU.


Lý do không nên - Xcode 5 hiện tại không ổn định. Tai nạn hàng giờ cho tôi. Ngoài ra một số vấn đề vị trí kỳ lạ và vấn đề màu sắc trong một số chế độ xem (mặc dù không có nhiều việc phải khắc phục)
Nick H247

2

Liên kết SDK 6.1 vào Xcode 5 như được mô tả trong các câu trả lời khác là một bước. Tuy nhiên, điều này vẫn không giải quyết được vấn đề chạy các yếu tố UI mới trên iOS 7, các bộ điều khiển xem được tạo kích thước đầy đủ, v.v.

Như được mô tả trong câu trả lời này, cũng cần phải chuyển UI sang chế độ cũ trên iOS 7:

[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"UIUseLegacyUI"];
[[NSUserDefaults standardUserDefaults] synchronize];

Chú ý: Đây là khóa không có giấy tờ và không được khuyến nghị cho các bản dựng App Store!

Ngoài ra, theo kinh nghiệm của tôi khi thử nghiệm trên thiết bị, tôi thấy rằng nó chỉ hoạt động lần thứ hai khi tôi khởi chạy ứng dụng mặc dù tôi đang chạy mã khá sớm trong lần khởi chạy ứng dụng +[AppDelegate initialize]. Ngoài ra, có những khác biệt tinh tế đối với một phiên bản được xây dựng bằng Xcode 4.6. Chẳng hạn, các thanh điều hướng trong suốt hoạt động khác nhau (khiến chế độ xem có kích thước đầy đủ).

Tuy nhiên, vì Xcode 4.6.3 gặp sự cố trên Mavericks (ít nhất là đối với tôi, hãy xem ndar: // 15318883 ), đây ít nhất là một giải pháp để tiếp tục sử dụng Xcode 5 để gỡ lỗi.


1

Tôi đã tải xuống XCode 4 và lấy SDK iOS 6.1 từ XCode 5 như được mô tả trong các câu trả lời khác. Sau đó, tôi cũng đã cài đặt Trình mô phỏng iOS 6.1 (nó có sẵn trong tùy chọn). Tôi cũng đã chuyển Base SDK sang iOS 6.1 trong cài đặt dự án.

Sau tất cả các thao tác này, dự án với sdk cơ sở 6.1 chạy trong chế độ khả năng comp trong Trình mô phỏng iOS 7.


1

Từ ngày 1 tháng 2, Apple sẽ từ chối ứng dụng chỉ dành cho iOS6 trở xuống. Đây cũng là thông tin liên lạc chính thức từ Apple. Bắt đầu xây dựng tốt hơn cho iOS7.

Để làm rõ tuyên bố của tôi: Nếu bạn xây dựng cho iOS6 trở xuống, apple sẽ từ chối ứng dụng của bạn. Nếu bạn xây dựng cho iOS7 VÀ hạ thấp mọi thứ đều ổn, điều này có nghĩa là:

  1. bạn phải sử dụng xcode5
  2. bạn nên triển khai trên iOS7 ít nhất.

Nội dung email của Apple khá rõ ràng đối với tôi

"Đảm bảo ứng dụng của bạn hoạt động trơn tru với các công nghệ tiên tiến trong iOS 7. Bắt đầu từ ngày 1 tháng 2, các ứng dụng và bản cập nhật ứng dụng mới được gửi tới App Store phải được xây dựng với Xcode 5 và SDK iOS 7."


Có, nhưng SDK iOS 6 cũng hoạt động tốt với iOS 7. Một số ứng dụng thực sự đau đớn để được chuyển đổi.
Aniruddh Joshi

Tôi tin rằng bạn không chính xác. Apple đang yêu cầu (a) Được xây dựng bởi Xcode 5 mới nhất và (b) được tối ưu hóa cho iOS 7. Xem nhận xét của tôi về câu trả lời của Rob Napier cho các liên kết.
Basil Bourque

Một số người trong chúng tôi phát triển để phân phối Doanh nghiệp và cần nhắm mục tiêu SDK cũ hơn (và thiết bị). Các ứng dụng doanh nghiệp không trải qua quá trình Đánh giá của Apple và / hoặc App Store và cuộc thảo luận này khá hữu ích, vẫn có liên quan và sẽ tiếp tục có liên quan trong tương lai. Tôi hiểu quan điểm của bạn, nhưng nó không phải là người duy nhất.
Kevin OMara

Bạn hoàn toàn đúng!!! Tôi đã không nghĩ về phân phối doanh nghiệp. Nhưng đừng quên rằng bạn vẫn có thể triển khai trên iOS6 với Xcode mới chỉ bằng cách đặt mục tiêu triển khai mà không cần quan tâm đến quá trình xem xét và tối ưu hóa ios7.
Andrea

0

Tôi hiện đã cài đặt Xcode 4.6.3 và 5.0. Tôi đã sử dụng tập lệnh bash sau để liên kết 5.0 với SDK trong phiên bản cũ:

platforms_path="$1/Contents/Developer/Platforms";
if [ -d $platforms_path ]; then
    for platform in `ls $platforms_path`
    do
        sudo ln -sf $platforms_path/$platform/Developer/SDKs/* $(xcode-select --print-path)/Platforms/$platform/Developer/SDKs;
    done;
fi;

Bạn chỉ cần cung cấp cho nó đường dẫn đến .app:

./xcode.sh /Applications/Xcode-463.app

Lưu ý rằng việc nâng cấp lên 5.1 đã loại bỏ SDK 7.0.x của tôi và thay thế nó bằng SDK 7.1. Tôi có một bản cài đặt cũ Xcode5-DP6mà tôi có thể khôi phục 7.0.x từ đó, nhưng đây là một lời nhắc tốt để sao lưu các thư mục SDK (hoặc đổi tên hoàn toàn ứng dụng) trước khi nâng cấp lên hoặc cài đặt phiên bản Xcode mới nhất.
Wayne
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.