在做分享微信或者qq分享时,我们需要先判断QQ,微信客户端是否存在;
如果是继承了微信分享sdk的可以通过
if (!api.isWXAppInstalled()) {
Toast.makeText(NoticeDetailActivity.this, "您还未安装微信客户端",
Toast.LENGTH_SHORT).show();
return;
}
如果没有就不需要进行分享,给予提示,增强体验
如果是继承与sharesdk进行分享的,sharesdk也有类似的封装方法
Platform wechat = ShareSDK.getPlatform (Wechat.NAME);
boolean clientValid = wechat.isClientValid();
if(!clientValid){
ToastUtils.showToast(mContext,"请安装微信客户端");
return;
}
其他客户端也一样通过平台调用来判断;
如果没有继承分享sdk,然要判断微信客户端是否存在的话,可用通过packagemanager来判定,这个稍微麻烦一点
PackageManager packageManager = context.getPackageManager();// 获取packagemanager
List<PackageInfo> pinfo = packageManager.getInstalledPackages(0);// 获取所有已安装程序的包信息
if (pinfo != null) {
for (int i = 0; i < pinfo.size(); i++) {
String pn = pinfo.get(i).packageName;
if (pn.equals("com.tencent.mm")) { ToastUtils.showToast(mContext,"微信客户端存在");
} }}