कैसे जानें कि आपका कोड एक iPhone या एक iPhone3G पर चल रहा है यह बताने के लिए?

वोट
22

मैं अगर मेरे कोड एक iPhone या एक iPhone3G पर चल रहा है निर्धारित करने के लिए कोशिश कर रहा हूँ। मेरी पहली कोशिश UIKit में UIDevice वर्ग का इस्तेमाल किया गया, लेकिन दोनों iPhone और iPhone3G एक ही प्रतिक्रियाओं वापसी:

NSLog([[UIDevice currentDevice] name]); // Name of the phone as named by user
NSLog([[UIDevice currentDevice] uniqueIdentifier]); // A GUID like string
NSLog([[UIDevice currentDevice] systemName]); // iPhone OS 
NSLog([[UIDevice currentDevice] systemVersion]); // 2.2.1
NSLog([[UIDevice currentDevice] model]); // iPhone on both devices
NSLog([[UIDevice currentDevice] localizedModel]); // iPhone on both devices

उन केवल पैरामीटर UIDevice आप क्वेरी करने के लिए अनुमति देता है कर रहे हैं।

मैं फाउंडेशन फ्रेमवर्क में एक सा लग रहा था, लेकिन अभी तक उचित कॉल नहीं मिली है।

मुझे यकीन है कि वहाँ (जैसे स्थान सेवाओं में कुछ के रूप में) हार्डवेयर मैं क्वेरी सकता है के कुछ टुकड़ा है, लेकिन यह एक हैक की तरह लगता है कर रहा हूँ। किसी को भी इस का निर्धारण करने का एक तरीका है बस पता है?

27/03/2009 को 01:01
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


3 जवाब

वोट
21

IPhone ओएस एक्स चलाता है यहाँ एक लबादा डेस्कटॉप पर अपने हार्डवेयर प्लेटफार्म निर्धारित करने के लिए कैसे। यहां बताया गया है कि कैसे एक iPhone पर। यह एक ही सटीक बात है।

संक्षेप में, sysctlbyname("hw.machine", str, sz, 0, 0)में मंच नाम लिखेंगे str। यह "iPhone1,1" या iPhone और iPhone 3 जी के लिए क्रमशः "iPhone1,2" होता है।

27/03/2009 को 02:19
का स्रोत उपयोगकर्ता

वोट
6

मैं एक iPhone डेवलपर नहीं कर रहा हूँ, लेकिन मंच क्षमताओं के बजाय अंतर्निहित मंच के लिए जाँच लगभग हमेशा गलत विकल्प है। iPhone कार्यक्षमता आप की जरूरत लाभ हैं, तो आप अभी भी चलाने के लिए असफल हो जायेगी। वहाँ भी एक मौका आप अगले iPhone 4.0 (या जो भी यह कहा जाता है) पर गलत निर्णय करते हैं करेंगे।

27/03/2009 को 01:43
का स्रोत उपयोगकर्ता

वोट
0

मेरा अनुमान है iPhone कि iPhon3G कि आपका सॉफ़्टवेयर के साथ संबंध है पर नहीं है पर कार्यक्षमता है कि वहाँ है। मेरे सुझाव सॉफ्टवेयर प्लेटफॉर्म पर आधारित व्यवहार को बदलने के बजाय कि विशिष्ट हार्डवेयर के बारे में क्वेरी करने के लिए है।

उदाहरण के लिए। बजाय पूछकर जीपीएस के availibility के लिए जाँच के इस एक iPhone या iPhone3G जीपीएस की उपलब्धता के बारे क्वेरी है और वहाँ से चले जाते हैं। उस स्थिति में आपके कोड किसी भी मंच पर काम करेंगे (iPhone / iPod टच / iPhone 3 जी)

27/03/2009 को 01:49
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more