Có thể tải SDK iOS 5.1 cho Xcode 4.2 trên Snow Leopard không?


139

Tôi vẫn còn có Báo tuyết. Tôi có Xcode 4.2 để phát triển iOS. Sáng nay tôi đã nâng cấp iPhone và iPad lên iOS 5.1.

Nhưng Xcode 4.2 không phát hiện thiết bị của tôi để thử nghiệm. Tôi không thể tìm thấy hình ảnh SDK iOS 5.1 trên trang web dành cho nhà phát triển của Apple, cho Xcode 4.2.

Tôi không muốn nâng cấp lên Lion để có XCode 4.3 tại thời điểm này.

Bây giờ tôi có thể sử dụng Xcode 4.2 (trên Snow Leopard) để phát triển iOS không?

Câu trả lời:


213

Để có được Xcode 4.2 trên Snow Leopard để chạy mã trên thiết bị chạy iOS 5.1, bạn có thể làm điều này:

  1. Nếu bạn có một máy Mac khác đang chạy Lion và Xcode 4.3.1, bạn có thể sao chép các tệp từ:

    /Appluggest/Xcode.app/Contents/Developer/Plevelops/iPhoneOS.pl platform / DeviceSupport/5.1 (9B176)

  2. Đặt các tệp đã sao chép vào vị trí tương đương trên máy Mac Snow Leopard của bạn: có thể

    /Developer/Plevelops/iPhoneOS.pl platform / DeviceSupport

  3. Tương tự sao chép các tệp SDK iOS 5.1 được tìm thấy trong thư mục này:

    /Developer/Plevelops/iPhoneOS.pl platform / Developer / SNKs / iPhoneOS5.1.sdk

  4. Đồng thời sao chép 'version.plist' từ máy Lion trong thư mục iPhoneOS.pl platform sang máy Snow Leopard.

  5. Khởi động lại Xcode trên máy Snow Leopard và kết nối lại các thiết bị và có vẻ như đủ hạnh phúc.

Nếu bạn không có quyền truy cập vào máy có Lion và Xcode 4.3.1:

  1. Bạn có thể lấy các tệp trong số 4.3.1 DMGđó có thể tải xuống từ Apple tại đây : Tải xuống cho Nhà phát triển Apple .

  2. Gắn DMG, Hiển thị nội dung gói trên biểu tượng Xcode và xem chi tiết

    /Volume/Xcode/Xcode.app/Contents/Developer/Plevelops/iPhoneOS.pl platform / DeviceSupport

  3. Thực hiện theo các bước trên.

Bạn có thể thấy thuận tiện hơn khi sử dụng dittophương thức độc quyền của Apple ( sudo ditto src dest) trong cửa sổ terminal để sao chép các thư mục.

Lưu ý, bản hack này cũng sẽ hoạt động cho SDK iOS 6 mới nhất.


3
Hôm nay tôi đã nâng cấp hệ thống của mình lên Lion. Cảm ơn Hack.
jpsasi

Cảm ơn rất nhiều :) Đã làm việc hoàn hảo cho tôi. Ít nhất tôi sẽ có thể phát triển với sl thêm một thời gian nữa.
OnTheFly

14
Tôi đã khắc phục vấn đề trên bằng cách sao chép trên các tệp trong /Developer/Plevelops/iPhoneOS.pl platform / Developer / DDKs / iPhoneOS5.1.sdk. Cảm ơn vì điều này, giờ đây tôi có thể trì hoãn việc thay thế máy Mac cổ của mình trong ít nhất vài tháng nữa.
Dan Dyer

6
@natbro - Tôi vẫn thấy 4.3.1 dmg tốt tại developer.apple.com/doads/index.action# và hiện đang tải xuống.
SubG

1
XCode 4.3.3 cũng chứa nó và hoạt động rất tốt. Cảm ơn rất nhiều vì điều này
Krym

14

Bạn phải lấy Lion, SDK iOS 5.1 chỉ dành cho Xcode 4.3.1 chỉ dành cho Lion.

... và Xcode của bạn sẽ không thể xây dựng cho thiết bị của bạn nếu bạn đã cập nhật nó lên 5.1 vì nó sẽ không có trên phiên bản SDK được phê duyệt của Xcode đó


14

Tôi đang làm việc này. Tôi có cùng một vấn đề.

VẤN ĐỀ CHÍNH ở đây là:

1) Apple không bao giờ cung cấp hộp thoại cảnh báo rằng điều này có thể vô hiệu hóa những người đang phát triển dưới Snow Leopard.

2) Không có cách nào dễ dàng để hoàn tác điều này.

3) Điều này không nên xảy ra trên một bản cập nhật phát hành điểm.

