Android代码:
//微信分享
//type:1文本 2图片 3网页
//scene:1 分享好友 2分享朋友圈 3分享收藏
public void WeChatShare(String json,byte[] bytes) {
Log.v("微信分享::", json);
try {
JSONObject obj = new JSONObject(json);
int type = obj.getInt("type");
int scene = obj.getInt("scene");
//标题 描述 图片
WXMediaMessage wxMessage = new WXMediaMessage();
//发送微信分享
SendMessageToWX.Req req = new SendMessageToWX.Req();
if (type == 1) {
//文本分享 参数:descr 描述 text 分享文本
wxMessage.description = obj.getString("descr");
WXTextObject textObj = new WXTextObject();
textObj.text = obj.getString("text");
wxMessage.mediaObject = textObj;
req.transaction = "text";
} else if (type == 2) {
//图片分享 参数:image 分享图片
WXImageObject imageObj = new WXImageObject();
imageObj.imageData = bytes;
wxMessage.mediaObject = imageObj;
req.transaction = "image";
} else if (type == 3) {
//网页分享 参数:url 分享链接
if (scene == 1) {
//朋友圈分享链接有标题 和描述
wxMessage.title = obj.getString("title");
wxMessage.description = obj.getString("descr");
} else if (scene == 2)
wxMessage.title = obj.getString("title"); //朋友圈分享链接有标题
//朋友圈分享链接有缩略图 限制内容大小不超过 32KB
wxMessage.thumbData = bytes; //缩略图
WXWebpageObject webObj = new WXWebpageObject();
webObj.webpageUrl = obj.getString("url");
wxMessage.mediaObject = webObj;
req.transaction = "url";
}
req.message = wxMessage;
if (scene == 1)
req.scene = SendMessageToWX.Req.WXSceneSession; //分享好友
else if (scene == 2)
req.scene = SendMessageToWX.Req.WXSceneTimeline; //分享朋友圈
else if (scene == 3)
req.scene = SendMessageToWX.Req.WXSceneFavorite; //收藏
wxapi.sendReq(req);
} catch (JSONException e) {
e.printStackTrace();
}
}
C#调用传参
//微信分享
public void WeChatShare(string json, byte[] img)
{
AndroidJavaClass actClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject jo = actClass.GetStatic<AndroidJavaObject>("currentActivity");
jo.Call("WeChatShare", json, img);
}
从Lua传递byte数组到C#
//初始化sdk
public void WeChatShare(string json, LuaByteBuffer img)
{
byte[] buf = img.buffer;
sdk.WeChatShare(json, buf);
}
本文记录了在Unity中实现Android平台的微信分享功能,包括C#代码调用和从Lua传递byte数组到C#的过程。

453

被折叠的 条评论
为什么被折叠?



