例如:要在app中直接分享图片到微信、交往等,而不调用他们的sdk
直接贴代码以下;
public void shareImage(Bitmap bitmap) {
try {
Uri uriToImage = Uri.parse(MediaStore.Images.Media.insertImage(
mContext.getContentResolver(), bitmap, null, null));
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, uriToImage);
shareIntent.setType("image/*");
// 遍历所有支撑发送图片的运用。找到须要的运用
PackageManager packageManager = mContext.getPackageManager();
List<ResolveInfo> resolveInfoList = packageManager
.queryIntentActivities(shareIntent,
PackageManager.GET_INTENT_FILTERS);
ComponentName componentName = null;
for (int i = 0; i < resolveInfoList.size(); i++) {
if (TextUtils.equals(
resolveInfoList.get(i).activityInfo.packageName,
YouNeedAppPackageName)) {
componentName = new ComponentName(
resolveInfoList.get(i).activityInfo.packageName,
resolveInfoList.get(i).activityInfo.name);
break;
}
}
// 已安装**
if (null != componentName) {
shareIntent.setComponent(componentName);
mContext.startActivity(shareIntent);
} else {
ContextUtil.getInstance().showToastMsg("请先安装**");
}
} catch (Exception e) {
ContextUtil.getInstance().showToastMsg("分享图片到**失败");
}
}