2013-02-19 20 views
1

我想在iOS上實現我的第一個phonegap插件(版本2.3) - 但本機函數調用似乎不起作用。iOS上的Phonegap插件不調用本地代碼

我的插件在此基礎上介紹: http://docs.phonegap.com/en/2.3.0/guide_plugin-development_ios_index.md.html#Developing%20a%20Plugin%20on%20iOS

所以我加入到config.xml中的插件節:

<plugin name="Echo" value="Echo" /> 

我打電話的javascript:

$(document).ready (function(){ 
    $('#testBtn').submit(function() { 
     alert("test"); 
     var param = ["a", false]; 
     cordova.exec(
      function(winParam) { alert("ok"); }, 
      function(err)  { alert("error"); }, 
      "Echo", "echo", param); 
     return false; 
    }); 
} 

(第一行中的警報通過推送我的testBtn被調用,所以其餘的也應該被執行......)

在我的插件目錄:

Echo.h:

#import <Cordova/CDV.h> 

@interface Echo : CDVPlugin 

    - (void)echo:(CDVInvokedUrlCommand*)command; 

@end 

Echo.m:

#import "Echo.h" 

@implementation Echo 


- (void)echo:(CDVInvokedUrlCommand*)command 
{ 
    NSLog(@"echo!"); 
} 

@end 

回聲功能的Echo.m不會被調用......能有人告訴我爲什麼?我沒有收到任何錯誤信息 - 只是沒有任何反應...

+0

嘗試在你的.m中導入#import jcesarmobile 2013-02-19 11:43:06

+0

我試過了,但它沒有改變任何東西。 – user1916076 2013-02-19 11:51:57

+0

你看過xcode控制檯窗口嗎?回聲消息應該在那裏。 ok或error的警報不會出現,因爲你沒有調用[self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId]; – jcesarmobile 2013-02-19 11:55:28

回答

0

我在這一步像你一樣掙扎。然後我在設備準備好之後調用這個javascript函數。問題解決了。現在,它的工作正常...

相關問題