用于在Safari中打开URL的AppleScript崩溃基于Flash的网站

时间:2010-06-04 06:22:03

标签: flash safari crash plugins applescript

我正在尝试在Safari中打开一个网址。它适用于没有嵌入Flash的网站,但会破坏Flash网站的Safari。

示例(本作品):

tell application "Safari" to open location "http://google.com"

Safari尚未运行时崩溃:

tell application "Safari" to open location "http://grooveshark.com"

我发现了两件事:

  • Safari仅针对具有嵌入式Flash的网站崩溃
  • 如果创建了一个新的Safari实例(即Safari之前没有运行),上面的脚本只会崩溃。

从第二次观察我认为它可能是某种许可问题。也许从AppleScript启动的Safari实例在加载插件时遇到问题?

2 个答案:

答案 0 :(得分:1)

您知道“开放位置”不是Safari applescript命令吗?因此,您不应该告诉safari运行该命令。 “打开位置”是对AppleScript的标准添加,它用于在处理URL的默认应用程序中打开URL。另外,如果Safari是用户的默认应用程序,并且如果safari尚未运行它会崩溃,那么为什么不首先启动safari,然后调用你的命令...我还没试过......它只是一个建议...

tell application "Safari" to launch
open location "http://grooveshark.com"

顺便说一下,如果你想确保使用safari,那么你打开这样的网址......

tell application "Safari"
    launch
    make new document
    tell document 1 to set URL to "http://grooveshark.com"
end tell

答案 1 :(得分:0)

在使用Xcode时,我曾经遇到过类似的问题。我后来意识到它是由Flash中的资产引起的。如果您将AppleScript转换为应用程序,则应解决问题。

在Xcode上,转到Run - >在Debugger()/ DebugStr()上停止并取消选中该选项(如果已启用)并再次构建应用程序。