Tôi đã thử cài đặt ipsw trước đó từ 5.0.1 cho Genod IP 4 Touch của tôi từ đây: nơi tải xuống các liên kết khôi phục phần mềm ipod touch Nó sẽ không cài đặt.

Tôi đã tải xuống Lion Xcode 4.3.1 từ đây (đăng nhập với tư cách là nhà phát triển trước) Lion Xcode 4.3.1

Và chạy một số tập lệnh từ Diễn đàn Dev tại đây:

sudo cp -R /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/
sudo cp -R /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/

sudo cp -R /Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1\ \(9B176\) /Developer/Platforms/iPhoneOS.platform/DeviceSupport/
cd /Developer/Platforms/iPhoneOS.platform/DeviceSupport/

sudo rm -f ./Latest

sudo ln -s ./5.1\ \(9B176\) ./Latest

Đã ngắt kết nối Lion DMG và khởi động lại Xcode. Điều này cho phép tôi kiểm tra 5.1 trong trình giả lập nhưng đã phá vỡ mọi bản dựng cho mọi thiết bị có lỗi SIGABRT hoặc liên kết.

Tôi đến cửa hàng Apple để họ khôi phục thiết bị của tôi. Nếu tôi có thêm thông tin, tôi sẽ cho tất cả các bạn biết. Đây là một bất ngờ RẤT NHIỀU và RẤT TUYỆT VỜI.


3
Tôi hoàn toàn đồng ý với bạn. Hành vi của Apple về điều này là vô trách nhiệm. Nó nói với bạn: họ không quan tâm.
EdH

3
Tôi đã từng yêu Apple trước khi tôi trở thành một trong những tên khốn tội nghiệp phải phát triển trên nền tảng iOS.
Alex Zavatone

8

Thêm vào giải pháp Richards ở trên, tôi thấy rằng nếu bạn cũng sao chép, từ XCode 4.3.1 dmg ...

chỉnh sửa: cập nhật để sửa đường dẫn trong dmg

/Volume/Xcode/Xcode.app/Contents/Developer/Plevelops/iPhoneOS.pl platform / Development / r / SDKs / iPhoneOS5.1.sdk ~ ~ (toàn bộ cây thư mục)

đến

/Developer/Plevelops/iPhoneOS.pl platform / Developer / SNKs /

Trình gỡ lỗi XCode sẽ khởi động chính xác (không có tất cả nhật ký lỗi và kết xuất)

ie:
===============================================================================
warning: Unable to read symbols from "dyld" (prefix __dyld_) (not yet mapped into memory).
warning: Unable to read symbols from "SystemConfiguration" (not yet mapped into memory).
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/Frameworks/MessageUI.framework/MessageUI (file not found).
warning: No copy of dyld found locally, reading from memory on remote device.  This may slow down the debug session.
warning: No copy of <No file name> found locally, reading from memory on remote device.  This may slow down the debug session.
warning: No copy of <No file name> found locally, reading from memory on remote device.  This may slow down the debug session.
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/Frameworks/SystemConfiguration.framework/SystemConfiguration (file not found).
warning: No copy of SystemConfiguration.framework/SystemConfiguration found locally, reading from memory on remote device.  This may slow down the debug session.
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/Frameworks/MessageUI.framework/MessageUI (file not found).
warning: No copy of MessageUI.framework/MessageUI found locally, reading from memory on remote device.  This may slow down the debug session.
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/Frameworks/AudioToolbox.framework/AudioToolbox (file not found).
warning: No copy of AudioToolbox.framework/AudioToolbox found locally, reading from memory on remote device.  This may slow down the debug session.
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/Frameworks/iAd.framework/iAd (file not found).
warning: No copy of iAd.framework/iAd found locally, reading from memory on remote device.  This may slow down the debug session.
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/PrivateFrameworks/SpringBoardServices.framework/SpringBoardServices (file not found).
warning: No copy of SpringBoardServices.framework/SpringBoardServices found locally, reading from memory on remote device.  This may slow down the debug session.
warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.1 (9B176)/Symbols/System/Library/PrivateFrameworks/FTClientServices.framework/FTClientServices (file not found).
warning: No copy of FTClientServices.framework/FTClientServices found locally, reading from memory on remote device.  This may slow down the debug session.
===============================================================================

Tôi nghĩ rằng đường dẫn mà bạn muốn nói là: nó?)
Richard Groves

Thật vậy, bạn đã đúng. cập nhật bài viết để phản ánh đúng đường dẫn của bạn. chúc mừng ~
dklt

7

Có một câu trả lời ở đây cũng cung cấp bản sao của trình giả lập v 5.1. Không có thao tác thủ công. Chỉ cần mở Terminal, sao chép và dán các lệnh được cung cấp.

