在 OSX 上使用 VLC 打开 link

Open link using VLC on OSX

我看到 Steam、Spotify 等应用程序能够在用户允许弹出框中的调用后从内部 Chrome 启动本机应用程序。我如何从我自己的网站上为 VLC 执行此操作,否则默认的系统视频流应用程序。

当然,例如,Safari 将为 rtmp:// 链接打开 VLC,例如

<a target="_blank"  href="rtmp://zozolala.com">text</a>

您可以从 JavaScript:

调用视频播放器
window.open('rtmp://zozolala.com', '_blank');

您可以通过将 OS X 应用添加到 .plist 来指定您的 OS X 应用程序可以打开的网址:

<key>CFBundleURLTypes</key>
<array>
    <dict>
        <key>CFBundleTypeRole</key>
        <string>Editor</string>
        <key>CFBundleURLIconFile</key>
        <string></string>
        <key>CFBundleURLName</key>
        <string>abc</string>
        <key>CFBundleURLSchemes</key>
        <array>
            <string>abc</string>
        </array>
    </dict>
</array>

如果你想为你的 VLC 提供 HTTPS URI(这个 URI 将默认在 Safari 中打开),你可以做一个技巧:准备 .m3u 播放列表文件,里面有 https:// 条目和通过一些其他协议(默认应用程序是 VLC)使此文件可用,例如 RSTP 或 SFTP。

不要假设用户安装了 VLC。准确回答您的要求:

  1. 如果您使用网络技术,您可能别无选择,只能使用 Java 插件、Flash、ActiveX 或 SilverLight 来执行外部应用程序。

    1. 这个用于 ActionScript (Flash) 的:Execute external exe from projector flash
    2. 这可能是您的 Java 插件 Executing an external program using process builder or apache commons exec
  2. 如果您使用的是本地技术(C/C++、Objective-C 等)。您可以使用 Exec... 更具体地说,在 Mac OSx 上,您可能需要参考 Execute a terminal command from a Cocoa app