使用了两种方式来调用第三方应用,并传递三个参数值。
plus.runtime的extra方法只能正常传递第1个参数值,而intent方式可以正常传递3个参数值。
请帮忙看看是哪个环节出了问题?为什么extra方法无法正常传递多个参数呢?
{{{
<input type="button" onclick="openplayer1()" value="播放测试1" />
<input type="button" onclick="openPlayer2()" value="播放测试2" />
}}}
{{{
function openPlayer1() {
if ( plus.os.name == "Android" ) {
plus.runtime.launchApplication( {pname:"com.golive.mediaplayer"
,extra:{streamsource:"2" , filmid:"543f9bad00003d094d6a5a894ae93c91" , videourl:"183.60.142.157:9906"}}, function ( e ) {
alert( "检查到您未安装\"原力播放器\",是否到商城搜索下载?: " + e.message );
} );
}
}
}}}
{{{
function openPlayer2() {
var Intent = plus.android.importClass("android.content.Intent");
var intent = new Intent(Intent.ACTION_VIEW);
var ComponentName = plus.android.importClass("android.content.ComponentName");
var comp = new ComponentName("com.golive.mediaplayer", "com.golive.mediaplayer.MainActivity");
var main = plus.android.runtimeMainActivity();
intent.setComponent(comp);
intent.setAction("android.intent.action.MAIN");
intent.putExtra("streamsource", "1");
intent.putExtra("filmid", "543f6feb0005b8d84cbf6e201e330f36");
intent.putExtra("videourl", "183.60.142.157:9906");
main.startActivity(intent);
}
}}}
3 个回复
车仔 (作者)
我看到样例和文档说明里面extra都只写了一个参数。是因为extra方法只能正常传递第1个参数值吗?
车仔 (作者)
plus.runtime的extra方法与intent方式执行方式有不同吗?
Android_磊子
extra可以传递多个值,现在只支持第一个参数是个bug,下一版本会修正此bug。
另,plus.runtime的extra方法与intent方式执行方式有不同吗?Native.js更灵活一些,比如指定某程序要启动的Activity等。
n***@gmail.com
在hbuilder里传出来的值如何在android里面接收?
2016-11-01 17:33
hanbin655
什么时候能更新这个bug啊 现在我传输东西就只能自己做字符串处理了
2016-11-22 15:53
Android_磊子
回复 hanbin655:你碰到什么问题?
2016-11-28 14:40