2012-12-16 8 views
5

मैं वर्तमान में किसी ऑब्जेक्ट उन्मुख तरीके से चित्र मेटाडेटा तक पहुंचने के लिए एक सरल लाइब्रेरी बनाने की कोशिश कर रहा हूं (कोई और शब्दकोश नहीं)। मैं अजीब कीड़े का एक बहुत का सामना करना पड़ा:आईफोन छविियो तस्वीर के सभी मेटाडेटा को वापस नहीं कर रहा है

  1. यहां तक ​​कि अगर kCGImagePropertyMakerMinoltaDictionary, kCGImagePropertyMakerFujiDictionary, kCGImagePropertyMakerOlympusDictionary, kCGImagePropertyMakerPentaxDictionary कुंजी परिभाषित कर रहे हैं, मैं जब मेरी परियोजना संकलन कहा कि वे अपरिभाषित कर रहे हैं कोई त्रुटि मिलती है: वास्तुकला ARMv7 के लिए

    अपरिभाषित प्रतीकों : "_kCGImagePropertyMakerMinoltaDictionary", से संदर्भित: - [SYMetadata metadataMakerMinolta] में SYMetadata.o ld: प्रतीक (रों) वास्तुकला ARMv7 के लिए नहीं मिला

  2. kCGImagePropertyExifBodySerialNumberImageIO/CGImageProperties.h से परिभाषित कुंजी भी है, लेकिन जब आईओएस 5.1.1 में प्रोजेक्ट को लोड मैं कह रहा यह उपलब्ध नहीं है कोई त्रुटि मिलती है:

    dyld: प्रतीक नहीं मिला: _kCGImagePropertyExifBodySerialNumber संदर्भित से:/var/मोबाइल/आवेदन /0D8144E6-6313-4347-B503-247F5ACC0A11/ConnectTIG.app/ConnectTIG अपेक्षित: /System/Library/Frameworks/ImageIO.framework/ImageIO /var/मोबाइल/एप्लिकेशन/0D8144E6-6313-4347-B503-247F5ACC0A11 में /ConnectTIG.app/ConnectTIG

  3. ऐप्पल में kCGImagePropertyMakerNikonDictionary उदाहरण के लिए मेटाडाटा शब्दकोश कुंजी उपलब्ध हैं, जो कि exis टी लेकिन काम नहीं कर रहे हैं। उदाहरण के लिए मेरे पास मेरे निकोन डी 3100 के साथ एक तस्वीर ली गई है: जब मैं इसे अपने मैक पर पूर्वावलोकन ऐप के साथ खोलता हूं तो मैं निकोन मेटाडेटा तक पहुंच सकता हूं, लेकिन जब मुझे आईफोन पर सभी चाबियाँ और मूल्य मिलते हैं तो मेरे पास ये जानकारी नहीं है।

मैं मौटन शेर 10.8.2 पर एक्सकोड 4.5.2 (अंतिम स्थिर बिल्ड AFAIK) चला रहा हूं। मैंने डिवाइस और सिम्युलेटर पर एक ही परिणाम संकलन/चलाने की कोशिश की। https://github.com/dvkch/SYPictureMetadata

उन जहां उन कीड़ों से कोड के साथ चारों ओर खेलने के लिए स्वागत कर रहे हैं आने की खोज और धक्का प्रस्तुत करने के लिए तैयार किसी भी समय अनुरोध करता है:

इस के रूप में एक सार्वजनिक पुस्तकालय मेरी GitHub रेपो पर मैं पहले से ही यह सब किया है किया जाएगा।

यदि आपके पास कोई संभावित विचार है तो इसकी बहुत सराहना की जाएगी!

स्टेन

+0

तो, मैं के रूप में लिखा थोड़ा भ्रमित कर रहा हूँ अपने प्रश्न द्वारा। क्या आप अपने आईफोन में अपने निकोन डी 3100 के साथ ली गई फाइलें ले जा रहे हैं? मेरा मतलब है, आईफोन पर ली गई तस्वीर में यह कुंजी कोई कारण नहीं है - यह निकोन नहीं है। ?? – Dad

+0

क्षमा करें, मैंने इसे मेल द्वारा स्थानांतरित करने का प्रयास किया, और आईफ़ाई कार्ड का भी उपयोग किया। उनमें से कोई भी काम नहीं करता, जब तक कि मैं एनईएफ प्रारूप का उपयोग नहीं करता। – dvkch

+0

दिलचस्प ..... – Dad

उत्तर

1

मुझे यकीन है कि एसडीके के साथ कुछ गड़बड़ है। आपको जो त्रुटि मिल रही है वह एक प्रतीक है जिसे एसडीके में परिभाषित किया गया है लेकिन वास्तव में अस्तित्व में नहीं है। मैंने आपकी परियोजना की जांच की है और आपने ImageIO.framework को शामिल किया है जहां वे सभी परिभाषित हैं, और वास्तव में सभी अन्य कुंजियां ठीक काम करती हैं। kCGImagePropertyMakerNikonCameraSerialNumber काम करता है लेकिन kCGImagePropertyMakerMinoltaDictionary नहीं करता है।

यदि आप CGImageProperties के लिए प्रलेखन के शीर्ष पर एक नज़र डालते हैं तो यह कहता है कि ढांचा "एप्लिकेशन सेवा/छवि" है। यह असंभव है, आईओएस पर एप्लीकेशन सर्विसेज मौजूद नहीं है। पहले से ही इस दस्तावेज़ में कम से कम एक त्रुटि। स्पष्ट रूप से उन्होंने ओएसएक्स प्रलेखन वर्बैटिम की प्रतिलिपि बनाई है।

मैं निश्चित रूप से इस समस्या और दस्तावेज़ीकरण पर एक बग रिपोर्ट दर्ज करूंगा।पर OSX

FWIW उन कुंजियों (आईओएस पर किए जाने वाले) इस प्रकार हैं:

{MakerCanon} 
{MakerNikon} 
{MakerMinolta} 
{MakerFuji} 
{MakerOlympus} 
{MakerPentax} 
+0

की आवश्यकता नहीं है धन्यवाद, मैंने यही सोचा। क्या आपके पास बिंदु 2 के बारे में कोई विचार है? क्या यह वही मुद्दा है? 3 के बारे में क्या? – dvkch

+0

ओह और यदि आपके पास कोड के संकलन के लिए या किसी भी प्रकार के कोड को संकलित करने के लिए कोई तरीका है, उदाहरण के लिए, 'केसीजीआईमेजप्रॉपर्टीएक्सिफ़ बॉडीसेरियल नम्बर' के उपयोग के बिना, मुझे अपने तरीके आईओएस 5.0 के तहत काम करना अच्छा लगेगा और हमेशा शून्य नहीं होगा, और यह वास्तव में संस्करणों के लिए कुंजी का उपयोग करेगा 6.0 से बेहतर – dvkch

+0

बग रिपोर्ट भर गई, मुझे आशा है कि उनके पास जवाब होंगे। मैंने संस्करण 5.1 पर आईओएस सिम्युलेटर काम नहीं करने के बारे में पहले से ही एक बग भर दी है और कभी जवाब नहीं मिला – dvkch

संबंधित मुद्दे