集成分享到微信

集成微信,实现分享


前言:集成微信相对微博什么的要简单,审核也很快(3个小时就通过了,运气真好)

1,去微信开放平台,注册自己的应用,获取APP_ID

2,下载集成开发包

3,手机需要安装微信客户端

微信即使不通过审核,也是可以测试的,分享后会显示来自没有审核的应用

libammsdk.jar放到libs文件夹下

demo里面有个util.java的工具类,直接拿到自己项目里面用


下面是代码:

public class MainActivity extends Activity implements IWXAPIEventHandler {
	private Button share_btn;

	public static final String APP_ID = "APP_ID去开放平台copy过来";//这里是注册APP_ID
	private static final String text = "需要分享的文字";
	private IWXAPI api;
	private static final int THUMB_SIZE_W = 150;//分享图片的参数
	private static final int THUMB_SIZE_H = 120;

	private void regToWx() {
		// TODO Auto-generated method stub
		api = WXAPIFactory.createWXAPI(this, APP_ID, true);// 获取IwXApi实例
		api.registerApp(APP_ID);// 注册到微信
	}

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		regToWx();
		share_btn = (Button) findViewById(R.id.share_btn);
		share_btn.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				if (!api.isWXAppInstalled()) {
					Toast.makeText(MainActivity.this, "您没有安装微信",
							Toast.LENGTH_SHORT).show();
					// finish();
				}
				//分享连接(图片和文字)
				WXWebpageObject webpage = new WXWebpageObject();
                        	webpage.webpageUrl = "(分享的网址)";
				//分享图片
				Bitmap img = BitmapFactory.decodeResource(getResources(), R.drawable.loding);
				WXImageObject imgObj = new WXImageObject(img);
				//分享文字
				WXTextObject wxTextobj = new WXTextObject();
				wxTextobj.text = text;
				WXMediaMessage msg = new WXMediaMessage();
				msg.title = text;
				msg.mediaObject=webpage;//分享网页
//				msg.mediaObject = imgObj;//设置分享图片
//				msg.mediaObject = wxTextobj;//分享文字
				msg.description = "添加描述文字";
				Bitmap thumbBmp = Bitmap.createScaledBitmap(img, THUMB_SIZE_W,
						THUMB_SIZE_H, true);
				img.recycle();
				msg.thumbData = Util.bmpToByteArray(thumbBmp, true);

				// 构造一个Req
				SendMessageToWX.Req req = new SendMessageToWX.Req();
				req.transaction=String.valueOf(System.currentTimeMillis());
				req.message = msg;
				// req.scene = SendMessageToWX.Req.WXSceneTimeline;//发送至朋友圈
				req.scene = SendMessageToWX.Req.WXSceneSession;// 默认(发送到消息会话)
				// api.getWXAppSupportAPI();
				// 调用api接口发送到微信
				api.sendReq(req);
			}
		});
		// api.handleIntent(this.getIntent(), MainActivity.this);
	}

	@Override
	public void onReq(BaseReq req) {
		// TODO Auto-generated method stub
		System.out.println("req=" + req.getType());
	}

	@Override
	public void onResp(BaseResp resp) {
		// TODO Auto-generated method stub
		System.out.println("resp=" + resp.errCode);
		int result = 0;
		switch (resp.errCode) {
		case BaseResp.ErrCode.ERR_OK:
			result = R.string.errcode_success;
			break;
		case BaseResp.ErrCode.ERR_USER_CANCEL:
			result = R.string.errcode_cancel;
			break;
		case BaseResp.ErrCode.ERR_AUTH_DENIED:
			result = R.string.errcode_deny;
			break;
		default:
			result = R.string.errcode_unknown;
			break;
		}
		Toast.makeText(this, result, Toast.LENGTH_LONG).show();
	}

}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值