Я создал приложение 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>
Теперь после этого я успешно могу открыть свое приложение, используя тег archor на странице html
<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);
}
}
Я также пытался найти его в Google, но не смог найти ответ, любая помощь будет оценена