您的位置:首页 > 移动开发

通过网页打开App并传递参数

2016-01-14 00:31 423 查看
如果想要从网页中打开App,只要在AndroidManifest.xml文件中设置Activity的相关属性则可,具体如下:

<activity

android:name=".StartActivity">


<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.BROWSABLE" />

<data android:scheme="weixin" android:host="gameforums" android:pathPrefix="/message"/>
</intent-filter>


</activity>


这里想要注意的是,如果这个Activity同时也是App的启动页面的话,intent-filter不能同时放在一块。

接下来就是在StartActivity里面获取数据了,获取传递过来的参数代码如下:

Intent intent = getIntent();

String scheme = intent.getScheme();
Log.i(TAG, "scheme:" + scheme);

if (uri != null) {

String host = uri.getHost();
Log.i(TAG, "host:"+host);

String dataString = intent.getDataString();

Log.i(TAG, "dataString:" + dataString);

String param2 = uri.getQueryParameter("param2");

Log.i(TAG, "param2:" + param2);

String path = uri.getPath();
Log.i(TAG, "path:" + path);
String encodedPath = uri.getEncodedPath();
Log.i(TAG, "encodedPath:" + encodedPath);
String queryString = uri.getQuery();

}


接下来是测试,写一个简单的html来进行测试:

<a href="weixin://gameforums/message?param=456">打开App</a>


测试结果如下图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android app 网页打开