Android-分享
生活随笔
收集整理的這篇文章主要介紹了
Android-分享
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
現在基本上都是android7.0以上了吧
在 app - AndroidManifest - application中添加
file_paths.xml 放在/res/xml/
我這邊是這樣的
<?xml version="1.0" encoding="utf-8"?> <paths xmlns:android="http://schemas.android.com/apk/res/android"><root-pathname="root"path=""/><files-pathname="files"path=""/><cache-pathname="cache"path=""/><external-files-pathname="external_file_path"path=""/><external-cache-pathname="external_cache_path"path=""/><external-pathname="external"path="phonelive"/> </paths>? <!--external-path 標簽用來指定Uri共享的,name 屬性的值可以自定義,
? ? path屬性的值表示共享的具體位置,設置為空,就表示共享整個SD卡-->
搞幾個例子吧
調用系統分享
/*** 分享文本** @param context* @param text* @param title*/public static void sendText(Context context, String text, String title) {Intent intent = new Intent(Intent.ACTION_SEND);intent.setType("text/plain");intent.putExtra(Intent.EXTRA_TEXT, text);context.startActivity(Intent.createChooser(intent, title));}/*** 分享圖片** @param context* @param uri* @param title*/public static void sendImage(Context context, Uri uri, String title) {Intent intent = new Intent(Intent.ACTION_SEND);intent.setType("image/png");intent.putExtra(Intent.EXTRA_STREAM, uri);context.startActivity(Intent.createChooser(intent, title));}/*** 分享多張圖片** @param context* @param imageUris* @param title*/public static void sendMoreImage(Context context, ArrayList<Uri> imageUris, String title) {Intent mulIntent = new Intent(Intent.ACTION_SEND_MULTIPLE);mulIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, imageUris);mulIntent.setType("image/jpeg");context.startActivity(Intent.createChooser(mulIntent, "多圖文件分享"));}/*** 分享視頻** @param context* @param uri*/public static void sendVideo(Context context, Uri uri) {Intent shareIntent = new Intent();shareIntent.setAction(Intent.ACTION_SEND);shareIntent.putExtra(Intent.EXTRA_STREAM, uri);shareIntent.setType("video/*");//選擇視頻context.startActivity(Intent.createChooser(shareIntent, "分享到"));}Uri定義:
Uri photoUri = FileProvider.getUriForFile(mContext,getPackageName() + ".fileprovider",mShareImageFile);分享指定APP(先判斷這個APP是否有安裝)
ins
if (!AppInstalledUtils.checkAppInstalled(mContext, "com.instagram.android")) { ToastUtil.show(getString(com.vemo.video.R.string.not_install) + "INSTATRAM"); return;}intent.setPackage("com.instagram.android");line
if (!AppInstalledUtils.checkAppInstalled(mContext, "jp.naver.line.android")) { ToastUtil.show(getString(com.vemo.video.R.string.not_install) + "LINE"); return;}String scheme = "line://msg/image" + mShareImageFile.getPath();Uri uri1 = Uri.parse(scheme);startActivity(new Intent(Intent.ACTION_VIEW, uri1));QQ、微信,同樣的,指定包名就可以。建議調用接入SDK。
總結
以上是生活随笔為你收集整理的Android-分享的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python免费对接快递鸟api单号识别
- 下一篇: 2018南航计算机考研分数线,2018-