Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将对象而不是字符串传递给phonegap插件_Javascript_Cordova_Phonegap Plugins - Fatal编程技术网

Javascript 将对象而不是字符串传递给phonegap插件

Javascript 将对象而不是字符串传递给phonegap插件,javascript,cordova,phonegap-plugins,Javascript,Cordova,Phonegap Plugins,我已经为phonegap创建了一个简单的插件,但我想将对象作为参数而不是字符串传递,下面是我的代码结构 BackGroundService.java public class BackGroundService extends Plugin { public PluginResult execute(String arg0, JSONArray args, String arg2) { //How can i pass object instead or String

我已经为phonegap创建了一个简单的插件,但我想将对象作为参数而不是字符串传递,下面是我的代码结构

BackGroundService.java  

public class BackGroundService extends Plugin {
   public PluginResult execute(String arg0, JSONArray args, String arg2) {  //How can i pass object instead or String       
   }
}

worker.js
var worker = function(name, win, fail) {   
  PhoneGap.exec(win, win, "BackGroundService", "worker", [name]);
}

PhoneGap.addConstructor(function() {
  navigator.app.addService('BackGroundService','com.service.app.BackGroundService');

})  
从html调用

worker("football", win);   //Pass object instead of football        

var win = function(d) {
     alert("success");      
} 

将对象解包为字符串数组

假设您正在传递一个名为“Sport”的对象,该对象具有以下属性:

.名称:“足球” .球:“圆” .期间:2 .时间:45

您可以将此对象解压为[“Football”、“round”、2、45],并修改Java代码以获取每个参数:

    String name = args.getString(0);
    String ball = args.getString(1);
    int periods = args.getInt(2);
    int timing = args.getInt(3);