1. AppID를 신청하세요
http://open.weixin.qq.com/
주의 사항: Eclipse 패키징 소프트웨어의 마지막 단계에서 MD5 값을 사용하는 것이 좋습니다. AppID 신청
2. 공식 홈페이지에서 libammsdk.jar 패키지를 다운로드
http://open.weixin.qq.com/download/?lang=zh_CN
3. libammsdk.jar을 프로젝트의 libs 디렉터리에 복사합니다
4. 공유해야 하는 활동에 코드를 작성합니다
private IWXAPI wxApi; //实例化 wxApi = WXAPIFactory.createWXAPI(this, Constants.WX_APP_ID); wxApi.registerApp(Constants.WX_APP_ID); /** * 微信分享 (这里仅提供一个分享网页的示例,其它请参看官网示例代码) * @param flag(0:分享到微信好友,1:分享到微信朋友圈) */ private void wechatShare(int flag){ WXWebpageObject webpage = new WXWebpageObject(); webpage.webpageUrl = "这里填写链接url"; WXMediaMessage msg = new WXMediaMessage(webpage); msg.title = "这里填写标题"; msg.description = "这里填写内容"; //这里替换一张自己工程里的图片资源 Bitmap thumb = BitmapFactory.decodeResource(getResources(), R.drawable.share_logo); msg.setThumbImage(thumb); SendMessageToWX.Req req = new SendMessageToWX.Req(); req.transaction = String.valueOf(System.currentTimeMillis()); req.message = msg; req.scene = flag==0?SendMessageToWX.Req.WXSceneSession:SendMessageToWX.Req.WXSceneTimeline; wxApi.sendReq(req); } //在需要分享的地方添加代码: wechatShare(0);//分享到微信好友 wechatShare(1);//分享到微信朋友圈
5. 패키지 이름에 해당하는 디렉토리 아래에 새 wxapi 디렉토리를 생성하고 wxapi 디렉토리에 WXEntryActivity 클래스를 추가합니다. 이 클래스는 Activity에서 상속되고 IWXAPIEventHandler 인터페이스
/** 微信客户端回调activity示例 */ public class WXEntryActivity extends Activity implements IWXAPIEventHandler { // IWXAPI 是第三方app和微信通信的openapi接口 private IWXAPI api; @Override protected void onCreate(Bundle savedInstanceState) { api = WXAPIFactory.createWXAPI(this, "这里替换第一步申请的APP_ID", false); api.handleIntent(getIntent(), this); super.onCreate(savedInstanceState); } @Override public void onReq(BaseReq arg0) { } @Override public void onResp(BaseResp resp) { LogManager.show(TAG, "resp.errCode:" + resp.errCode + ",resp.errStr:" + resp.errStr, 1); switch (resp.errCode) { case BaseResp.ErrCode.ERR_OK: //分享成功 break; case BaseResp.ErrCode.ERR_USER_CANCEL: //分享取消 break; case BaseResp.ErrCode.ERR_AUTH_DENIED: //分享拒绝 break; } } }
<activity android:name=".wxapi.WXEntryActivity" android:exported="true" android:screenOrientation="portrait" android:theme="@android:style/Theme.Translucent.NoTitleBar" />