/// <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)); } }
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); }
/// <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); }