http://www.iphnameevsdk.com/forum/iphone-sdk-development/100229-snow-leopard-sdk-5-1-a.html


Tôi đã làm theo cả bộ hướng dẫn của Richard Groves và @ dklt. Nó không hoạt động. Nhưng tôi đã sa thải các kịch bản được đưa ra trong liên kết này và nó hoạt động như một cơ duyên
Vaishnavi N Nikol

"Trang web này tại www.iphencedevsdk.com đã được báo cáo là trang tấn công và đã bị chặn dựa trên tùy chọn bảo mật của bạn." - Tôi sẽ rất cẩn thận :)
Roel Van de Paar

Toàn bộ trang web iphencedevsdk.com đã được báo cáo, không chỉ trang này.
tố cáo

5

nếu bạn cũng muốn thêm trình giả lập iphone 5.1 vào xcode của mình thì hãy sao chép

/Volumes/Xcode/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk

toàn bộ thư mục theo đường dẫn sau =>

/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/

sau khi bạn cũng có thể sử dụng trình giả lập iPhone 5.1 để gỡ lỗi ứng dụng của mình.


1
Tôi gặp các lỗi sau khi tôi làm điều này @ hchouhan02: Lỗi Trình biên dịch XIB của Trình tạo giao diện: "Lệnh / Nhà phát triển / usr / bin / ibtool không thành công với mã thoát 255" và Không được phân loại: "Xây dựng tác vụ thất bại mà không tạo thông báo lỗi."
JRoss

Hãy thử điều này => thoát xcode => mở xcode => dọn sạch dự án sau khi thử xây dựng dự án.
hchouhan02

5

Bạn có thể sử dụng các ứng dụng được biên dịch cho 5.0 trên thiết bị 5.1 hoặc 5.1.1 của mình bằng cách biên dịch chúng và kéo thủ công tệp .app vào iTunes. Đã thử ngày hôm nay trên 10.6.8 và XCode 4.2.


Điều này làm việc cho tôi ngày hôm nay. Tôi đang sử dụng SL với xcode 4.2. [Mac OS X 10.6.8 (10K549). Xcode 4.2 (4C199). iPhone OS SDK 5.0: (9A334).]
martin jakubik

Bạn có thể tìm thấy tệp .app trong ~ / Library / Developer / Xcode / DeruredData / {tên ứng dụng} / Build / Products / Deployment / (nhờ stackoverflow.com/a/9673810/1208218 )
Roel Van de Paar

Và một số thông tin khác ở đây về cách chính xác để có được tất cả hoạt động này: stackoverflow.com/a/11460561/1208218
Roel Van de Paar

4

Tải xuống chương trình cơ sở iOS 5.0.1 của thiết bị của bạn trên liên kết này: http://www.iphonefirmware.com/firmwares-doad .

Và thực hiện khôi phục thủ công trên iTunes.

Tôi đã làm điều đó ngày hôm nay (8 tháng 3) trên iPad 2 của tôi và nó hoạt động, Apple dường như vẫn ký phiên bản iOS này. Tôi đoán không lâu lắm, vì vậy hãy thực hiện nhanh chóng.


1
Ngày 10 tháng 3: Không hoạt động. Nhận được thông báo cho biết phiên bản phần mềm không được hỗ trợ cho thiết bị của tôi, iPod Touch 4G.
Seamus

Apple đã dừng ký hợp đồng kể từ cuối tuần trước
booker

3

Không thể sử dụng thiết bị 5.1 trên xcode 4.2, vì bạn không muốn nâng cấp, bạn có thể sử dụng trình tổ chức, chọn thiết bị của mình và sử dụng tính năng khôi phục. Bạn có thể google cho phiên bản 5.0.1 và sử dụng phiên bản đó.

(mặc dù nâng cấp lên sư tử là siêu rẻ)

EDIT: Có vẻ như điều này là có thể, cuộn lên để có câu trả lời được bình chọn cao nhất.


Vì sư tử núi sẽ được phát hành trong vài tháng nữa, tôi không muốn nâng cấp lên Lion ngay bây giờ, Giả sử rằng tôi có thể nâng cấp lên Mountain Lion từ Snow Leopard. Tôi đoán tôi cần tìm cách khôi phục iOS 5.0.1 cho thiết bị của mình. Cảm ơn
jpsasi

không có gì. Không nên khó khôi phục, Giống như tôi đã nói với bạn trước đây, xCode cung cấp tính năng khôi phục (được tìm thấy trong cửa sổ trình đơn của trình tổ chức-> tổ chức-> thiết bị-> RestoreIphone). Btw dunno nếu bạn có thể đi thẳng đến sư tử núi, như một ví dụ bạn phải vượt qua máng tuyết để đến sư tử từ báo.
Pochi

