首页 > 解决方案 > JavaFX 应用程序自定义方案 URI 处理程序

问题描述

我创建了一个可以使用自定义方案打开的 JavaFX 应用程序myscheme://argument1/argument2

我已经成功实现了info.plist具有以下内容的文件:

<key>CFBundleURLTypes</key>


<array>
   <dict>
       <key>CFBundleURLName</key>
       <string>com.myapp.Main</string>
       <key>CFBundleURLSchemes</key>
       <array>
          <string>myscheme</string> // <-- this is the scheme which can open the application
       </array>
   </dict>
</array>

现在,在此之后,我可以使用 html 页面中的 archor 标记成功打开我的应用程序

<a href="scheme://argument1">Open App</a>

我面临的问题与参数有关,我的问题很简单,如何在应用程序的回调中接收参数。现在我的主要课程是这样的:

public class Main extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception {
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        Parent root = FXMLLoader.load(getClass().getResource("layouts/main.fxml"));
        primaryStage.setTitle(title);
        primaryStage.setScene(new Scene(root, screenSize.getWidth() / 2, screenSize.getHeight() / 2));
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

我也试过用谷歌搜索,但找不到我的答案,任何帮助将不胜感激

标签: javajavafxurl-scheme

解决方案


推荐阅读