通过URL Scheme启动Android应用

1、自定义URL Scheme:

创建一个activity并加上一个<intent-filter>(如果该activity是包含其他<intent-filter>,则需新建一个<intenf-filter>,不能在原有filter上添加),内容为:
                <action android:name="android.intent.action.VIEW"/><!-- 若删除,使用startActivity启动android.content.ActivityNotFoundException,使用HTMLViewer启动找不到网页-->
                <category android:name="android.intent.category.BROWSABLE"/><!-- 若删除,使用startActivity启动ok,使用HTMLViewer启动找不到网页 -->
                <category android:name="android.intent.category.DEFAULT"/><!-- 若删除,使用startActivity启动android.content.ActivityNotFoundException,使用HTMLViewer启动找不到网页-->
                <data android:scheme="myapp"/><!-- scheme的值可自定义 -->

2、通过URL Scheme启动Android应用

方式一:通过代码访问:Intent intent = new Intent();
/**parse的参数值说明如下
* 只写myapp,启动android.content.ActivityNotFoundException
* 写myapp://12,成功
* 写myapp://da?sd=ad,成功
*/
intent.setData(Uri.parse("myapp://12"));
startActivity(intent);
方式二:通过网页访问:
/**href的值说明如下
* 只写myapp,找不到网页
* 写myapp://12,成功
* 写myapp://da?sd=ad,成功
*/

<html xmlns="http://www.w3.org/1999/xhtml" >
 <head>
     <title>通过URL Scheme启动Android应用</title>
 </head>
 <body>
     <form>
       <a href="myapp://12">启动</a>
     </form>
 </body>
</html>
创建完成后发送到手机,再点击html选择使用HTMLViewer打开,再点击链接即可启动应用。
3、总结:第二种方式实现有点繁琐,最好的实现方式是直接在浏览器中输入url以启动应用。在网上搜索找到应如下操作:在浏览器的搜索栏输入如下url:content://com.android.htmlfileprovider/storage/emulated/0/myapp://12,经测试无法成功。不知道是哪里的问题,还请知道的指点一二。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值