自动化和iTunes的Javascript:未保存更新说明?

时间:2015-01-10 18:32:52

标签: itunes osx-yosemite javascript-automation

使用Javascript for Automation(Yosemite),我想更新iTunes视频文件的说明。 问题:说明会恢复为旧值(例如评分正确保存)。

我使用的代码:

var track = Application("iTunes").selection()[0]; // get first track from selection

console.log("--- original values ---");
console.log(track.rating()); // shows original value (66)
console.log(track.description()); // shows original value ("old value")

console.log("--- set new values ---");
track.rating = 75;
track.description = "new value";

console.log("--- new values ---");
console.log(track.rating()); // shows correct value (75)
console.log(track.description()); // shows correct value ("new value")

console.log("--- refresh track ---");
track.refresh(); // has the same effect as doing Cmd-I in iTunes

console.log("--- new values after refresh ---");
console.log(track.rating()); // shows correct value (75)
console.log(track.description()); // shows original value ("old value") <=== incorrect

写入新值后一切正常,但刷新后描述会恢复为旧值。例如。评级已正确保存。

如果我不使用refresh(),并查看iTunes中的值,事情看起来很好(描述显示“新值”)但是一旦我做了Cmd-I就恢复到旧值对于那条赛道。 这就是为什么我使用refresh(),以确保我看到实际的最新值。

有什么建议吗?

0 个答案:

没有答案