From e416b91512e2bd2a787243d7eed6b8fd865ad05a Mon Sep 17 00:00:00 2001 From: richie Date: Thu, 16 May 2019 12:57:16 +0800 Subject: [PATCH] =?UTF-8?q?REPORT-17178=20JSBridge=E7=BC=BA=E5=A4=B1?= =?UTF-8?q?=E4=BA=86=E9=83=A8=E5=88=86=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/fr/design/upm/UpmBridge.java | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/designer-base/src/main/java/com/fr/design/upm/UpmBridge.java b/designer-base/src/main/java/com/fr/design/upm/UpmBridge.java index 3d0f28613..1e4d6a743 100644 --- a/designer-base/src/main/java/com/fr/design/upm/UpmBridge.java +++ b/designer-base/src/main/java/com/fr/design/upm/UpmBridge.java @@ -10,6 +10,7 @@ import com.fr.design.extra.PluginUtils; import com.fr.design.extra.exe.GetInstalledPluginsExecutor; import com.fr.design.extra.exe.GetPluginCategoriesExecutor; import com.fr.design.extra.exe.GetPluginFromStoreExecutor; +import com.fr.design.extra.exe.GetPluginPrefixExecutor; import com.fr.design.extra.exe.PluginLoginExecutor; import com.fr.design.extra.exe.ReadUpdateOnlineExecutor; import com.fr.design.extra.exe.SearchOnlineExecutor; @@ -107,6 +108,12 @@ public class UpmBridge { callback.invoke(window, StringUtils.EMPTY); } + @JSBridge + public void getPluginPrefix(final JSFunction callback) { + UpmTaskWorker task = new UpmTaskWorker<>(new JSCallback(UpmBrowserExecutor.create(window, callback)), new GetPluginPrefixExecutor()); + task.execute(); + } + /** * 在线获取插件分类 * @@ -403,4 +410,27 @@ public class UpmBridge { FineLoggerFactory.getLogger().info(e.getMessage()); } } + + /** + * 使用系统浏览器打开网页 + * @param url 要打开的网页 + */ + @JSBridge + public void openShopUrlAtWebBrowser(String url) { + if (Desktop.isDesktopSupported()) { + try { + //创建一个URI实例,注意不是URL + URI uri = URI.create(url); + //获取当前系统桌面扩展 + Desktop desktop = Desktop.getDesktop(); + //判断系统桌面是否支持要执行的功能 + if (desktop.isSupported(Desktop.Action.BROWSE)) { + //获取系统默认浏览器打开链接 + desktop.browse(uri); + } + } catch (Exception e) { + FineLoggerFactory.getLogger().error(e.getMessage(), e); + } + } + } }