ตำแหน่งเครื่องจำลอง iPhone


124

เครื่องจำลอง iPhone ของฉันติดตั้งอยู่ที่ไหนในเครื่อง

ฉันพยายามค้นหาว่ามีการจัดเก็บแอปพลิเคชันทดสอบที่ฉันเรียกใช้ในโปรแกรมจำลองอยู่ที่ไหน

คำตอบ:


143

Simulator: ~/Library/Application Support/iPhone Simulator/

คุณสามารถเรียกดูไฟล์จำลองจากไดเร็กทอรีนั้นใน Mac OS X


9
นั่นไม่ใช่ตำแหน่งของเครื่องจำลองแต่เป็นไฟล์ข้อมูลซึ่งดูเหมือนจะเป็นเจตนาของ OP
Sophie Alpert

6
คุณสามารถใช้~ในเส้นทางแทน/Users/INSERT_YOUR_USER_HEREดังนั้นจึงกลายเป็น: ~/Library/Application Support/iPhone Simulator/
progrmr

2
ฉันใช้เสรีภาพในการปรับเส้นทางด้วย~คำแนะนำที่ progrmr แนะนำ
Besi

31
คำตอบล้าสมัยสำหรับฉัน (xcode 4.3.3) มันอยู่ในเนื้อหาแพ็คเกจของ Xcode (จากนั้นในDeveloper/Platforms/iPhoneSimulator.platform/Developer/Applications/iPhone Simulator.app) ตามที่stackoverflow.com/questions/1567798/…กล่าวถึง
abernier

3
สำหรับการคัดลอกวางลงในเทอร์มินัล: cd ~ / Library / Application \ Support / iPhone \ Simulator /
Tony Gibbs

73

อัปเดตสำหรับ Xcode 4.4 : ในขณะที่เครื่องจำลอง iPhone ยังอยู่ที่เดิม Apple ได้รวมทางลัดไปยัง iPhone Simulator ไว้ที่:

/Applications/Xcode.app/Contents/Applications

การเปลี่ยนแปลงตั้งแต่ Xcode 4.3.1

โปรดทราบว่ารุ่นใหม่ของ Xcode คือตอนนี้ที่มีอยู่บนMac App Store ดังนั้นทุกสิ่งที่เคยมาพร้อมกับตัวติดตั้งจึงรวมอยู่ในXcode.appไฟล์.

ดังนั้นไบนารี iOS Simulator จึงอยู่ที่นี่:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/

แอพที่ติดตั้งในโปรแกรมจำลองพร้อมกับไฟล์กำหนดค่าอื่น ๆ ยังคงอยู่ที่นี่:

~/Library/Application Support/iPhone Simulator/

นี่คือสารสกัดจากบันทึกประจำรุ่นปัจจุบันของXcode 4.3.1

มีอะไรใหม่ใน Xcode 4.3.1

ขณะนี้ Xcode ได้รับการแจกจ่ายเป็นแอปพลิเคชันแทนที่จะเป็นตัวติดตั้ง การเปลี่ยนแปลงนี้ทำให้สามารถอัปเดต Xcode ได้โดยตรงจาก Mac App Store


54

ตั้งแต่ Xcode 6 และ iOS 8 คุณจะพบได้ที่นี่:

~/Library/Developer/CoreSimulator/Devices/{cryptic number}/data/Containers/Data/Application/{cryptic number}/

หรือคุณสามารถรับได้จากการเรียกใช้โค้ดด้านล่าง:

 NSLog(@"Documents Directory: %@", [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]);

1
เพื่อชี้แจงมันจะอยู่ในโฟลเดอร์ไลบรารีผู้ใช้ของคุณดังนั้นเส้นทางจะเป็น ~ / Library / Developer / <ส่วนที่เหลือของเส้นทาง>
Josh Buhler

1
คุณแน่ใจหรือไม่ว่านี่คือ iOS Simulator หรือข้อมูลที่จัดเก็บโดยแอปที่ทำงานในโปรแกรมจำลอง
Awesome-o

28

Xcode 6 ->/Users/{YOUR NAME}/Library/Developer/CoreSimulator/Devices/{DEVICE ID}/data/Containers/Data/Application/{APPLICATION ID}/

หรือพิมพ์ในคอนโซล Xcode

#if TARGET_IPHONE_SIMULATOR
    NSLog(@"Documents Directory: %@", [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]);
#endif


13

หากต้องการค้นหาการติดตั้งแอปพลิเคชันล่าสุดของคุณในโปรแกรมจำลองคุณสามารถใช้คำสั่งนี้:

find "/Users/$USER/Library/Application Support/iPhone Simulator" -type d -name 'YourAppName.app' -print0 | xargs -0 ls -td | head -1

อย่าลืมแทนที่ YourAppName ด้วยชื่อแอปของคุณ!



8

