Applescript:应用程序资源中文件的路径


0

我是AppleScript和编码的新手。

我正在尝试制作一个播放.app中包含的音频文件的Applescript应用程序,使用:

do shell script "afplay " & quoted form of ("/Users/billy/Desktop/test.app/Contents/Resources/Stuff/audio.m4a")    

问题是; 如何让应用程序在另一台Mac上运行,而无需手动更改/ username /?


我下面的两个答案和@adayzdone都给你提供了如何找到路径的好例子。但是在考虑分发应用程序时(我明白这可能仅适用于您的mac),您需要关注这样的资源的整个路径,而不仅仅是用户名。人们可以选择将应用程序存储在除硬编码之外的任何位置。
markhunte 2014年

同意,没有选择。
adayzdone 2014年

Answers:


1

尝试:

set pathA to POSIX path of (path to desktop as text) & "test.app/Contents/Resources/Stuff/audio.m4a"
-- or 
set pathB to POSIX path of (path to home folder as text) & "Desktop/test.app/Contents/Resources/Stuff/audio.m4a"

do shell script "afplay " & quoted form of pathA

尽管OP没有提及有关应用程序放置的任何内容。这确实假设在其他mac上应用程序将始终在桌面上
markhunte 2014年

这就是为什么我包含主文件夹的路径,以便您可以调整以下字符串。
adayzdone 2014年

您的代码没有任何问题:-)但是对于分发应用程序这很难
markhunte 2014年

谢谢你完美的工作 既然你提到过,无论文件是在桌面上,有没有办法让它工作?
bbglop 2014年

如果应用程序将跨机器放置在同一位置,请使用pathB并更新末尾的字符串以指定位置。正如市场提到的那样,如果您计划将此应用程序分发给可能将其存储在不同位置的其他用户,则可以使用资源路径。
adayzdone 2014年

1
   set myPath to POSIX path of (path to resource "audio.m4a")

    do shell script "afplay " & quoted form of myPath

要么

set myPath to POSIX path of (path to resource  "audio.m4a" in directory "Stuff")

do shell script "afplay " & quoted form of myPath

在此输入图像描述


您应该查看脚本编辑器的库窗口中的库。

在这种情况下,标准添加

在此输入图像描述


我收到脚本错误:找不到资源。
bbglop 2014年

@bbglop是你正在使用的实际路径。另外你是如何添加资源的呢?您应该通过Applet中的侧栏添加它。如果你改变它,你可能需要覆盖原件或写出新的副本
markhunte 2014年

@bbglop,你可以从我的更新中看到它确实有效吗?
markhunte
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.