AndroidはIntentを使用する.ACTION_SENDは画像と文字の内容を共有する(新浪微博、メールなど)


次の方法では、通常の文字共有しか実現できません.
1
2
3
4
5
6
7
8
9
10
11 private void shareContent() {          Intent share = new Intent(android.content.Intent.ACTION_SEND);          share.setType( "text/plain" );          String title = " " ;          String extraText= " ,www.jcodecraeer.com" ;          share.putExtra(Intent.EXTRA_TEXT, extraText);          if (title != null ) {              share.putExtra(Intent.EXTRA_SUBJECT, title);          }          startActivity(Intent.createChooser(share, " " ));     }
では、画像と文字を同時に共有したい場合は、次の方法を使用します.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 private void share(String content, Uri uri){      Intent shareIntent = new Intent(Intent.ACTION_SEND);      if (uri!= null ){          shareIntent.putExtra(Intent.EXTRA_STREAM, uri);          shareIntent.setType( "image/*" );          // sms_body          shareIntent.putExtra( "sms_body" , content);      } else {          shareIntent.setType( "text/plain" );      }      shareIntent.putExtra(Intent.EXTRA_TEXT, content);      //      startActivity(Intent.createChooser(shareIntent, " " ));      //                                                                                                                   }
この方法で画像を伝えることができるのはshareIntentのためです.setType(「image/*」)、setType(「image/*」)は文字や画像を渡すことができます.画像の内容はUriで指定できますが、画像のurlをuriに変換する必要があります.