目录
接入说明:
任何需要调用企业微信API的应用,都需要先在企业微信管理后台创建一个应用,设置完成后,即可使用对应的功能。
企业微信分享的设置,复用企业微信授权登录的设置,设置以后登录、分享任何一个都可以使用。
SDK名称:企业微信登录/分享SDK
版本号:3.0.0.6
主要功能:通过企业微信登录/分享SDK,企业可在自建的app引入sdk,从而可使用企业微信账号登录app,并且在app中分享消息到企业微信。
使用说明:详见本接入指南
开发者:深圳市腾讯计算机系统有限公司
隐私政策:请接入企业微信登录/分享 SDK的开发者,认真阅读《企业微信登录/分享SDK个人信息保护规则》,并确保对企业微信登录/分享SDK的接入使用情况符合上述规则的相关要求。
每个第三方应用必须要导入该sdk库,用于实现与企业微信的通信。
private static final String APPID = "WW1e933be11645237c";
private static final String AGENTID = "1000012";
private static final String SCHEMA = "wwauth1e933be11645237c000012";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
stringId = getApplicationInfo().labelRes;
iwwapi = WWAPIFactory.createWWAPI(this);
iwwapi.registerApp(SCHEMA);
}
WWMediaText txt = new WWMediaText(((EditText) findViewById(R.id.et3)).getText().toString());
txt.appPkg = getPackageName();
txt.appName = getString(stringId);
txt.appId = APPID;
txt.agentId = AGENTID;
iwwapi.sendMessage(txt);
final WWAuthMessage.Req req = new WWAuthMessage.Req();
req.sch = SCHEMA;
req.appId = APPID;
req.agentId = AGENTID;
req.state = "dd";
iwwapi.sendMessage(req, new IWWAPIEventHandler() {
@Override
public void handleResp(BaseMessage resp) {
if (resp instanceof WWAuthMessage.Resp) {
WWAuthMessage.Resp rsp = (WWAuthMessage.Resp) resp;
if (rsp.errCode == WWAuthMessage.ERR_CANCEL) {
Toast.makeText(MainActivity.this, "登录取消", Toast.LENGTH_SHORT).show();
}else if (rsp.errCode == WWAuthMessage.ERR_FAIL) {
Toast.makeText(MainActivity.this, "登录失败", Toast.LENGTH_SHORT).show();
} else if (rsp.errCode == WWAuthMessage.ERR_OK) {
Toast.makeText(MainActivity.this, "登录成功:" + rsp.code,
Toast.LENGTH_SHORT).show();
}
}
}
});
-keep class com.tencent.wework.api.** {
*;
}
企业微信分享是指第三方App通过接入该功能,让用户可以从App分享文字、图片、文件、视频、网页至企业微信会话。
企业微信分享目前支持文字、图片、文件、视频、网页共五种类型。开发者在App中在集成企业微信SDK后,可调用接口实现,以下依次是文字分享、图片分享、文件分享、视频分享、网站分享的示例。
WWMediaText txt = new WWMediaText(
((EditText) findViewById(R.id.et3)).getText().toString());
txt.appPkg = getPackageName();
txt.appName = getString(stringId);
txt.appId = APPID; //企业唯一标识。创建企业后显示在,我的企业 CorpID字段
txt.agentId = AGENTID; //应用唯一标识。显示在具体应用下的 AgentId字段
iwwapi.sendMessage(txt);
WWMediaImage img = new WWMediaImage();
img.fileName = "test";
img.filePath = path;
img.appPkg = getPackageName();
img.appName = getString(stringId);
img.appId = APPID; //企业唯一标识。创建企业后显示在,我的企业 CorpID字段
img.agentId = AGENTID;
iwwapi.sendMessage(img);
WWMediaFile file = new WWMediaFile();
file.fileName = "test";
file.filePath = path;
file.appPkg = getPackageName();
file.appName = getString(stringId);
file.appId = APPID; //企业唯一标识。创建企业后显示在,我的企业 CorpID字段
file.agentId = AGENTID; //应用唯一标识。显示在具体应用下的 AgentId字段
iwwapi.sendMessage(file);
WWMediaVideo video = new WWMediaVideo();
video.fileName = "test";
video.filePath = path;
video.appPkg = getPackageName();
video.appName = getString(stringId);
video.appId = APPID; //企业唯一标识。创建企业后显示在,我的企业 CorpID字段
video.agentId = AGENTID; //应用唯一标识。显示在具体应用下的 AgentId字段
iwwapi.sendMessage(video);
WWMediaLink link = new WWMediaLink();
link.thumbUrl = ((EditText) findViewById(R.id.et2)).getText().toString();
link.webpageUrl = ((EditText) findViewById(R.id.et1)).getText().toString();
link.title = ((EditText) findViewById(R.id.et3)).getText().toString();
link.description = ((EditText) findViewById(R.id.et4)).getText().toString();
link.appPkg = getPackageName();
link.appName = getString(stringId);
link.appId = APPID; //企业唯一标识。创建企业后显示在,我的企业 CorpID字段
link.agentId = AGENTID; //应用唯一标识。显示在具体应用下的 AgentId字段
iwwapi.sendMessage(link);
WWMediaMiniProgram miniProgram = new WWMediaMiniProgram();
miniProgram.appPkg = getPackageName();
miniProgram.appName = "teset";//app name of this android pkg
miniProgram.appId = APPID; //企业唯一标识。创建企业后显示在,我的企业 CorpID字段
miniProgram.agentId = AGENTID; //应用唯一标识。显示在具体应用下的 AgentId字段
miniProgram.schema = SCHEMA;
miniProgram.username = "gh_dde54cb88ce7@app"; //必须是应用关联的小程序,注意要有@app后缀
miniProgram.description = "dddddd";
miniProgram.path = "/pages/plugin/index.html?plugid=1cbd3b7c8674e61769436b5e354ddb2f";
Bitmap bitmap = ((BitmapDrawable) getDrawable(R.drawable.test)).getBitmap();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 0, stream);
byte[] byteArray = stream.toByteArray();
miniProgram.hdImageData = byteArray;
miniProgram.title = "测试_MaHow";
iwwapi.sendMessage(miniProgram, new IWWAPIEventHandler() {
@Override
public void handleResp(BaseMessage resp) {
if(resp instanceof WWSimpleRespMessage){
WWSimpleRespMessage rsp = (WWSimpleRespMessage)resp;
String t = "";
Toast.makeText(MainActivity.this,
t = "发小程序," + rsp.errCode + "," + rsp.errMsg,
Toast.LENGTH_LONG).show();
}
}
});