私は現在、オブジェクト指向の方法で画像メタデータにアクセスするための単純なライブラリを作成しようとしています(辞書はもうありません)。私はたくさんの奇妙なバグに遭遇しました:
、、、キーが定義されている場合でも
kCGImagePropertyMakerMinoltaDictionary
、プロジェクトのコンパイル時kCGImagePropertyMakerFujiDictionary
にkCGImagePropertyMakerOlympusDictionary
、kCGImagePropertyMakerPentaxDictionary
キーが未定義であるというエラーが発生します。アーキテクチャarmv7の未定義のシンボル: "_ kCGImagePropertyMakerMinoltaDictionary"、参照元:-SYMetadata.oの[SYMetadatametadataMakerMinolta] ld:アーキテクチャarmv7のシンボルが見つかりません
kCGImagePropertyExifBodySerialNumber
からも定義されたキーですがImageIO/CGImageProperties.h
、iOS 5.1.1でプロジェクトをロードすると、使用できないというエラーが表示されます。dyld:シンボルが見つかりません:_kCGImagePropertyExifBodySerialNumber参照元:/var/mobile/Applications/0D8144E6-6313-4347-B503-247F5ACC0A11/ConnectTIG.app/ConnectTIG予期される場所:/System/Library/Frameworks/ImageIO.framework/ImageIO in / var /mobile/Applications/0D8144E6-6313-4347-B503-247F5ACC0A11/ConnectTIG.app/ConnectTIG
Appleには、たとえば、存在しているが機能していない可能性のあるメタデータ辞書キーが多数あります
kCGImagePropertyMakerNikonDictionary
。たとえば、Nikon D3100で撮影した写真があります。Macのプレビューアプリで開くと、Nikonメタデータにアクセスできますが、iPhoneですべてのキーと値を取得すると、これらの情報がありません。
Moutain Lion10.8.2でXCode4.5.2(最後の安定したビルドAFAIK)を実行しています。デバイスとシミュレータでコンパイル/実行してみましたが、同じ結果になりました。
これはパブリックライブラリになるので、私はすでにすべてをgithubリポジトリに持っています:https ://github.com/dvkch/SYPictureMetadata
それらのバグがどこから来ているのかを発見することをいとわない人は、いつでもコードをいじってプッシュリクエストを送信することを歓迎します。
あなたが可能な考えを持っているならば、それは非常にありがたいです!
スタン