【问题标题】:Trouble Installing PhoneGap Plugin安装 PhoneGap 插件时遇到问题
【发布时间】:2012-02-07 19:52:56
【问题描述】:

我正在尝试安装位于此处的 PhoneGap 插件:https://github.com/phonegap/phonegap-plugins/tree/master/iPhone/MessageBox。但是,我无法让它工作。

以下是我尝试过的步骤:

  1. 确保您的 PhoneGap Xcode 项目已针对 iOS 4 进行了更新 SDK
  2. 将 MessageBox 文件夹从 Finder 拖放到您的插件中
    XCode 中的文件夹,使用“为任何添加的文件夹创建组”
  3. 将 .js 文件添加到磁盘上的 www 文件夹,并添加参考 将 .js 文件作为 html 文件中的标签
  4. 将带有键 MessageBox 和值 MessageBox 的新条目添加到插件中 PhoneGap.plist

在我的 HTML 页面上,我有:

<script type="text/javascript">
var messageBox = window.plugins.messageBox;
messageBox.alert('Title', 'Message', function(button) { console.warn('alert', [this, arguments]); });
</script>

(请注意,页面前面包含所需的 .js 文件)

但是,当我运行该项目时,很遗憾我没有看到任何消息框。只是我的 HTML 页面。
非常感谢您的帮助,谢谢!

编辑:我上面显示的 Javascript 代码可能有错误?

【问题讨论】:

    标签: javascript iphone objective-c plugins cordova


    【解决方案1】:

    您是否正在等待设备在 phonegap 中被调用?如果没有,那么你应该这样做,以便在调用消息框之前插件和所有必要的部分有时间初始化

    【讨论】:

    • 感谢您的回复。是的,我已经确认是在onDeviceReady() 之后拨打电话的
    • 嗯,您是否尝试过在插件的目标 c 代码中放置断点。这将告诉您是否从 javascript 调用它并帮助缩小选项范围。但是尝试提示并查看是否有效,因为警报调用了基于 javascript 的不同插件,它正在调用 navigator.notification 方法而不是 messagebox 方法,因为其中只有提示
    • 抱歉 -- 尝试提示是什么意思?我尝试在 MessageBox.m 中放置一个断点,但什么也没发生,所以我认为这意味着 Objective-C 甚至没有被调用?
    • 如果您查看 MessageBox.m 文件,则只有提示函数可调用,其他警报和其他部分正在从其他地方调用。尝试使用它在 javascript 中的提示函数,它应该告诉你它是否被调用
    • 我尝试在此处设置断点:// Create UIAlertView popup UIAlertView *prompt = [[UIAlertView alloc] initWithTitle:title message:message delegate:self cancelButtonTitle:cancelButtonTitle otherButtonTitles:okButtonTitle, nil]; 不幸的是,该断点未激活。这是否意味着我没有以某种方式正确链接 Objective-C 文件?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-08
    • 1970-01-01
    • 2014-10-04
    • 1970-01-01
    • 2011-11-17
    • 1970-01-01
    相关资源
    最近更新 更多