Android 分享功能
16lz
2021-01-23
Android 分享功能
Android 2011-05-22 19:14:40 阅读90 评论0 字号:大中小订阅
<activity ......> <intent-filter> <action android:name = "android.intent.action.SEND_MULTIPLE"/> <!--多选文件时支持分享--> <action android:name = "android.intent.action.SEND"/> <!--单文件分享--> <data android:mimeType = "image/*"/> <!--图片分享--> <data android:mimeType = "video/*"/> <!--视频分享--> <data android:mimeType = "audio/*"/> <!--音频分享--> <data android:mimeType = "*/*"/> <!--所有分享--> </intent-filter> </activity>private ArrayList<String> getShareFilePathList(){ ArrayList<String> mShareFilePathList = new ArrayList<String>(); Intent intent = getIntent(); if(Intent.ACTION_SEND.equals(intent.getAction())){ //分享单个 Bundle extras = intent.getExtras(); if(extras.containsKey(Intent.EXTRA_STREAM)){ Uri uri = (Uri)extras.getParcelable(Intent.EXTRA_STREAM); String scheme = uri.getScheme(); if(scheme.equals("content")){ ContentResolver cr = getContentResolver(); Cursor c = cr.query(uri,null,null,null,null); c.moveToFirst(); String filePath = c.getString(c.getColumnIndexOrThrow(Images.Media.DATA)); mShareFilePathList.add(filePath); c.close(); } } }else if(Intent.ACTION_SEND_MULIPLE.equals(mIntent.getAction())){ //分享多个 Bundle extras = mIntent.getExtras(); if(extras.containsKey(Intent.EXTRA_STREAM)){ ArrayList<Parcelable> mList = extras.getParcelableArrayList(Intent.EXTRA_STREAM); for(Parcelable pa:mList){ Uri uri = (Uri)pa; String scheme = uri.getScheme(); if(scheme.equals("content")){ ContentResolver cr = getContentResolver(); Cursor c = cr.query(uri,null,null,null.null); c.moveToFirst(); String filePath = c.getString(c.getColumnIndexOrThrow(Images.Media.DATA)); mShareFilePathList.add(filePath); c.close(); } } } } return mShareFilePathList; }
更多相关文章
- 微软的 Android 计划:邪恶的天才计划或只是邪恶?
- Catalog Service - 解析微软微服务架构实例代码
- 介绍一个微软开源项目网站--CodePlex
- 具体分析微软的xml解析器
- 继 GitHub 后微软又收购了 npm
- 想来微软实习吗?
- 尝鲜!微软首个AI量化投资开源平台Qlib上手体验!
- 10% + 10% = 0.11 ?是 bug 还是 feature ?微软开源的计算器项目告
- 大新闻!Python 之父重新出山,加入微软开发部