基本信息
源码名称:微信API sdk下载 android版本
源码大小:0.26M
文件格式:.zip
开发语言:Java
更新时间:2014-02-09
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 12 元×
微信扫码支付:12 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
package net.sourceforge.simcpux.wxapi; import com.tencent.mm.sdk.openapi.BaseReq; import com.tencent.mm.sdk.openapi.BaseResp; import com.tencent.mm.sdk.openapi.ConstantsAPI; import com.tencent.mm.sdk.openapi.ShowMessageFromWX; import com.tencent.mm.sdk.openapi.IWXAPI; import com.tencent.mm.sdk.openapi.IWXAPIEventHandler; import com.tencent.mm.sdk.openapi.WXAPIFactory; import com.tencent.mm.sdk.openapi.WXAppExtendObject; import com.tencent.mm.sdk.openapi.WXMediaMessage; import net.sourceforge.simcpux.Constants; import net.sourceforge.simcpux.GetFromWXActivity; import net.sourceforge.simcpux.SendToWXActivity; import net.sourceforge.simcpux.ShowFromWXActivity; import net.sourceforge.simcpux.R; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class WXEntryActivity extends Activity implements IWXAPIEventHandler{ private static final int TIMELINE_SUPPORTED_VERSION = 0x21020001; private Button gotoBtn, regBtn, launchBtn, checkBtn; // IWXAPI 是第三方app和微信通信的openapi接口 private IWXAPI api; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.entry); // 通过WXAPIFactory工厂,获取IWXAPI的实例 api = WXAPIFactory.createWXAPI(this, Constants.APP_ID, false); regBtn = (Button) findViewById(R.id.reg_btn); regBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // 将该app注册到微信 api.registerApp(Constants.APP_ID); } }); gotoBtn = (Button) findViewById(R.id.goto_send_btn); gotoBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { startActivity(new Intent(WXEntryActivity.this, SendToWXActivity.class)); finish(); } }); launchBtn = (Button) findViewById(R.id.launch_wx_btn); launchBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(WXEntryActivity.this, "launch result = " api.openWXApp(), Toast.LENGTH_LONG).show(); } }); checkBtn = (Button) findViewById(R.id.check_timeline_supported_btn); checkBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { int wxSdkVersion = api.getWXAppSupportAPI(); if (wxSdkVersion >= TIMELINE_SUPPORTED_VERSION) { Toast.makeText(WXEntryActivity.this, "wxSdkVersion = " Integer.toHexString(wxSdkVersion) "\ntimeline supported", Toast.LENGTH_LONG).show(); } else { Toast.makeText(WXEntryActivity.this, "wxSdkVersion = " Integer.toHexString(wxSdkVersion) "\ntimeline not supported", Toast.LENGTH_LONG).show(); } } }); api.handleIntent(getIntent(), this); } @Override protected void onNewIntent(Intent intent) { super.onNewIntent(intent); setIntent(intent); api.handleIntent(intent, this); } // 微信发送请求到第三方应用时,会回调到该方法 @Override public void onReq(BaseReq req) { switch (req.getType()) { case ConstantsAPI.COMMAND_GETMESSAGE_FROM_WX: goToGetMsg(); break; case ConstantsAPI.COMMAND_SHOWMESSAGE_FROM_WX: goToShowMsg((ShowMessageFromWX.Req) req); break; default: break; } } // 第三方应用发送到微信的请求处理后的响应结果,会回调到该方法 @Override public void onResp(BaseResp resp) { 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(); } private void goToGetMsg() { Intent intent = new Intent(this, GetFromWXActivity.class); intent.putExtras(getIntent()); startActivity(intent); finish(); } private void goToShowMsg(ShowMessageFromWX.Req showReq) { WXMediaMessage wxMsg = showReq.message; WXAppExtendObject obj = (WXAppExtendObject) wxMsg.mediaObject; StringBuffer msg = new StringBuffer(); // 组织一个待显示的消息内容 msg.append("description: "); msg.append(wxMsg.description); msg.append("\n"); msg.append("extInfo: "); msg.append(obj.extInfo); msg.append("\n"); msg.append("filePath: "); msg.append(obj.filePath); Intent intent = new Intent(this, ShowFromWXActivity.class); intent.putExtra(Constants.ShowMsgActivity.STitle, wxMsg.title); intent.putExtra(Constants.ShowMsgActivity.SMessage, msg.toString()); intent.putExtra(Constants.ShowMsgActivity.BAThumbData, wxMsg.thumbData); startActivity(intent); finish(); } }