场景:通过浏览器打开URL或者扫描软件扫描URL来启动本地应用
Activity配置:
- <application
- android:allowBackup="true"
- android:icon="@drawable/ic_launcher"
- android:label="@string/app_name"
- android:theme="@style/AppTheme" >
- <activity
- android:name="com.fyfeng.webviewtest.MainActivity"
- android:label="@string/app_name" >
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- <intent-filter>
- <action android:name="android.intent.action.VIEW" /><!-- 显示数据 -->
- <category android:name="android.intent.category.DEFAULT" />
- <category android:name="android.intent.category.BROWSABLE" /><!-- 定义成浏览器类型,有URL需要处理时会过滤 -->
- <data android:scheme="fyfeng" /><!-- 打开以fyfeng协议的URL,这个自己随便定义。 -->
- </intent-filter>
- </activity>
- </application>
第二个intent-filter配置很重要,可以根据自己的需要单独配置一个activity作为调用界面,这里直接使用启动界面作为调用界面。
配置完成上面的intent-filter后在浏览器里面打开以fyfeng://协议开头的URL时系统会调用本地支持fyfeng协议的程序对fyfeng://xxxxx URL进行处理。
例如:
DEMO下载地址:http://download.csdn.net/download/yzwlord/5798277 不收费,随便下。
然后
浏览器打开URL: fyfeng://helloandroid
或扫描二维码:
会直接打开上面刚安装的本地应用,效果图如下。