Exemple #1
0
        /// <summary>
        /// 截图分享
        /// </summary>
        /// <param name="plat">分享平台</param>
        /// <param name="gameKey">gameKey</param>
        public static IEnumerator ShareSceenImage(SharePlat plat, YieldInstruction waitInstruction = null, string gameKey = "")
        {
            var path = App.UI.CaptureScreenshot();

            yield return(waitInstruction);

            var startTime = DateTime.Now;

            while (!File.Exists(path))
            {
                yield return(null);

                if ((DateTime.Now - startTime).Seconds > 5)
                {
                    yield break;
                }
            }
            if (string.IsNullOrEmpty(gameKey))
            {
                gameKey = App.GameKey;
            }
            if (CheckWeChat())
            {
                UserController.Instance.GetShareInfo((info) =>
                {
                    Facade.Instance <WeChatApi>().ShareContent(info);
                }, ShareType.Image, plat, path, gameKey);
            }
        }
 private void ShootScreen(SharePlat sharePlat)
 {
     if (gameObject.activeInHierarchy)
     {
         StartCoroutine(YxTools.ShareSceenImage(sharePlat, waitForScreen));
     }
 }
Exemple #3
0
        private Dictionary <string, object> GetDicData(SharePlat plat)
        {
            var dic = new Dictionary <string, object>();

            dic.Add(YxTools.KeySharePlat, plat);
            if (ShareWithTeaInfo)
            {
                dic.Add(YxTools.KeyTeaId, TeaUtil.CurTeaId);
            }
            return(dic);
        }
Exemple #4
0
        /// <summary>
        /// 初始化
        /// </summary>
        /// <param name="sp"></param>
        public void Init(SharePlat sp)
        {
            Id = (int)sp;
            var parm = new Dictionary <string, object>
            {
                { "option", 1 },
                { "bundle_id", Application.bundleIdentifier },
                { "share_plat", ((int)sp).ToString(CultureInfo.InvariantCulture) },
            };

            Facade.Instance <TwManager>().SendAction("shareAwards", parm, str =>
            {
                YxDebug.Log("分享查询回数据:" + str.ToString());
                var data = (Dictionary <string, object>)str;
                SetDate(data["infoClient"].ToString(), data["awardCount"].ToString(), (bool)data["todayShare"],
                        int.Parse(data["awardTime"].ToString()), (bool)data["enableAward"]);
            });
        }
 /// <summary>
 /// 分享图片到对应平台
 /// </summary>
 /// <param name="plat"></param>
 private void ShareImage(SharePlat plat)
 {
     Btns.SetActive(false);
     foreach (var ewgob in ErweiGobs)
     {
         ewgob.SetActive(true);
     }
     CardsInfoZone.transform.localPosition = new Vector3(0, -200, 0);
     Img.DoScreenShot(new Rect(0, 0, Screen.width, Screen.height), imageUrl =>
     {
         if (Application.platform == RuntimePlatform.Android)
         {
             imageUrl = "file://" + imageUrl;
         }
         if (_shareImageLater != null)
         {
             StopCoroutine(_shareImageLater);
         }
         _shareImageLater = StartCoroutine(ShowShareBtnsLater());
         OnWeiChatShareGameResult(new EventData(imageUrl, plat));
     });
 }
        /// <summary>
        /// 点击分享按钮(分享截图)
        /// </summary>
        public void OnClickShareBtn(string sharePlat)
        {
            SharePlat plat = (SharePlat)Enum.Parse(typeof(SharePlat), sharePlat);

            Facade.EventCenter.DispatchEvent(LoaclRequest.ShareImage, plat);
        }