通过URL来启动本地应用

场景:通过浏览器打开URL或者扫描软件扫描URL来启动本地应用


Activity配置:

[html]  view plain copy
  1. <application  
  2.         android:allowBackup="true"  
  3.         android:icon="@drawable/ic_launcher"  
  4.         android:label="@string/app_name"  
  5.         android:theme="@style/AppTheme" >  
  6.         <activity  
  7.             android:name="com.fyfeng.webviewtest.MainActivity"  
  8.             android:label="@string/app_name" >  
  9.             <intent-filter>  
  10.                 <action android:name="android.intent.action.MAIN" />  
  11.   
  12.                 <category android:name="android.intent.category.LAUNCHER" />  
  13.             </intent-filter>  
  14.             <intent-filter>  
  15.                 <action android:name="android.intent.action.VIEW" /><!-- 显示数据 -->  
  16.   
  17.                 <category android:name="android.intent.category.DEFAULT" />  
  18.                 <category android:name="android.intent.category.BROWSABLE" /><!-- 定义成浏览器类型,有URL需要处理时会过滤 -->  
  19.   
  20.                 <data android:scheme="fyfeng" /><!-- 打开以fyfeng协议的URL,这个自己随便定义。 -->  
  21.             </intent-filter>  
  22.         </activity>  
  23.     </application>  

第二个intent-filter配置很重要,可以根据自己的需要单独配置一个activity作为调用界面,这里直接使用启动界面作为调用界面。


配置完成上面的intent-filter后在浏览器里面打开以fyfeng://协议开头的URL时系统会调用本地支持fyfeng协议的程序对fyfeng://xxxxx URL进行处理。



例如:

DEMO下载地址:http://download.csdn.net/download/yzwlord/5798277 不收费,随便下。

然后

浏览器打开URL:  fyfeng://helloandroid

或扫描二维码:


会直接打开上面刚安装的本地应用,效果图如下。








在使用JavaScript启动本地应用程序时,可以通过使用浏览器的内置对象来实现。其中最常用的是window对象的open()方法。 首先,我们需要确认本地应用程序的路径,这可以是一个可执行文件或一个特定的URL。接下来,我们可以使用open()方法来打开该路径。open()方法通常需要两个参数:路径和目标。 例如,如果我们想要打开一个本地应用程序的可执行文件,可以使用以下代码: ``` window.open('file:///C:/path/to/application.exe'); ``` 在这个例子中,'file:///C:/path/to/application.exe'是本地应用程序的路径,你需要将其替换为实际的路径。请注意,这些路径通常会因操作系统和文件系统的差异而有所不同。 另外,如果我们想要打开一个特定的URL,可以使用以下代码: ``` window.open('http://example.com'); ``` 在这个例子中,'http://example.com'是要打开URL。同样,你需要将其替换为实际的URL。 需要注意的是,由于安全性的考虑,现代浏览器中的JavaScript通常无法直接启动本地应用程序。这是因为JavaScript在浏览器中运行时处于一个受限制的环境中,无法直接访问本地资源。幸运的是,使用浏览器的内置对象,如open()方法,我们可以间接地启动本地应用程序。 除了open()方法,还有其他方法可以通过JavaScript启动本地应用程序,如通过设置href属性来模拟点击一个链接或使用window.location.href来导航到特定的URL。具体使用哪种方法要根据具体情况来决定。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值