JavaBinder: !!! FAILED BINDER TRANSACTION !!! (parcel size = 124)

微信分享时校验是否安装微信客户端,部分机型报JavaBinder: !!! FAILED BINDER TRANSACTION !!! (parcel size = 124)

验证方法为

try {
   mContext.getPackageManager().getPackageInfo("com.tencent.mm", PackageManager.GET_ACTIVITIES);
    return true;
} catch (Exception e) {
    return false;
}

猜想:获取到的数据包过大

修正方法为  双向验证

if (api.isWXAppInstalled() && api.isWXAppSupportAPI()) {
 return true;
} else {
 final PackageManager packageManager = mContext.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.equalsIgnoreCase("com.tencent.mm")) {
          return true;
       }
    }
 }
 return false;
}

猜你喜欢

转载自blog.csdn.net/cunjicsdn/article/details/80306318
124
今日推荐