/** * 发送分享 * * @param mContext app上下文 * @param shareContentMeta 分享内容元数据 * @param isMultiple 是否同时发送多种数据 * @param shareEntry 分享入口,目前有网页文本、网页图片、屏幕截图、书签、历史、下载管理几个入口 * @param isCheckPriority 是否需要检查分享优先级 * @return 是否分享成功 */ public static boolean sendShare( Context mContext, BdSharerOM shareContentMeta, boolean isMultiple, int shareEntry, boolean isCheckPriority) { if (shareContentMeta == null || shareContentMeta.getContent() == null) { BdLog.e("shareContentMeta is null."); return false; } String action = "android.intent.action.SEND"; Intent intent = new Intent(action); // 不管有没有附件,都设置文本信息,第三方软件图片分享可能会不支持android.intent.extra.TEXT // 如果有文字,则分享文字 intent.putExtra("android.intent.extra.TEXT", shareContentMeta.getContent()); BdLog.d(shareContentMeta.getContent()); int contentType = shareContentMeta.getContentType(); if (contentType == BdSharerOM.TYPE_TEXT) { intent.setType("text/plain"); } Intent intent2 = Intent.createChooser(intent, mContext.getString(R.string.share_channel)); try { if (mContext instanceof Activity) { Activity act = (Activity) mContext; act.startActivityForResult(intent2, shareEntry); } } catch (ActivityNotFoundException e) { BdLog.e("share app not found.", e); return false; } catch (Exception e) { BdLog.e("share exception.", e); return false; } return true; }