ด้วยการเปิดตัว CoreSimulator ใน Xcode 6 อุปกรณ์จำลองแต่ละเครื่องจะมีข้อมูลของตัวเอง เวอร์ชันก่อนหน้ามีอุปกรณ์ทั้งหมดแชร์ข้อมูลเดียวกันสำหรับ iOS แต่ละเวอร์ชัน

อุปกรณ์อยู่ใน ~ / Library / Developer / CoreSimulator / Devices บันทึกอยู่ใน ~ / Library / Logs / CoreSimulator

โปรดทราบว่า ~ / Library / Developer / CoreSimulator / Devices // data / Library / Logs เป็น symlink ไปยัง ~ / Library / Logs / CoreSimulator /

CoreSimualtor จะสร้างชุดอุปกรณ์เริ่มต้นเมื่อใช้งานครั้งแรก (และหลังจากการติดตั้งรันไทม์จำลองรุ่นเก่า) คุณสามารถเพิ่มหรือลบอุปกรณ์ใหม่จากภายใน Xcode.app หรือจากบรรทัดคำสั่งโดยใช้ 'xcrun simctl create' หรือ 'xcrun simctl delete'


6

ใน X-Code 4.2
ภาพถ่ายของเครื่องจำลอง iPhone จะถูกเก็บไว้ในรูปแบบ

/Users/user_name/Library/Application Support/iPhone Simulator/5.0/Media/DCIM/100APPLE

6

ตั้งแต่ 4.3.2 ของ Xcode สำหรับ Lion ตัวจำลอง iOS จะอยู่ในเนื้อหาของแพ็คเกจแอพ ... หากคุณคลิกขวาที่ xcode.app แล้วคลิก "แสดงเนื้อหาแพ็คเกจ" จากนั้นไปที่ Contents / Developer / Platforms / iPhoneSimulator .platform / ผู้พัฒนา / แอปพลิเคชันที่นั่นคุณจะพบแอป iOS Simulator ... เพียงลากไปที่ท่าเรือของคุณแล้วไปที่นั่น ... หรือคุณสามารถสร้างนามแฝงและลากไปยังเดสก์ท็อปของคุณ (หรือทุกที่ที่คุณต้องการ) เพื่อความสะดวก เข้าถึงตัวจำลอง ... ทำไม Apple ถึงตัดสินใจฝังมันลงในแพ็คเกจฉันไม่รู้เลย



4

คำตอบด้านบนถูกต้องสำหรับตำแหน่งของแอปจำลอง แต่มีตำแหน่งรองที่เก็บแอพตัวอย่าง (และแอพที่คุณสร้าง) ไว้เพื่อให้เครื่องจำลองเข้าถึง นี่คือ:

~ / Library / Developer / CoreSimulator / อุปกรณ์

แต่ละ subdir คือรหัสอุปกรณ์ คุณสามารถค้นหาว่าแอปของคุณอยู่ที่ใดโดยดูใน dirs เหล่านี้ที่ data / Containers / Bundle / Application / {app_id}


4

สำหรับ xcode 7 คุณจะพบได้ที่นี่

/Users/{USERNAME}/Library/Developer/CoreSimulator/Devices/{CRIPTIC NUMBER}/data/Containers/Data/Application/{CRIPTIC NUMBER}/Documents/

หรือรันโค้ดด้านล่างในโปรเจ็กต์ xcode ของคุณ

วัตถุประสงค์ค

NSLog(@"Documents Directory: %@", [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]);

รวดเร็ว

print(applicationDocumentsDirectory.path)



3

ฉันพบวิธีที่ง่ายที่สุดในการค้นหาโดยใช้โปรแกรม เรียกใช้แอปและใส่ NSLog () สำหรับ [NSBundle MainBundle] มันจะแสดงเส้นทางทั้งหมดของแอปที่ทำงานในโปรแกรมจำลอง


2

วิธีที่ง่ายและเซ็กซี่สุด ๆ คือการใช้ Apple Script:

property findtype : quoted form of "kMDItemContentType = \"com.apple.application-bundle\""

set simulatorFolder to POSIX path of (path to application support folder from user domain) & "iPhone Simulator/"
set appFiles to paragraphs of (do shell script "mdfind -onlyin " & quoted form of simulatorFolder & " " & findtype)
if appFiles is not {} then
    set mostRecentApp to item 1 of appFiles
    tell application "Finder" to reveal ((POSIX file mostRecentApp) as alias)
    tell application "Finder" to activate
end if

วางสิ่งนี้ลงใน Apple Script Editor แล้วส่งออกเป็นแอพ Mac จากนั้นคุณสามารถเรียกใช้แอปได้ทุกเมื่อที่คุณต้องการให้หน้าต่าง Finder เปิดในแซนด์บ็อกซ์ รหัสนี้ได้รับความอนุเคราะห์จาก StefanK ที่ MacScripter


2

ฉันใช้เวลาสักพัก แต่ฉันเพิ่งพบของฉันที่ /Applications/Xcode.app/Contents/Developer/Applications/iOS\ Simulator.app

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.