简体   繁体   中英

GIF is getting shared as an image not animated - Android Java

I am trying to share an GIF programmatically, but it is getting shared as an image (not animated)

Code Snippet:

Intent shareIntent = new Intent();
shareIntent.setType("image/gif");//image/gif
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(myList.get(item)));
startActivity(Intent.createChooser(shareIntent,"Share gif"));

You are trying to share to which apps?

Some whatsapp builds don't support gif feature.

You can check this question here with some additional information: How to share GIF image in Whatsapp programmatically in Android?

There is this comment:

" This solution doesn't work with whatsapp but does work with all the other apps I specified above (namely Hangouts, Android Messages, Facebook Messenger) "

He is referring to this answer:

private void ShareGif() {

  // replace the path and file name with your gif image path and name
  String baseDir = Environment.getExternalStorageDirectory().getAbsolutePath();
  String fileName = "temporary_file.gif";

  File sharingGifFile = new File(baseDir, fileName);

  Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND);
  shareIntent.setType("image/gif");
  Uri uri = Uri.fromFile(sharingGifFile);
  shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
  startActivity(Intent.createChooser(shareIntent, "Share image"));

}

/*
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.setPackage("com.whatsapp");
shareIntent.putExtra(Intent.EXTRA_TEXT,title + "\n\nLink : " + link );
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(sharePath));
shareIntent.setType("image/*");
startActivity(shareIntent);
*/

Hope it helps.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM