从命令行Dart脚本启动Web浏览器

P.Y*_*.Y. 5 dart

我想从我在Dart中编写的一个小命令行应用程序中打开一个给定的URL.有什么简单的方法吗?这类似于Java中的Desktop#browse(URI).

Gün*_*uer 5

您需要使用Process.run()or启动它,Process.start()并且您必须自己处理操作系统差异。


- Linux 上,您可以使用Linux: 命令在默认浏览器中打开 URL(需要安装,但通常是默认设置)
- Windows https://superuser.com/questions/36728/can-i-launch-urls-from -command-line-in-windows
- OSX http://osxdaily.com/2011/07/18/open-url-default-web-browser-command-line/


小智 5

试试这个代码:

import "dart:io";

void runBrowser(String url) {
  var fail = false;
  switch (Platform.operatingSystem) {
    case "linux":
      Process.run("x-www-browser", [url]);
      break;
    case "macos":
      Process.run("open", [url]);
      break;
    case "windows":
      Process.run("explorer", [url]);
      break;
    default:
      fail = true;
      break;
  }

  if (!fail) {
    print("Start browsing...");
  }
Run Code Online (Sandbox Code Playgroud)