2021-07-06

uniapp获取通信录

  getContacts() {

        var that = this

        // 获取通讯录对象

        plus.contacts.getAddressBook(plus.contacts.ADDRESSBOOK_PHONE, function(addressbook) {

          uni.showToast({

            title: '获取通讯录对象成功',

            duration: 2000

          })

          console.log('获取通讯录对象成功')

          console.log(addressbook)

          // 查找联系人

          addressbook.find(["displayName", "phoneNumbers"], function(contacts) {

            uni.showToast({

              title: '获取联系人成功',

              duration: 2000

            })

            console.log('获取联系人成功')

            console.log(contacts)

            that.userlist = contacts

          }, function() {

            uni.showToast({

              title: '获取联系人失败',

              duration: 2000

            })

          }, {

            multiple: true

          });

        }, function(e) {

          uni.showToast({

            title: '获取通讯录对象失败:' + e.message,

            duration: 2000

          })

        });

      },

uniapp推送消息

  this.socketTask.onMessage((res) => {

            console.log(JSON.parse(res.data).payload.datetime, '收到的消息');

            var options = {

              cover: false

            };

            var str = JSON.parse(res.data).payload.datetime + '分';

            var door = ''

            var backdoor = ''

            var windows = ''

            if (JSON.parse(res.data).payload.door == 1) {

              door = '车门开启,'

            }

            if (JSON.parse(res.data).payload.backdoor == 1) {

              backdoor = '尾门开启,'

            }

            if (JSON.parse(res.data).payload.window > 0) {

              windows = '车窗开启' + JSON.parse(res.data).payload.window * 100 + '%'

            }

            str = str + door + backdoor + windows

            plus.push.createMessage(str, "LocalMSG", options);

          });

uniapp--websocket

      connectSocketInit() {

        // let uuid = '0d44cee07423'

        let uuid = this.$store.state.user_info.uuid

        // 创建一个this.socketTask对象【发送、接收、关闭socket都由这个对象操作】

        this.socketTask = uni.connectSocket({

          // 【非常重要】必须确保你的服务器是成功的,如果是手机测试千万别使用ws://127.0.0.1:9099【特别容易犯的错误】

          url: "ws://znbz.meilibaobiao.com:8080/vw/ws/user/error_" + uuid,

          success(data) {

            console.log("websocket连接成功");

          },

        });

        // 消息的发送和接收必须在正常连接打开中,才能发送或接收【否则会失败】

        this.socketTask.onOpen((res) => {

          console.log("WebSocket连接正常打开中...!");

          this.is_open_socket = true;

          // 注:只有连接正常打开中 ,才能正常成功发送消息

          // this.socketTask.send({

          //   data: "uni-app发送一条消息",

          //   async success () {

          //     console.log("消息发送成功");

          //   },

          // });

          // 注:只有连接正常打开中 ,才能正常收到消息

          this.socketTask.onMessage((res) => {

            console.log(JSON.parse(res.data).payload.datetime, '收到的消息');

            var options = {

              cover: false

            };

            var str = JSON.parse(res.data).payload.datetime + '分';

            var door = ''

            var backdoor = ''

            var windows = ''

            if (JSON.parse(res.data).payload.door == 1) {

              door = '车门开启,'

            }

            if (JSON.parse(res.data).payload.backdoor == 1) {

              backdoor = '尾门开启,'

            }

            if (JSON.parse(res.data).payload.window > 0) {

              windows = '车窗开启' + JSON.parse(res.data).payload.window * 100 + '%'

            }

            str = str + door + backdoor + windows

            plus.push.createMessage(str, "LocalMSG", options);

          });

        })

        // 这里仅是事件监听【如果socket关闭了会执行】

        this.socketTask.onClose(() => {

          console.log("已经被关闭了")

        })

      },

      // 关闭websocket【离开这个页面的时候执行关闭】

      closeSocket() {

        this.socketTask.close({

          success(res) {

            this.is_open_socket = false;

            console.log("关闭成功", res)

          },

          fail(err) {

            console.log("关闭失败", err)

          }

        })

      },

      clickRequest() {

        if (this.is_open_socket) {

          // websocket的服务器的原理是:发送一次消息,同时返回一组数据【否则服务器会进去死循环崩溃】

          this.socketTask.send({

            data: "请求一次发送一次message",

            async success() {

              console.log("消息发送成功");

            },

          });

        }

      },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值