0
Obj-C(XCode 4.1、SDK 10.7)のScript Bridgeを使用してiPhotoイメージのGPS情報にアクセスしようとしています。スクリプトブリッジとiPhoto - 緯度/経度情報はNSIntegerのみですか?
iPhotoApplication *iPhoto = [SBApplication applicationWithBundleIdentifier:@"com.apple.iPhoto"];
NSArray *selection = [iPhoto selection];
for (iPhotoPhoto *i in selection) {
NSLog(@"'%@': lat %ld, lon %ld", [i imageFilename], [i latitude], [i longitude]);
}
残念なことに、緯度と経度の特性は全く役に立たないこと(例えば、38120)のような結果が非常に不正確生じるタイプNSIntegerがある:ここでは、コードスニペットです。 Applescriptでアクセスしたときと同じプロパティが正しい値を返します(例:38.03555555、-120.401388883333)。 Obj-Cでこの情報を取得するより良い方法はありますか?
また、iPhotoPhotoクラスには "id"というプロパティがあります。これはidがObj-C予約語なので取得できません。 [i id]はコンパイルされますが、クラッシュします。再び、このプロパティを取得する方法は?
私はXCode 4/SDK 10.7用のappscriptをビルドしようとしましたが、成功しませんでした。