>我创建了一个HelloPlugin.Js文件并将其复制到www / Js /文件夹下,其代码如下:
var HelloPlugin ={ callNativeFunction: function (success,fail,resultType) { alert('a'); return Cordova.exec( success,"HelloPlugin","nativeFunction",['1']); }};
>我在plugins文件夹下创建了HelloPlugin.h和HelloPlugin.m文件,代码如下:
// .h#import <Cordova/CDVPlugin.h>@interface HelloPlugin : CDVPlugin- (voID)nativeFunction:(CDVInvokedUrlCommand*)command;@end// .m#import "HelloPlugin.h"@implementation HelloPlugin- (voID)nativeFunction:(CDVInvokedUrlCommand*)command{ NSLog(@"Hello,this is a native function called from PhoneGap/Cordova!");}@end
>我在config.xml文件中添加了以下代码:
<feature name="HelloPlugin"> <param name="ios-package" value="CDVPlugin"/></feature>
>最后我按以下方式修改了index.HTML:
>添加了脚本参考. ()
> Js代码补充:
function callNativePlugin(returnSuccess) { HelloPlugin.callNativeFunction( nativePluginResultHandler,nativePluginErrorHandler,returnSuccess ); } function nativePluginResultHandler (result) { alert("SUCCESS: \r\n"+result ); } function nativePluginErrorHandler (error) { alert("ERROR: \r\n"+error ); }
>添加了两个按钮,功能称为:
“callNativePlugin( ‘成功’);”
“callNativePlugin( ‘错误’);”
我希望这是激活插件我需要做的唯一必要的事情.
问题:运行应用程序时,我在控制台上收到Failed pluginjsON错误.
输出:
– [CDVCommandQueue executePending] [第116行] Failed pluginjsON = [
“HelloPlugin2650437”
“与HelloPlugin”
“nativeFunction”
[
“1”,
“1”,
“1”
]
]
我做错了什么,请告诉我.我真的很感激你的努力.请帮帮我.
解决方法 跳出来的第一件事是你的插件包名称.它应该是您的iOS类名称,即“HelloPlugin”.<param name="ios-package" value="HelloPlugin"/>
引用插件的新方法的目的之一是允许插件名称的灵活性和向后兼容性,尤其是在AndroID上.例:
<feature name="HelloPlugin"> <param name="ios-package" value="HelloCDVPlugin"/> <param name="androID-package" value="com.phonegap.plugins.HelloCDVPlugin"/></feature>
“HelloCDVPlugin”是您的iOS类名称,“com.phonegap.plugins.HelloCDVPlugin”是您的AndroID类名.
总结以上是内存溢出为你收集整理的用于ios的PhoneGap插件返回FAILED pluginJSON全部内容,希望文章能够帮你解决用于ios的PhoneGap插件返回FAILED pluginJSON所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)