项目需要通过浏览器打开本地app,通过点击页面内的按钮打开指定app的特定页面。
- 先做一个简单的html页面,点击提交按钮打开应用:
<!DOCTYPE HTML>
<html>
<script>
function openUrl() {
window.location = 'intent://charge.app/view?code=123#Intent;package=com.gan.first;scheme=app;end;';
}
</script>
<body>
<input type="submit" value="Submit" onclick="openUrl()"/>
</body>
</html>
跳转地址的格式如下:
intent:
HOST/pathPrefix?query=xxx
#Intent;
package=xxx;
scheme=xxx;end;
2.在androidMainifest.xml文件对要启动的activity做如下配置:
<activity android:name=".notificaton.UrlOpenActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="charge.app"
android:path="/view"
android:scheme="app" />
</intent-filter>
</activity>
各参数与跳转地址对应。
3.在打开的activity的oncreate方法里获取参数
Intent intent= getIntent();
String action = intent.getAction();
if(Intent.ACTION_VIEW.equals(action)){
Uri uri = intent.getData();
if(uri != null){
tv.setText(uri.getQueryParameter("code"));
}
}
参考:
http://blog.csdn.net/geekpark/article/details/16118457
http://blog.html5funny.com/2015/06/19/open-app-from-mobile-web-browser-or-webview/