Rõ ràng trước tiên không cần phải nâng cấp lên Lion và bạn có thể đi thẳng từ Snow Leopard đến Mountain Lion
Roel Van de Paar

3

Tôi đang sử dụng Mac OS X 10.6.8 và Xcode 4.2 và cũng đã nâng cấp iPhone của tôi lên iOS 5.1. Tôi cần nhanh chóng tải phiên bản thử nghiệm lên thiết bị nhưng không có thời gian để cài đặt Lion và Xcode 4.3.

Tôi đã sử dụng TestFlight (www.testflightapp.com) để thử nghiệm beta. Tôi đã tạo một kho lưu trữ .ipa từ Xcode 4.2 và có thể cài đặt nó trên iPhone nâng cấp iOS 5.1 của tôi thông qua TestFlight.

Tôi biết đó không phải là một giải pháp lý tưởng nhưng nó đã giúp tôi thoát khỏi một vị trí chặt chẽ ngày hôm qua mà không cần phải dùng đến hack.

ps Tôi không liên kết với TestFlight dưới bất kỳ hình thức nào.


2

Xcode 4.2 dường như không còn khả dụng trên developer.apple.com cho người dùng báo tuyết :( cũng dành cho nhà phát triển iOS trả tiền đã đăng ký như tôi ...

Có vẻ như hiện tại không có cách nào hợp pháp để có được nó ...


2

Bạn cũng phải thêm bí danh Symbols..ví dụ trong /Developer/Platforms/iPhoneOS.platform/DeviceSupport/6.0 (10A403)bạn phải thêm bí danh Symbols trỏ đến /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdkđể xcode 4.2 có thể phát hiện thiết bị ios6 của bạn (đã thử nghiệm trên mac mini 1.5 intel core solo với snow Leopard). Chúc mừng


Trong trường hợp của tôi, Symbolsbí danh đã ở đó sau khi tôi sao chép DeviceSupport/6.0 (10A403)thư mục từ ảnh đĩa Xcode 4.5.
herzbube

1

Tôi nghĩ bạn có thể thử nghiệm thiết bị ios 5.1 trong Snow Leopard như được giải thích trong các bài viết ở trên. Nhưng nó luôn an toàn để nâng cấp lên Lion và sử dụng bản phát hành sdk chính thức. Bởi vì chúng tôi không thể dự đoán vấn đề nào có thể xảy ra nếu chúng tôi thực hiện một số "Thủ thuật" trên máy của mình để thực hiện và nó có thể xảy ra khi trong thời gian không mong muốn nhất của bạn (như khi gửi đến cửa hàng ứng dụng). :)


1

Kể từ ngày viết bài này 3 / 20.2012, Apple không cho phép mọi người cài đặt các tệp ipsw trước đó từ 5.0.1. Nếu bạn đã nâng cấp thiết bị của mình lên iOS 5.1, giống như tôi đã làm với gen 4 Touch của mình, thì bạn phải chạy iOS 5.1 trong Xcode 4.2 hoặc bạn phải hoàn nguyên thiết bị của mình thành 4.x hoặc bạn thay thế thiết bị của mình.

Tôi đã mang liên lạc của mình đến Apple Store và họ đã thay thế nó.

Nếu bạn cài đặt ipsw cho 5.0.1, các máy chủ của Apple sẽ tuyên bố rằng điều này không được phép đối với thiết bị của bạn và bạn sẽ không thể hoàn nguyên. Bạn sẽ phải thử 4.x với thiết bị của mình hoặc đảm bảo rằng SDK iOS 5.1 đang chạy trong Xcode 4.2.


0

Tôi đã tìm ra cách giải quyết nó!

Hệ thống của tôi là Snow Leopard 10.6.8 và tôi có hai bộ Xcode là 3.2.5 và 4.2, sau khi tôi nâng cấp iPad 1 lên iOS 5.1, tôi đã khởi chạy Xcode 3.2.5, nó nhắc tôi một cửa sổ 'thiết bị không xác định đã được tìm thấy ', tôi trả lời' Có 'để tải xuống nhiều thư viện từ iPad của tôi, vài phút sau, tôi có thể gỡ lỗi và chạy các dự án của mình trên iPad!

Sau đó, tôi đã khởi chạy Xcode 4.2 và mở một trong những dự án trước đây của mình, tôi thực sự có thể gỡ lỗi và chạy nó trên iPad của mình!

Theo cách này, bạn có thể sử dụng một trong hai phiên bản Xcode để phát triển ứng dụng trên hệ thống Snow Leopard.

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.