Java源码示例:com.tencent.mm.opensdk.modelmsg.WXTextObject
示例1
/**
* 分享文本至朋友圈
*
* @param text 文本内容
* @param judge 类型选择 好友-WECHAT_FRIEND 朋友圈-WECHAT_MOMENT
*/
public static void WxTextShare(Context context, String text, int judge) {
if (!judgeCanGo(context)) {
return;
}
//初始化WXTextObject对象,填写对应分享的文本内容
WXTextObject textObject = new WXTextObject();
textObject.text = text;
//初始化WXMediaMessage消息对象,
WXMediaMessage message = new WXMediaMessage();
message.mediaObject = textObject;
message.description = text;
//构建一个Req请求对象
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = String.valueOf(System.currentTimeMillis()); //transaction用于标识请求
req.message = message;
req.scene = judge; //分享类型 好友==0 朋友圈==1
//发送请求
iwxapi.sendReq(req);
}
示例2
@Override
protected void shareText(final ShareParamText params) throws ShareException {
String text = params.getContent();
if (TextUtils.isEmpty(text)) {
throw new InvalidParamException("Content is empty or illegal");
}
WXTextObject textObj = new WXTextObject();
textObj.text = text;
WXMediaMessage msg = new WXMediaMessage();
msg.mediaObject = textObj;
msg.description = text;
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = buildTransaction("textshare");
req.message = msg;
req.scene = getShareType();
Log.d(TAG, "start share text");
shareOnMainThread(req);
}
示例3
private void shareText(int shareType, Message.Text message) {
String text = message.getContent();
//初始化一个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();
//transaction字段用于唯一标识一个请求
req.transaction = ShareUtil.buildTransaction("textshare");
req.message = msg;
//发送的目标场景, 可以选择发送到会话 WXSceneSession 或者朋友圈 WXSceneTimeline。 默认发送到会话。
req.scene = shareType;
mIWXAPI.sendReq(req);
}
示例4
@Override
public void shareText(int platform, String text, Activity activity, ShareListener listener) {
if (listener != null) {
listener.shareStart();
}
WXTextObject textObject = new WXTextObject();
textObject.text = text;
WXMediaMessage message = new WXMediaMessage();
message.mediaObject = textObject;
message.description = text;
sendMessage(platform, message, buildTransaction("text"));
}
示例5
public static void shareText(String text, SharePlace sharePlace) {
WXTextObject wxTextObject = new WXTextObject();
wxTextObject.text = text;
WXMediaMessage msg = new WXMediaMessage();
msg.mediaObject = wxTextObject;
msg.description = text;
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = WechatPayTools.getCurrTime();
req.message = msg;
switch (sharePlace) {
case Friend:
req.scene = SendMessageToWX.Req.WXSceneSession;
break;
case Zone:
req.scene = SendMessageToWX.Req.WXSceneTimeline;
break;
case Favorites:
req.scene = SendMessageToWX.Req.WXSceneFavorite;
break;
}
if (iwxapi != null) {
iwxapi.sendReq(req);
} else {
throw new NullPointerException("请先调用WechatShare.init()方法");
}
}
示例6
@Override
protected BaseReq buildTextWeChatMessageBody(WechatMessageBody wechatMessageBody) {
SendMessageToWX.Req req = new SendMessageToWX.Req();
WXTextObject textObj = new WXTextObject();
textObj.text = wechatMessageBody.getText();
WXMediaMessage msg = new WXMediaMessage();
msg.mediaObject = textObj;
msg.description = wechatMessageBody.getDescription();
req.transaction = Util.buildTransaction("text");
req.message = msg;
req.scene = getWecahtTargetScene(wechatMessageBody);
return req;
}
示例7
private boolean addText(SendMessageToWX.Req req, WXMediaMessage msg, Bundle params) {
WXTextObject textObj = new WXTextObject();
textObj.text = params.getString(WXShareEntity.KEY_WX_TEXT);
msg.mediaObject = textObj;
msg.description = textObj.text;
req.transaction = SocialUtil.buildTransaction("text");
return true;
}
示例8
private void shareText(int shareTarget, Activity activity, ShareObj obj) {
WXTextObject textObj = new WXTextObject();
textObj.text = obj.getSummary();
WXMediaMessage msg = new WXMediaMessage();
msg.mediaObject = textObj;
msg.title = obj.getTitle();
msg.description = obj.getSummary();
sendMsgToWx(msg, shareTarget, "text");
}
示例9
@Override
public void shareText(int platform, String text, Activity activity, ShareListener listener) {
WXTextObject textObject = new WXTextObject();
textObject.text = text;
WXMediaMessage message = new WXMediaMessage();
message.mediaObject = textObject;
message.description = text;
sendMessage(platform, message, buildTransaction("text"));
}