package cn.mutils.app.mm.wxapi; import android.content.Intent; import android.os.Bundle; import com.tencent.mm.sdk.constants.ConstantsAPI; import com.tencent.mm.sdk.modelbase.BaseReq; import com.tencent.mm.sdk.modelbase.BaseResp; import com.tencent.mm.sdk.openapi.IWXAPI; import com.tencent.mm.sdk.openapi.IWXAPIEventHandler; import com.tencent.mm.sdk.openapi.WXAPIFactory; import cn.mutils.app.App; import cn.mutils.app.pay.WXPayBroadcast; import cn.mutils.app.ui.AppActivity; /** * WeChat entry activity<br> * Please make a subclass in your application like "xxx.xxx.xxx.wxapi.WXPayEntryActivity" */ public class WXPayEntryActivity extends AppActivity implements IWXAPIEventHandler { protected IWXAPI mApi; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mApi = WXAPIFactory.createWXAPI(this, App.getWechatAppId()); mApi.handleIntent(getIntent(), this); } @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); setIntent(intent); mApi.handleIntent(intent, this); } @Override public void onReq(BaseReq req) { } @Override public void onResp(BaseResp resp) { if (resp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) { // BaseResp#errCode 0:成功 -1:失败 -2:取消 WXPayBroadcast.WXPayExtra extra = new WXPayBroadcast.WXPayExtra(); extra.errCode = resp.errCode; extra.errStr = resp.errStr; WXPayBroadcast broadcast = new WXPayBroadcast(this); broadcast.send(extra); } finish(); } }