PhoneGap中文网

 找回密码
 立即注册
查看: 20884|回复: 4
打印 上一主题 下一主题

PhoneGap的使用

[复制链接]

2

主题

5

帖子

34

积分

新手上路

Rank: 1

积分
34
跳转到指定楼层
楼主
发表于 2014-1-27 19:07:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在学习phonegap开发的时候遇到了一个问题,在学习到通讯录部分时,发现API无法正常使用。我所用的代码是官方给出的例子

<!DOCTYPE html>
<html>
<head>
<title>Contact Example</title>
<script src="phonegap.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript" charset="utf-8">       

    // 等待加载PhoneGap       
    document.addEventListener("deviceready", onDeviceReady, false);       
    // PhoneGap加载完毕        function onDeviceReady()
    {        
        var myContact = navigator.service.contacts.create({"displayName": "Test User"});        
        myContact.gender = "male";        
        console.log("The contact, " + myContact.displayName + ", is of the " + myContact.gender + " gender");       
    }
</script>
</head>
<body>
<h1>Example</h1>
<p>Create Contact</p>
</body>
</html>

最初我使用的环境是ANDROID 4.4+PhoneGap 2.9.0 在LOGCAT中并没有出现响应的信息,后来将console.log("The contact, " + myContact.displayName + ", is of the " + myContact.gender + " gender");  这一句换成了alert("xxx");也并没有弹框,于是再看LOGCAT中的信息发现了一句:Unable to open asset URL: file:///android_asset/www/cordova_plugins.js后来考虑到可能是2.9.0版本不兼容4.4,于是又换了2.2版本的SDK,依然无法正常,运行之后在LOGCAT中没有出现红色的信息,但是依然无法使用通讯录,于是我又尝试了PHONEGAP中国上的另一个例子
<!DOCTYPE html>
<html>
<head>
<title>Contact Example</title>

<script src="phonegap.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript" charset="utf-8">

// 等待加载PhoneGap
document.addEventListener("deviceready", onDeviceReady, false);

// PhoneGap加载完毕
function onDeviceReady() {

  // 从全部联系人中进行搜索
  var options = new ContactFindOptions();
  options.filter="";
  var filter = ["displayName","addresses"];
  navigator.service.contacts.find(filter, onSuccess, onError, options);
}

// onSuccess: 返回当前联系人结果集的快照
function onSuccess(contacts) {
  // 显示所有联系人的地址信息
  for (var i=0; i<contacts.length; i++) {
   for (var j=0; j<contacts.addresses.length; j++) {
    alert("Pref: " + contacts.addresses[j].pref + "\n" +
     "Type: " + contacts.addresses[j].type + "\n" +
     "Formatted: " + contacts.addresses[j].formatted + "\n" +
     "Street Address: "  + contacts.addresses[j].streetAddress + "\n" +
     "Locality: "  + contacts.addresses[j].locality + "\n" +
     "Region: "  + contacts.addresses[j].region + "\n" +
     "Postal Code: "  + contacts.addresses[j].postalCode + "\n" +
     "Country: "  + contacts.addresses[j].country);
   }
  }
}

// onError: 获取联系人结果集失败
function onError() {
  alert('onError!');
}

</script>
</head>
<body>
<h1>Example</h1>
<p>Find Contact</p>
</body>
</html>

之后依然没有什么效果,求管理大哥帮我一下
回复

使用道具 举报

2

主题

5

帖子

34

积分

新手上路

Rank: 1

积分
34
沙发
 楼主| 发表于 2014-1-27 19:29:35 | 只看该作者
补充一下其实在运行的时候还有一处报错信息是TypeError: Result of expression 'navigator.service' [undefined] is not an object. at file:///android_asset/www/Index.html:17,不知道和我的问题有没有关系,因为之前使用PHONEGAP事件都正常因此感觉应该不是配置的错误
回复 支持 反对

使用道具 举报

2

主题

11

帖子

84

积分

注册会员

Rank: 2

积分
84
板凳
发表于 2014-1-28 10:42:48 | 只看该作者
新版本的cordova用的是navigator.contacts.create()创建联系人,不是navigator.service.contacts.create
回复 支持 反对

使用道具 举报

493

主题

2035

帖子

6894

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
6894
地板
发表于 2014-1-28 10:43:41 | 只看该作者
通通讯录.zip (2.64 KB, 下载次数: 23)

别人写的代码 你看看 希望对你有帮助

回复 支持 反对

使用道具 举报

2

主题

5

帖子

34

积分

新手上路

Rank: 1

积分
34
5#
 楼主| 发表于 2014-1-28 11:10:08 | 只看该作者
admin 发表于 2014-1-28 10:43
别人写的代码 你看看 希望对你有帮助

运行以后又出错了提示unfortunatly,test4 has stopped
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

ionic4视频教程

Archiver|手机版|小黑屋| PhoneGap中文网 ( 京ICP备13027796号-1 )  

GMT+8, 2024-11-23 07:57 , Processed in 0.079429 second(s), 31 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表