非大神。
如果第三方app也是你写的,或者两个app已经约定好参数传递的方式,实质是可以的。
下面给出我自己一个app跳转到另一个app,并进行参数传递的方法。
方法一,使用Intent(就像跳转一个Activity那样去跳转就行了):
Intent intent = new Intent("com.example.****.filter");//对应被调起的主Activity的filter,或者用Activity也行
Bundle bundle = new Bundle();
bundle.putString("param", param);
intent.putExtras(bundle);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);// 如果对方已启动,直接用那个task,略暴力(会导致已启动的app的状态处于初始化状态)
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
接受方使用常规的getIntent就能拿到参数了。
方法二,使用scheme+host,(刚学的,让html调起用):
m://my.com/?arg0=0&arg1=1
被调起的app需要在manifest注册对应的scheme+host,
<data
android:host="my.com"
android:scheme="m" />
参数则通过arg等键值对传递。
接收方用这种方法解析(当然可以在这里get出host和scheme,再进行精确匹配)
Uri uri = getIntent().getData();
String test1= uri.getQueryParameter("arg0");
String test2= uri.getQueryParameter("arg1");
实质上关键是你那个被调起的app要跟你约定好,自己做的app就什么都好,第三方app通常都会给出接口的。关键还是要约定好,只有你一边想实现,还是不太行。
(新手第一答,不太会用格式刷。。)
3 个回复
隔壁的 (作者)
官方有没有大神回复下,能就能,不能就不能。给我个答复吧,免得我再在这上面花心思。来人好么?
Rere
非大神。
如果第三方app也是你写的,或者两个app已经约定好参数传递的方式,实质是可以的。
下面给出我自己一个app跳转到另一个app,并进行参数传递的方法。
方法一,使用Intent(就像跳转一个Activity那样去跳转就行了):
接受方使用常规的getIntent就能拿到参数了。
方法二,使用scheme+host,(刚学的,让html调起用):
m://my.com/?arg0=0&arg1=1
被调起的app需要在manifest注册对应的scheme+host,
<data
android:host="my.com"
android:scheme="m" />
参数则通过arg等键值对传递。
接收方用这种方法解析(当然可以在这里get出host和scheme,再进行精确匹配)
Uri uri = getIntent().getData();
String test1= uri.getQueryParameter("arg0");
String test2= uri.getQueryParameter("arg1");
实质上关键是你那个被调起的app要跟你约定好,自己做的app就什么都好,第三方app通常都会给出接口的。关键还是要约定好,只有你一边想实现,还是不太行。
(新手第一答,不太会用格式刷。。)
n***@gmail.com
在hbuilder的app里通过plus.runtime.launchApplication传递的值如何在android里接收参数
2016-11-01 17:35
小明子
请问楼主你是否已经解决安卓传参无法获取的问题????