首页 > 代码库 > 微信分享封装类
微信分享封装类
import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.widget.Toast;import com.tencent.mm.sdk.openapi.IWXAPI;import com.tencent.mm.sdk.openapi.SendMessageToWX;import com.tencent.mm.sdk.openapi.WXAPIFactory;import com.tencent.mm.sdk.openapi.WXImageObject;import com.tencent.mm.sdk.openapi.WXMediaMessage;import com.tencent.mm.sdk.openapi.WXTextObject;import com.tencent.mm.sdk.openapi.WXVideoObject;import com.tencent.mm.sdk.openapi.WXWebpageObject;import com.tencent.mm.sdk.platformtools.Util;import com.xuehu365.xuehu.R;import com.xuehu365.xuehu.model.Constant;import com.xuehu365.xuehu.model.VideoEntity;import com.xuehu365.xuehu.utils.LogHelp;/** * Created by Administrator on 2016/9/6. */public class WXShareUtils { private static IWXAPI wxApi; private static void init(Context context) { //实例化 wxApi = WXAPIFactory.createWXAPI(context, Constant.wxAppId); wxApi.registerApp(Constant.wxAppId); //判断是否有安装微信 if (!wxApi.isWXAppInstalled()) { Toast.makeText(context, "您还未安装微信客户端", Toast.LENGTH_SHORT).show(); return; } } /* 分享文本 */ public static void shareText(Context context, String text, String type) { init(context); LogHelp.i("wx","here"); //初始化一个WXTextObject对象,填写分享的文本内容 WXTextObject textObj = new WXTextObject(); textObj.text = text; //用WXTextObject对象初始化一个WXMediaMessage对象 WXMediaMessage msg = new WXMediaMessage(); msg.mediaObject = textObj; msg.description = text; //构造一个Req SendMessageToWX.Req req = new SendMessageToWX.Req(); req.transaction = buildTransaction("text"); req.message = msg; if (Constant.wxTalk.equals(type)) { req.scene = SendMessageToWX.Req.WXSceneSession; } else if (Constant.wxFriend.equals(type)) { req.scene = SendMessageToWX.Req.WXSceneTimeline; } //调用api接口发送数据到微信 wxApi.sendReq(req); } public static String buildTransaction(final String type) { return (type == null) ? String.valueOf(System.currentTimeMillis()) : type + System.currentTimeMillis(); } /* 图片分享 */ public static void shareImage(Context context,String imgUrl, String type){ init(context); Bitmap bmp = BitmapFactory.decodeResource(context.getResources(), R.drawable.ic_logo); //初始化WXTextObject和WXMediaMessage对象 WXImageObject imageObj = new WXImageObject(bmp); WXMediaMessage msg = new WXMediaMessage(); msg.mediaObject = imageObj; //设置缩略图 Bitmap thumbBmp = Bitmap.createScaledBitmap(bmp,400,400,true); bmp.recycle(); msg.thumbData = Util.bmpToByteArray(thumbBmp,true); //构造一个Req SendMessageToWX.Req req= new SendMessageToWX.Req(); req.transaction = buildTransaction("img"); req.message = msg; if (Constant.wxTalk.equals(type)) { req.scene = SendMessageToWX.Req.WXSceneSession; } else if (Constant.wxFriend.equals(type)) { req.scene = SendMessageToWX.Req.WXSceneTimeline; } //调用api接口发送数据到微信 wxApi.sendReq(req); } /* 分享视频 */ public static void shareVideo(Context context, VideoEntity videoEntity, String type){ init(context); //初始化一个WXVideoObject对象,填写url WXVideoObject video = new WXVideoObject(); video.videoUrl= videoEntity.getVideoVid(); //用一个WXVideoObject对象初始化一个WXMediaMessage对象,填写标题、描述 WXMediaMessage msg = new WXMediaMessage(video); msg.title = videoEntity.getTitle(); msg.description = videoEntity.getTitle(); Bitmap thumb = BitmapFactory.decodeResource(context.getResources(),R.drawable.ic_logo); msg.thumbData = Util.bmpToByteArray(thumb,true); //构造一个Req SendMessageToWX.Req req = new SendMessageToWX.Req(); req.transaction = buildTransaction("video"); req.message = msg; if (Constant.wxTalk.equals(type)) { req.scene = SendMessageToWX.Req.WXSceneSession; } else if (Constant.wxFriend.equals(type)) { req.scene = SendMessageToWX.Req.WXSceneTimeline; } //调用api接口发送数据到微信 wxApi.sendReq(req); } /* 分享网页 */ public static void shareWeb(Context context,String webUrl,String type){ init(context); //初始化一个WXWebpageObject对象,填写URL WXWebpageObject webpage = new WXWebpageObject(); webpage.webpageUrl = webUrl; //用WXWebpageObject对象初始化一个WXMediaMessage对象,填写标题、描述 WXMediaMessage msg = new WXMediaMessage(webpage); msg.title = webUrl; msg.description = webUrl; Bitmap thumb = BitmapFactory.decodeResource(context.getResources(),R.drawable.ic_logo); msg.thumbData = Util.bmpToByteArray(thumb,true); //构造一个Req SendMessageToWX.Req req = new SendMessageToWX.Req(); req.transaction = buildTransaction("webpage"); req.message = msg; if (Constant.wxTalk.equals(type)) { req.scene = SendMessageToWX.Req.WXSceneSession; } else if (Constant.wxFriend.equals(type)) { req.scene = SendMessageToWX.Req.WXSceneTimeline; } //调用api接口发送数据到微信 wxApi.sendReq(req); }}
微信分享封装类
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。