|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface IWXAPI
WXAPIFactory
WXAPIFactory
创建实例
Method Summary | |
---|---|
void |
detach()
|
int |
getWXAppSupportAPI()
get api level from installed wechat app |
boolean |
handleIntent(Intent data,
IWXAPIEventHandler handler)
Call handleIntent(Intent, IWXAPIEventHandler) in BroadcastReceiver. |
boolean |
isWXAppInstalled()
check wechat app installation status |
boolean |
isWXAppSupportAPI()
check api level that supported by wechat app which has been installed |
boolean |
openWXApp()
launch wechat app |
boolean |
registerApp(java.lang.String appId)
Register WeChat app. |
boolean |
sendReq(BaseReq req)
send request to wechat app |
boolean |
sendResp(BaseResp resp)
send response to wechat app, make sure that the response have same transaction with request |
void |
unregisterApp()
Un-register WeChat app. |
Method Detail |
---|
boolean registerApp(java.lang.String appId)
appId
- void unregisterApp()
boolean handleIntent(Intent data, IWXAPIEventHandler handler)
handleIntent(Intent, IWXAPIEventHandler)
in BroadcastReceiver. For example
class SampleEventProcessor extends BroadcastReceiver implements IWXAPIEventHandler {
// override broadcast receiver
public void onReceive(Context context, Intent data) {
final IWXAPI api = WXAPIFactory.createWXAPI(context, null);
if (api.handleIntent(data, this)) {
// intent handled as wechat request/response
return;
}
// process other intent as you like
}
// process request
public void onReq(BaseReq req) {
switch (req.getType()) {
case ConstantsAPI.COMMAND_GETMESSAGE_FROM_WX:
Toast.makeText(context, "get message from wx, processed here", Toast.LENGTH_LONG).show();
break;
case ConstantsAPI.COMMAND_SHOWMESSAGE_FROM_WX:
Toast.makeText(context, "show message from wx, processed here", Toast.LENGTH_LONG).show();
break;
default:
break;
}
}
// process response
public void onResp(BaseResp resp) {
switch (resp.getType()) {
case ConstantsAPI.COMMAND_SENDAUTH:
Toast.makeText(context, "get auth resp, processed here", Toast.LENGTH_LONG).show();
break;
case ConstantsAPI.COMMAND_SENDMESSAGE_TO_WX:
// Process SendMessageToWX.Resp
returned by WeChat
Toast.makeText(context, "send messsage to wx resp, processed here", Toast.LENGTH_LONG).show();
break;
default:
break;
}
}
}
and DON'T FORGET to add SampleEventProcessor BroadcastReceiver in AndroidManifest.xml
handleIntent(Intent, IWXAPIEventHandler)
,例如:
class SampleEventProcessor extends BroadcastReceiver implements IWXAPIEventHandler {
// override broadcast receiver
public void onReceive(Context context, Intent data) {
final IWXAPI api = WXAPIFactory.createWXAPI(context, null);
if (api.handleIntent(data, this)) {
// intent handled as wechat request/response
return;
}
// process other intent as you like
}
// process request
public void onReq(BaseReq req) {
switch (req.getType()) {
case ConstantsAPI.COMMAND_GETMESSAGE_FROM_WX:
Toast.makeText(context, "get message from wx, processed here", Toast.LENGTH_LONG).show();
break;
case ConstantsAPI.COMMAND_SHOWMESSAGE_FROM_WX:
Toast.makeText(context, "show message from wx, processed here", Toast.LENGTH_LONG).show();
break;
default:
break;
}
}
// process response
public void onResp(BaseResp resp) {
switch (resp.getType()) {
case ConstantsAPI.COMMAND_SENDAUTH:
Toast.makeText(context, "get auth resp, processed here", Toast.LENGTH_LONG).show();
break;
case ConstantsAPI.COMMAND_SENDMESSAGE_TO_WX:
// 处理微信主程序返回的SendMessageToWX.Resp
break;
default:
break;
}
}
}
别忘了在AndroidManifest.xml中增加SampleEventProcessor这个BroadcastReceiver:
或者在代码中注册这个事件:
data
- handler
-
boolean isWXAppInstalled()
boolean isWXAppSupportAPI()
int getWXAppSupportAPI()
boolean openWXApp()
boolean sendReq(BaseReq req)
req
-
boolean sendResp(BaseResp resp)
resp
-
void detach()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |