关于分享功能,微信官方的api也写的很清楚了,不过·注意不要和onShareAppMessage混在一起,那玩意是监听右上角的不是自己设置地方的

wx.shareAppMessage({title: "你是一个,一个一个一个",imageUrl: ""//可以是网络图片Url也可以本地路径})

但是这样也只是单纯的分享罢了,如果你想要在分享的同时获得奖励,在你需要调用的地方的onload方法,你得写上onShow方法
(注:微信现在已经取消分享回调,也就是说用户无论是分享成功还是失败都是没有办法直接判断的,onshow方法也会直接执行)

wx.onShow(function () {}}

那么问题来了,有时候你需要很多个分享,并且每种分享的奖励都是不一样的。既然分享也不能获得回调,那么要怎么判断是否分享成功了呢
我们首先来说一下很多个分享怎么办,实际上只要写一个标识符就可以了

然后给他赋值就行,比如this.shareTag = “keys” 一类的
onshow里面就可以这样判断了

let self = this;wx.onShow(function () {if (self.isShared && self.shareTag == "keys") {//分享成功console.log("分享成功");self.isShared = false;self.shareTag = "";//这里可以放上奖励方法啥的})}

所以说说了半天。还没说要怎么判断是否成功吗,连成功失败都判断不了写个茄子
这里我的方法是比较简单的方法,是使用时间来进行判断,当分享时间在3秒以上就执行判断成功,虽然有些不妥当但是是对于新手来说最为简单的方法

接下来是获取系统时间,可以参考这篇有关获取本地时间

this.isShared = true;
this.shareTag = "keys";
this.closeTime = new Date().getTime();
if (CC_WECHATGAME) {    //判断是否为微信平台,这样写可以让你在原生平台上不报错卡住wx.shareAppMessage({title: "乖乖站好♂",imageUrl: ""})
}

然后在onload就可以这样判断时间了

if (typeof (wx) !== "undefined") {let self = this;wx.onShow(function () {if (self.isShared && self.shareTag == "keys") {//分享后返回let curTime = new Date().getTime();if (curTime - self.closeTime >= 3000) {//分享成功console.log("分享成功");self.isShared = false;self.shareTag = "";self.closeTime = curTime;}})}
}

右上角监听同理,不过要使用的api就是文章开头说的onShareAppMessage(),在使用之前请记得开启右上角的转发按钮,因为默认是关闭的嘛

if (typeof (wx) !== "undefined") {wx.onShareAppMessage({title: "WSND&NMSL",imageUrl: "NMSL is not a function"});}

开启代码如下

wx.showShareMenu({
});

Cocos Creator微信小游戏分享功能以及分享回调奖励相关推荐

  1. cocos creator 微信小游戏接口

    cocos creator 微信小游戏接口 /** @Description:微信小游戏* @version: * @Author: lvpeijun* @Date: 2019-12-02 10:43 ...

  2. 解决cocos creator微信小游戏本地缓存文件超过限制问题

    cocos creator微信小游戏开发,如果游戏包内资源超过包体大小限制,那么可以通过远程加载的方式加载资源(代码脚本文件除外). 小游戏在迭代过程中因为缓存资源的积累,在加载资源的时候会出现超过缓 ...

  3. 微信小游戏 资源服务器,Cocos Creator 微信小游戏 远程资源设置

    版本:2.3.4 参考: cocos教程:发布到微信小游戏 因为微信小游戏有包体大小限制. 主包4M 分包最大4M 一共最多16M 那么假如我们的游戏有个20M,50M,那就放不下了.只能放到远程服务 ...

  4. Cocos Creator 微信小游戏 填坑记录

    环境:(ccc-v1.9.1, wx-v1.02.1804251) 微信小游戏禁止了动态生成并执行代码的功能,window.eval(). new Function() ,这些都不能用了. 微信小游戏 ...

  5. Cocos Creator 微信小游戏 分包设置

    版本:2.3.4 参考: cocos教程:分包加载 在微信小游戏中使用分包.因为微信小游戏有包体限制. 主包最大只能4m,分包最大4m,一共最多16m.所以主包只放代码,而图片.json等资源都设置为 ...

  6. Cocos Creator 微信小游戏苹果手机锁屏卡死的坑

    在制作小游戏项目时遇到了 苹果系列手机 只要游戏过程中进行锁屏后解锁时,整个手机或微信会卡个几秒甚至会黑屏! 所以就这个问题进行了各种 onshow/onhide 的操作试验. 第一种:在onshow ...

  7. cocos creator微信小游戏,使用微信云开发实现“世界排行榜”

    微信提供的子域只能实现好友排行,我们一般希望实现所有玩家的世界排行榜. 那么问题来了,我们怎么获取所有玩家的openid?其实很简单,就是玩家打开游戏或排行榜时,请求玩家授权,这样就拿到openid了 ...

  8. Cocos Creator 微信小游戏无法正确显示头像 解决方案

    常见的获取微信头像方法 UserInfo:  用户授权成功后 返回的微信用户信息 UserInfo 结构体信息详情: 进入 微信如何登陆授权: 进入 let url = userInfo.avatar ...

  9. Cocos Creator微信小游戏添加banner广告

    学了小游戏开发也有几个月了,这边写一下这几个月以来遇到的坑. 首先是添加banner广告 看过很多个写微信广告的写法.感觉其实是在误导萌新,这是一般别人的例子 let winSize = wx.get ...

最新文章

  1. mybatis配置文件解析
  2. centos7httpd服务的搭建
  3. SpringBoot + RabbitMQ (保证消息100%投递成功并被消费)
  4. 重要性采样原理及实现
  5. 汇编语言hello word!
  6. 【数据库系统】文件处理系统和DBMS的主要区别
  7. git 常用指令 -
  8. 探索 OpenStack 之(7):Neutron 深入探索之 Open vSwitch (OVS) + GRE 之 Neutron节点篇
  9. Java学习笔记——dubbo服务之底层通讯协议Protocol
  10. C# TextBox光标位置设置 滚动到最后一行 显示最后一行 自动跳转最后一行
  11. C#Excel上传批量导入sqlserver
  12. TrueCrypt 密码找回工具
  13. C#编程之SqlHelper
  14. idea破解码生成地址
  15. 如何使用移动硬盘安装系统?
  16. 中国天气预报API城市编号
  17. 上海是怎么错失这些年的互联网机遇的?——写的很好,转
  18. rstp要点2:桥优先级为什么是4096的倍数?
  19. daemon函数理解及参数使用——daemon后进程退出的原因
  20. SQLServer uniqueidentifier 类型

热门文章

  1. 众昂矿业刘金海认为萤石是未来潜力材料
  2. app开发需要多少钱?app开发价格受什么影响?
  3. HTTP 压缩与解压缩
  4. 请注意,新型的安卓木马,恢复出厂设置也没用!
  5. 使用阿里云短信推送服务发送验证码
  6. 2021年6月17日大学英语四一课一练阅读理解2-1
  7. 【小项目】用Huffman树实现文件压缩并解压
  8. 怎么把PDF中的图片导出来并保存?
  9. Conrad New York Midtown酒店在曼哈顿中心盛大起航
  10. 开源C# WPF控件库强力推荐