Я пишу плагин PhoneGap для iOS.В файле javascript мне нужно передать в мою функцию несколько массивов .Однако в файле .m , [arguments count] показывает только количество строковых аргументов, которые я передал своей функции.Это означает, что массивы, переданные моей функции, не поняты / не видны в файле .m.
Ниже приводится описание сенарио:
In test.js, I call test() function with 2 arrays and 1 string.
In MyPlugin.m, in test() function, however, the number of arguments shown is only 1.
----------- plugin.js --------------------
function MyPlugin(){
};
MyPlugin.prototype.test = function(arg1, arg2, arg3){
PhoneGap.exec('MyPlugin.test', arg1, arg2, arg3);
}
//.....code is omitted......
------------------------------------------
---------------declare plugin----------------
function onDeviceReady() {
myPlugin = window.plugins.plugin;
}
--------------------------------------------------
-----------test.js where function is called----------------
function testPlugin(){
var arr1 = new Array(),
arr2 = newArray(),
text = 'sample string';
myPlugin.test(arr1, arr2, text);
};
-----------------------------------------------------------------------
--------------MyPlugin.m--------------------------
-(void)test:(NSMutableArray*)arguments withDict:(NSMutableDictionary*)options
{
NSUInteger argc = [arguments count];
NSLog(@"Number of arguments: %d", argc); //output: Number of arguments: 1
NSString *text = [arguments objectAtIndex:0];
NSLog(@"%@", text); //output: sample string
}
---------------------------------------------------------
Поэтому мой вопрос заключается в том, как передать массивыФункция JavaScript в плагине PhoneGap для iOS.
Спасибо