[TOC]
Android与iOS不嵌入微信SDK的情况上发送一份文件给微信好友。
1. iOS 一键分享
let activityVC = UIActivityViewController(activityItems: ["需要分享文件asset" as Any], applicationActivities: nil)
activityVC.popoverPresentationController?.sourceView = self.view
self.present(activityVC, animated: true, completion: nil)
效果如下,选择微信即可。
2. Android一键分享
2.1 分享文件
File file = new File(Environment.getExternalStorageDirectory(), "abc.txt");
if (file.exists()) {
Intent intent = new Intent();
Uri uri = null;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder();
StrictMode.setVmPolicy(builder.build());
}
uri = Uri.fromFile(file);
intent.setAction("android.intent.action.SEND");
intent.setDataAndType(Uri.fromFile(file), "text/*");
intent.putExtra(Intent.EXTRA_TEXT, "title");
intent.putExtra(Intent.EXTRA_STREAM, uri);
startActivity(intent);
}
效果:
2.2 分享到微信
上面代码的基础上,添加
ComponentName comp = new ComponentName("com.tencent.mm", "com.tencent.mm.ui.tools.ShareImgUI");
intent.setComponent(comp);