जवाबों:
SDK 3.2 के लिए स्वीकृत उत्तर सही है - SDK 4 उस पथ में / उपयोगकर्ता फ़ोल्डर को बदल देता है जिसमें प्रत्येक लीगेसी iPhone OS / iOS संस्करणों के लिए एक संख्या हो सकती है, जिससे पथ बन सकता है:
~ / पुस्तकालय / अनुप्रयोग समर्थन / iPhone सिम्युलेटर / [ओएस संस्करण] / अनुप्रयोग / [appGUID] /
यदि आपके पास पिछले SDK स्थापित है, तो इसका 3.1.x सिम्युलेटर अपना डेटा सहेजना जारी रखेगा:
~ / पुस्तकालय / अनुप्रयोग समर्थन / iPhone सिम्युलेटर / उपयोगकर्ता / अनुप्रयोग / [appGUID] /
Xcode6 और iOS8 के लिए
~ / Library / डेवलपर / CoreSimulator / उपकरण / [DeviceID] / डेटा / कंटेनर / डेटा / आवेदन / [AppID] /
po NSHomeDirectory()
डीबगर में बस टाइप करें। कट और पेस्ट> Go> गो टू फोल्डर (Cmd-Shift-G) में।
NSLog
अपने में इस AppDelegate
के didFinishLaunchingWithOptions:
लिए, या आप कर सकते हैं po NSHomeDirectory()
डीबगर से। किसी भी स्थिति में, स्ट्रिंग की प्रतिलिपि बनाएँ और इसे खोजक में खोलें Cmd+Shift+G
। यह बेहतर काम करता है क्योंकि आप एक मानक आदेश के साथ पूछ रहे हैं बजाय कुछ जानने के लिए कि परिवर्तन होता है।
यह पता लगाने का एक और (तेज़?) तरीका है जहाँ आपका ऐप डेटा बिना टर्मिनल के है:
NSString *uniqueIdentifier = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
आपको डिवाइस पहचानकर्ता देता है
मिल गया:
~/Library/Application Support/iPhone Simulator/User/
iOS 8 ~ / लाइब्रेरी / डेवलपर / कोरसिम्युलेटर / डिवाइस / [डिवाइस आईडी] / डेटा / एप्लीकेशन / [appGUID] / दस्तावेज़ /
xcrun instruments -s
सिंह पर Users/[username]/Library
छिपी है।
फाइंडर में बस देखने के लिए, स्क्रीन के शीर्ष पर 'गो' मेनू पर क्लिक करें और 'लाइब्रेरी' दिखाने के लिए 'ऑल्ट' कुंजी दबाए रखें।
'लाइब्रेरी' पर क्लिक करें और आप अपने पहले से छिपे हुए लाइब्रेरी फ़ोल्डर को देख सकते हैं।
पहले सलाह दी जाती है:
उपयोग
chflags nohidden /users/[username]/library
फ़ोल्डर प्रदर्शित करने के लिए एक टर्मिनल में।
कहीं ब्रेकपॉइंट पकड़ो।
कंसोल विंडोpo NSHomeDirectory()
में दर्ज करें
(lldb) पो NSHomeDirectory () / उपयोगकर्ता / usernam / लाइब्रेरी / डेवलपर / CoreSimulator / डिवाइसेस / 4734F8C7-B90F-4566-8E89-5060505E387F (डेटा / कंटेनर / डेटा / एप्लीकेशन / 395818BB-6D0F-499F-AAFE-068
यदि सिम्युलेटर चल रहा है, तो आप किसी भी ऐप के कंटेनर में पथ प्राप्त कर सकते हैं:
xcrun simctl get_app_container booted <app bundle identifier>
उदाहरण आउटपुट:
$ xcrun simctl get_app_container booted com.example.app
/Users/jappleseed/Library/Developer/CoreSimulator/Devices/7FB6CB8F-63CB-4F27-BDAB-884814DA6FE0/data/Containers/Bundle/Application/466AE987-76BC-47CF-A207-266E65E7DE0A/example.app
simctl
UDID डिवाइस की अपेक्षा कहीं भी "बूटेड" को अधिकांश कमांड में प्रतिस्थापित किया जा सकता है।
आप के साथ उपकरणों की सूची देख सकते हैं xcrun simctl list
और विशिष्ट आदेशों पर सहायता प्राप्त कर सकते हैं xcrun simctl help
।
अपडेट : Xcode 8.3 में लोकप्रिय अनुरोध के द्वारा आप अब "ऐप", "डेटा", "ग्रुप", या ऐप ग्रुप आइडेंटिफ़ायर जोड़कर अपने इच्छित प्रकार के कंटेनर को निर्दिष्ट कर सकते हैं।
डेटा कंटेनर प्राप्त करने के लिए:
$ xcrun simctl get_app_container booted com.example.app data
Xcode 5 के साथ आप नीचे दिए गए कोड का उपयोग कर सकते हैं:
#import <Foundation/NSFileManager.h>
तथा:
NSString *homeDir = NSHomeDirectory();
NSLog(@"%@",homeDir);
परिणाम की तरह लग सकता है:
"/Users/<your user name>/Library/Application Support/iPhone Simulator/7.1/Applications/hhhhhhhh-hhhh-hhhh-hhhh-hhhhhhhhhhhh"
जहां hhhhhhhh-hhhh-hhhh-hhhh-hhhhhhhhhhhh
कुछ हेक्स स्ट्रिंग आपके iOS ऐप की पहचान कर रही है।
po NSHomeDirectory()
लगता है कि Xcode 6.0 ने इस स्थान को एक बार फिर से स्थानांतरित कर दिया है, कम से कम iOS 8 सिमुलेटर के लिए।
~ / Library / डेवलपर / CoreSimulator / उपकरण / [DeviceID] / डेटा / कंटेनर / डेटा / आवेदन / [AppID]
यह पता लगाने के लिए सबसे आसान तरीकों में से एक है कि ऐप सिम्युलेटर के भीतर कहां है। उपयोगकर्ता "NSTemporaryDirectory ()"
कदम-
जब ऐप ब्रेकपॉइंट पर रुक जाता है, तो Xcode कंसोल में निम्न कमांड टाइप करें।
पो NSTemporaryDirectory ()
उचित अंतर्दृष्टि के लिए नीचे दी गई छवि देखें
अब आपके पास अस्थायी फ़ोल्डर तक सटीक पथ है। आप वापस जा सकते हैं और एप्लिकेशन से संबंधित सभी फ़ोल्डर्स देख सकते हैं।
आशा है कि यह भी मदद करता है। हैप्पी कोडिंग :)
po NSHomeDirectory()
?
$ open /Library/Developer/CoreSimulator/Profiles/Runtimes
उदाहरण के लिए: iOS 13.0
, watchOS 6.0
ये सबसे अंतरिक्ष ले, अब तक। हर एक ~ 5GB तक हो सकता है
$ open ~/Library/Developer/CoreSimulator/Devices
उदाहरण के लिए: iPhone Xr
, iPhone 11 Pro Max
। ये आमतौर पर <15 mb होते हैं।
सिमुलेटर को रनटाइम और उपकरणों के बीच विभाजित किया जाता है। अगर तुम दौड़ते हो$ xcrun simctl list
हैं एक अवलोकन देख सकते हैं, लेकिन यदि आप इन सिमुलेटरों का भौतिक स्थान ढूंढना चाहते हैं, तो इन निर्देशिकाओं को देखें जिन्हें मैंने दिखाया है।
आपके द्वारा समर्थित रनटाइम को हटाने के लिए यह पूरी तरह से सुरक्षित है। आप चाहें तो इन्हें बाद में फिर से इंस्टॉल कर सकते हैं।
बस यह करें:
NSString *docDirPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0];
NSLog(@"%@", docDirPath);
और आपको कुछ इस तरह मिलेगा:
/ उपयोगकर्ताओं / व्यवस्थापक / Library / डेवलपर / CoreSimulator / उपकरण / 58B5B431-D2BB-46F1-AFF3-DFC789D189E8 / डेटा / कंटेनर / डेटा / आवेदन / 6F3B985F-351E-468F-9CFD-BCBE217A25FB / दस्तावेज़
वहां जाएं और आप XCode के संस्करण की परवाह किए बिना अपने ऐप के दस्तावेज़ फ़ोल्डर देखेंगे। (खोजकर्ता में "फ़ोल्डर पर जाएं ..." का उपयोग करें और एक पथ निर्दिष्ट करें "~ / पुस्तकालय")।
स्ट्रिंग पथ के लिए स्विफ्ट संस्करण:
let docDirPath =
NSSearchPathForDirectoriesInDomains(.documentDirectory,
.userDomainMask, true).first
print(docDirPath)
और फ़ोल्डर URL:
let docDirUrl =
FileManager.default.urls(for: .documentDirectory,
in: .userDomainMask).first
print(docDirUrl)
Xcode 4.6 के लिए यह निम्नलिखित पथ में संग्रहीत हो जाता है ...
/ उपयोगकर्ता / [करंट लगाने वाले] / पुस्तकालय / अनुप्रयोग समर्थन / iPhone सिम्युलेटर / 6.1 / अनुप्रयोग /
इसे जानने के लिए प्रोग्रामेटिकली निम्न कोड का उपयोग करें
NSLog(@"path:%@",[[NSBundle mainBundle]bundlePath]);
print("path: \(NSBundle.mainBundle().bundlePath)")
IOS 8 के लिए
दस्तावेज़ फ़ोल्डर का पता लगाने के लिए , आप दस्तावेज़ फ़ोल्डर में एक फ़ाइल लिख सकते हैं:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *fileName = [documentsDirectory stringByAppendingPathComponent:@"Words.txt"];
NSString *content = @"Apple";
[content writeToFile:fileName atomically:NO encoding:NSStringEncodingConversionAllowLossy error:nil];
कहते हैं, में didFinishLaunchingWithOptions
।
तब आप एक टर्मिनल खोल सकते हैं और फ़ोल्डर पा सकते हैं:
$ find ~/Library -name Words.txt
अगर किसी को अभी भी शेर में इस समस्या का सामना करना पड़ रहा है, तो आपके ~ / लाइब्रेरी डायर को देखने के लिए 19 विभिन्न युक्तियों के साथ एक शानदार लेख है। डैन फ्रिकेस के लेख को यहां देखें http://www.macworld.com/article/161156/2011/07/view_library_folder_in_lion.html
याद रखें कि सिम्युलेटर की निर्देशिका नीचे दी गई है
~ / पुस्तकालय / अनुप्रयोग समर्थन / iPhone सिम्युलेटर / उपयोगकर्ता /
MacOS कैटालिना के लिए, मैंने अपना db पाया:
~/Library/Developer/CoreSimulator/Devices/{deviceId}/data/Containers/Data/Application/{applicationId}/Documents/my.db
इसे प्राप्त करने के लिए applicationId
, मैंने अभी तक संशोधित करके फ़ोल्डर्स को सॉर्ट किया है, हालांकि मुझे यकीन है कि ऐसा करने का एक बेहतर तरीका है।
प्रतिक्रिया-मूल उपयोगकर्ताओं के लिए जो अक्सर Xcode का उपयोग नहीं करते हैं, आप बस उपयोग कर सकते हैं find
। एक टर्मिनल खोलें और डेटाबेस के नाम से खोजें।
$ find ~/Library/Developer -name 'myname.db'
यदि आपको सटीक नाम नहीं पता है तो आप वाइल्डकार्ड का उपयोग कर सकते हैं:
$ find ~/Library/Developer -name 'myname.*'
आप नीचे दिए गए कोड का उपयोग करके देख सकते हैं
NSString *fileName = @"Demo.pdf";
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *pdfFileName = [documentsDirectory stringByAppendingPathComponent:fileName];
NSLog(@"File path%@",pdfFileName);
वे एप्लिकेशन खोलें जहां आप App हैं जो आप सिमुलेटर पर xCode में बनाते हैं, निम्न कार्य करें:
इस कार्यक्रम से मेरा कोई ताल्लुक नहीं है, लेकिन अगर आप खोजकर्ता सिमपॉन्डर्स में से किसी को भी खोलना चाहते हैं तो यह अविश्वसनीय रूप से आसान हो जाता है।
cd ~/Library/Application\ Support/iPhone\ Simulator/