我的一个桌面应用程序我需要以编程方式知道iPhoto图库的安装位置。我不想从预测位置(/ Users / me / Pictures / iPhoto)中选择它,因为高级用户可能已将其安装在其他位置。
我正在使用Python开发应用程序,我猜Applescript可能有办法找出iPhoto位置,但我不知道如何。
答案 0 :(得分:2)
一种方法是使用'默认'。
AppleScript的:
set lib_path to do shell script "defaults read com.apple.iphoto LibraryPath"
应该采用类似的方式直接从Python中完成。
这样做的一个缺点是,Apple将来会改变iPhotos偏好文件的格式并且会中断。
答案 1 :(得分:1)
为什么不简单......
set myPath to path to application "iPhoto"
答案 2 :(得分:0)
只需调用系统命令which iPhoto
(假设您可以从shell运行iPhoto)并解析输出。
答案 3 :(得分:0)
[删除了基于LaunchServices的答案,因为OP显然想要iPhoto Library 的位置,而不是iPhoto本身。]
OP应该查看卡累利阿的iMedia framework(dev forum),其中包括iPhoto支持。 Karelia工作人员在确定如何使沙箱/ AppStore兼容方面做了很多工作,这也可能是一个考虑因素取决于OP计划如何分发应用程序。