/// <summary> /// 分享一段音乐 /// </summary> /// <param name="musicUrl">音乐链接</param> /// <param name="isWXSceneTimeline">true:分享到朋友圈;false:分享给好友</param> /// <param name="showImgResId">链接显示的图标</param> /// <param name="title">别人看到的标题</param> /// <param name="description">别人看到的描述</param> /// <returns>无</returns> public void ShareMusic(string musicUrl, bool isWXSceneTimeline, int showImgResId, string title, string description) { WXMusicObject musciObj = new WXMusicObject(); musciObj.MusicUrl = musicUrl; WXMediaMessage msg = new WXMediaMessage(); msg.MyMediaObject = musciObj; msg.Title = title; msg.Description = description; Bitmap thumbBmp = BitmapFactory.DecodeResource(mContext.Resources, showImgResId); using (MemoryStream stream = new MemoryStream()) { thumbBmp.Compress(Bitmap.CompressFormat.Png, 100, stream); msg.ThumbData = stream.ToArray(); //设置缩略图 } SendMessageToWX.Req req = new SendMessageToWX.Req() { Transaction = buildTransaction("music"), Message = msg, Scene = isWXSceneTimeline ? WECHAT_SHARE_TYPE_FRENDS : WECHAT_SHARE_TYPE_TALK, }; mWXApi.SendReq(req); }
//分享音乐类型 private void BtnMusic_Click(object sender, EventArgs e) { //初始化一个WXMusicObject对象,填写音乐地址 WXMusicObject musicObj = new WXMusicObject(); //音乐url musicObj.MusicUrl = "http://www.qq.com"; //设置WXMediaMessage对象 WXMediaMessage msg = new WXMediaMessage(); msg.MyMediaObject = musicObj; msg.Title = "音乐标题"; msg.Description = "音乐描述"; //设置缩略图 Bitmap thumb = BitmapFactory.DecodeResource(Resources, Resource.Drawable.Icon); MemoryStream ms = new MemoryStream(); thumb.Compress(Bitmap.CompressFormat.Png, 0, ms); byte[] bytes = ms.ToArray(); msg.ThumbData = bytes; //构造一个Req SendMessageToWX.Req req = new SendMessageToWX.Req(); req.Transaction = Guid.NewGuid().ToString(); req.Message = msg; req.Scene = SendMessageToWX.Req.WXSceneTimeline; //发送数据 api.SendReq(req); }
//分享音乐 partial void UIButton10_TouchUpInside(UIButton sender) { try { //初始化一个WXMusicObject对象,设置分享音乐的属性 WXMusicObject musicObj = new WXMusicObject(); musicObj.MusicUrl = "http://www.qq.com"; //设置WXMediaMessage对象 WXMediaMessage msg = new WXMediaMessage(); msg.Title = "音乐标题"; msg.Description = "音乐描述"; msg.SetThumbImage(UIImage.FromFile("icon.png")); msg.MediaObject = musicObj; //构造SendMessageToWXReq请求 SendMessageToWXReq req = new SendMessageToWXReq(); req.BText = false; req.Message = msg; req.Scene = (int)WXScene.Timeline; //发送数据 var result = WXApi.SendReq(req); UIAlertView alertView = new UIAlertView("", "分享结果:" + result, null, "取消"); alertView.Show(); } catch (Exception ex) { UIAlertView alertView = new UIAlertView("", "异常:" + ex, null, "取消"); alertView.Show(); } }
/// <summary> /// 分享音乐 /// </summary> /// <param name="url">音乐链接地址</param> /// <param name="title">标题</param> /// <param name="description">描述</param> /// <param name="thumbnail">缩略图</param> /// <param name="thumbnailNeedRecycle">缩略图是否需要回收</param> /// <param name="scene">分享场景</param> /// <returns>是否发送成功,不等于分享成功</returns> public bool ShareMusic(string url, string title, string description = null, Bitmap thumbnail = null, bool thumbnailNeedRecycle = true, shareScene scene = shareScene.WXSceneSession) { if (IsApi) { WXMusicObject music = new WXMusicObject(); music.MusicUrl = url; return(share("music", music, title, description, thumbnail, thumbnailNeedRecycle, scene)); } return(false); }