package com.ab.galaxy.test.main;
/////////////////////////////////////////////////////////
//支持: Mac OS X, GNU/Linux, Unix, Windows XP//
//可免费使用 //
/////////////////////////////////////////////////////////
import java.lang.reflect.Method;
/**
*<dl>
*<dt>类名:OpenUrl</dt>
*<dd>描述: </dd>
*<dd>公司: 安邦保险-欣欣苹果网络科技有限公司</dd>
*<dd>创建时间:2012-8-28 下午02:41:33</dd>
*<dd>创建人: WangDawei</dd>
*</dl>
*/
public class OpenUrl {
public static void openURL(String url) {
try {
browse(url);
} catch (Exception e) {
}
}
private static void browse(String url) throws Exception {
//获取操作系统的名字
String osName = System.getProperty("os.name", "");
if (osName.startsWith("Mac OS")) {
//苹果的打开方式
Class fileMgr = Class.forName("com.apple.eio.FileManager");
Method openURL = fileMgr.getDeclaredMethod("openURL", new Class[] { String.class });
openURL.invoke(null, new Object[] { url });
} else if (osName.startsWith("Windows")) {
//windows的打开方式。
Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + url);
} else {
// Unix or Linux的打开方式
String[] browsers = { "firefox", "opera", "konqueror", "epiphany", "mozilla", "netscape" };
String browser = null;
for (int count = 0; count < browsers.length && browser == null; count++)
//执行代码,在brower有值后跳出,
//这里是如果进程创建成功了,==0是表示正常结束。
if (Runtime.getRuntime().exec(new String[] { "which", browsers[count] }).waitFor() == 0)
browser = browsers[count];
if (browser == null)
throw new Exception("Could not find web browser");
else
//这个值在上面已经成功的得到了一个进程。
Runtime.getRuntime().exec(new String[] { browser, url });
}
}
}
相关推荐
总之,Java调用浏览器打开URL地址主要依赖于`java.awt.Desktop`类的`browse()`方法,这是一种跨平台且易于使用的解决方案。如果需要更精细的控制,可以考虑使用特定浏览器的命令行接口。在实际开发中,确保对各种...
Java调用本地浏览器的示例,通常涉及到Java与操作系统交互的能力,这主要通过Java的`Runtime`类或者`ProcessBuilder`类实现。这两个类允许Java程序执行系统命令,例如打开一个本地已安装的浏览器来加载特定的URL。...
本主题将详细讲解如何实现这一功能,即在Android应用卸载或删除时调用系统浏览器打开指定的网页URL。 首先,我们需要了解Android应用程序的生命周期。在Android中,当用户卸载应用时,系统会触发一系列生命周期方法...
对于网络浏览器而言,这意味着它可以在多种操作系统上运行,如Windows、Mac OS X和Linux等。 1. **JavaFX**:JavaFX是Oracle提供的用于构建富客户端应用的框架,它特别适合用来创建具有现代UI设计的网络浏览器。...
本主题将深入探讨通过JNI(Java Native Interface)实现的Java浏览器控件,这是一种Java与本地操作系统代码交互的技术。 JNI是Java平台的一部分,它允许Java代码调用C、C++等本地代码,反之亦然。这种机制使得...
通过JNI,Java应用程序可以直接调用操作系统级别的API,从而实现与硬件设备如扫描仪的通信。JNA则提供了一种更高级别的抽象,无需编写C/C++代码,直接用Java来映射原生库函数。这两种方式都能让Java程序调用扫描仪的...
虽然Java本身不直接支持,但可以通过提供API和使用JNI(Java Native Interface)调用本地代码来实现。 以上只是创建一个Java浏览器的基本要素,实际开发中还需要考虑性能优化、内存管理、错误处理、用户交互设计等...
首先,我们需要判断当前系统是否支持`Desktop`类,然后创建一个`URI`对象表示要打开的URL,最后调用`browse()`方法打开默认浏览器。以下是完整的代码示例: ```java import java.awt.Desktop; import java.net.URI;...
1. **操作系统与浏览器的交互**:操作系统负责管理用户界面和应用程序,当用户点击一个超链接或者通过编程方式请求打开网页时,操作系统会调用缺省浏览器来处理。这种交互基于操作系统提供的API(应用程序接口)。 ...
Java 网页浏览器组件是Java编程中一个重要的部分,它允许开发者在Java应用程序中嵌入网页浏览功能。这样的组件通常被称为Java Web Start(JWS)或JavaFX WebView,它们为用户提供了一种在不依赖外部浏览器的情况下...
在IT行业中,根据URL获取页面截图是...这个功能在很多应用场景中都十分有用,比如自动化测试中验证网页布局,或者用于数据监控系统记录网页状态。同时,注意处理URL参数和正确保存截图文件也是实现这一功能的关键步骤。
\n\n总结,创建一个 Java 简单浏览器涉及到 JavaFX GUI 编程、网络通信、JavaScript 交互等多个方面,通过不断学习和实践,可以实现一个功能丰富的桌面浏览器。尽管面临一些挑战,但借助 Java 强大的库和框架,我们...
与Java标准库中的AWT和Swing不同,SWT直接调用操作系统的API,因此在性能和外观上更接近原生应用。这使得使用SWT创建的程序具有更好的响应速度和平台一致性。在我们的浏览器项目中,这一特性使得程序能够在不同的...
使用Java开发的URL转换工具通常具有跨平台性,可以在Windows、Linux、Mac OS等不同操作系统上运行。它对于开发者来说是一个实用的工具,特别是在处理复杂的URL逻辑时,能提高开发效率并确保URL处理的准确性。在实际...
- **PortType**:定义一组操作,可以被多个服务端点支持。 - **Binding**:描述服务如何与特定协议(如SOAP over HTTP)结合。 - **Port**:定义服务的具体访问点。 - **Service**:包含一个或多个服务端点的集合。 ...
这个过程需要在服务器端运行一个支持JavaScript的环境,如Node.js,然后通过Java调用。 在Node.js端,我们可以使用`puppeteer`库来实现: ```javascript const puppeteer = require('puppeteer'); async function ...
标题中的“java写得一个简单的浏览器”意味着我们将讨论如何使用Java编程语言开发一个基础的Web浏览器。Java是一种广泛使用的面向对象的编程语言,以其跨平台兼容性和强大的功能而闻名。要构建一个简单的浏览器,...
为了实现业务逻辑和处理Web Service响应,你需要创建一个或多个Java类文件。在NetBeans中,这可以通过右击源包,选择“New”>“Java Class”来完成。在这个类中,你将编写代码来调用Web Service并处理返回的结果。 ...
DoppioVM 是一个可在浏览器上直接运行 Java 项目的系统,无需任何插件支持。目前它包含一个完整的虚拟机以及一个 javap 字节码反汇编器。 brap(Java远程调用框架 BRAP) 一个Java远程调用框架,它将原生Java对象序列...
SWT是一个针对Java的本机GUI库,它提供了与操作系统原生界面组件的直接交互,从而创建出更符合平台风格的窗口和控件。相比Java Swing,SWT提供了更高的性能和更好的外观与感觉。SWT支持多种操作系统,包括Windows、...