【发布时间】:2015-07-17 14:05:11
【问题描述】:
感谢您花时间阅读我的问题。
这很简单,但我对此完全不熟悉,所以遇到了一些麻烦。
是否有可能有一个applescript来检查mac应用商店的更新,如果有,将更新的数量输出到某个地方?
一个很好的例子是(如果你知道的话)geeklet 检查未读邮件,然后将其输出到桌面。
编辑:
我为未读邮件下载了一个 geeklet(如上所述),并以此为起点,尝试编写自己的脚本。
set run_bool to 1
tell application "System Events"
set run_bool to count (every process whose name is "App Store")
end tell
if run_bool is 1 then
tell application "App Store"
set update_count to 0
set output_string to ""
repeat with upd in Apps in Updates
if upd's download is not true then
set update_count to update_count + 1
end if
end repeat
if update_count is 0 then
set output_string to "zero"
else if update_count is 1 then
set output_string to "one"
else
set output_string to "two"
end if
end tell
else
set output_string to "not running"
end if
return output_string
现在这不是我的最终代码,只是检查它是否可以工作以及输出是什么。
编译时出现错误提示
错误“未定义变量更新。” “更新”中的数字 -2753
还有
语法错误
预期行尾,但发现未知标记
另外,当我停止编译时,它出现在我的代码最后一行的下方
告诉应用程序“GeekTool Helper”
激活
«事件 ascrgsdf»
感谢任何帮助。
【问题讨论】:
-
有什么理由不点击 菜单?更新数量显示在“App Store...”菜单项旁边,假设在“系统偏好设置”的 App Store 选项卡中选中“自动检查更新”选项。
-
@foo 我知道这一点,我的 Dock 上也有应用商店,它在小红圈中显示更新计数。但是,我正在将我的桌面精简到尽可能小。通过 geeklet 将其自动显示在我的桌面上,可以让我在每次有更新完成时收到通知,并且我不必定期手动检查 App Store。
-
您的脚本无法运行,因为 App Store.app 实际上不是 AppleScriptable。它在脚本编辑器中显示一个字典,但这只是您在应用程序的
Info.plist文件中设置NSAppleScriptEnabled标志时看到的默认 Cocoa 脚本术语。它实际上并没有做任何有用的事情,除非开发人员提供了他们自己的应用程序特定术语和 Objective-C 代码来连接它,而他们没有。 (App Store 也不是唯一一个执行“假 AppleScriptability”的 Apple 应用程序,这很烦人/令人困惑/侮辱,但大多数 Apple 开发人员还是希望 AS 到 DIAF。)
标签: macos applescript osx-yosemite