Cordova PhoneGap-navigator.contacts未定义

Cordova PhoneGap-navigator.contacts未定义,cordova,phonegap-plugins,Cordova,Phonegap Plugins,我无法访问navigator.contacts。我使用的是phonegap 3.5和org.apache.cordova.contacts 0.2.12 我正在用phonegap服务和android 4.4.2进行测试 这是我在配置文件中的内容: <gap:plugin name="org.apache.cordova.contacts" /> <feature name="Contacts"> <param name="ios-package" value

我无法访问navigator.contacts。我使用的是phonegap 3.5和org.apache.cordova.contacts 0.2.12

我正在用phonegap服务和android 4.4.2进行测试

这是我在配置文件中的内容:

<gap:plugin name="org.apache.cordova.contacts" />

<feature name="Contacts">
   <param name="ios-package" value="CDVContacts" />
   <param name="android-package" value="org.apache.cordova.contacts.ContactManager"/>
</feature>
希望你能帮我解决这个问题


谢谢

我也遇到了类似的问题

我的解决方案是放置代码块,该代码块尝试访问Cordova对象(无论是.contacts还是ContactFindOptions)——只有在保证已加载页面之后


正如几个示例中所示,onDeviceReady通常是一个不错的选择。

我们需要查看您的JS实现以帮助您。您是否可以通过navigator对象访问其他插件?@WillHaley我可以通过navigator访问地理位置。@DawsonLoudon我使用该实现编辑文章。谢谢你在初始构建后安装了这个插件吗?这可能看起来有点奇怪,但有时我必须清除平台文件夹,安装插件,然后重建平台,然后才能让插件正常工作。我唯一能想到的是phonegap应用程序可能不支持联系人访问,但我从未在开发者应用程序中尝试过该插件。
   // find all contacts with 'Bob' in any name field
    var options = new ContactFindOptions();
    options.filter = "Bob";
    options.multiple = true;
    options.desiredFields = [navigator.contacts.fieldType.id];
    var fields = [navigator.contacts.fieldType.displayName, navigator.contacts.fieldType.name];
    navigator.contacts.find(fields, onSuccessA, onErrorA, options);