くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

【Android】外部URLから画像を直接共有する

Picassoで読み込んでキャッシュをShareCompatで共有するのがよさそう

public void shareImage(String url, final AppCompatActivity activity) {
    Picasso.get().load(url).into(new Target() {
        @Override
        public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
            Uri bmpUri = getLocalBitmapUri(bitmap, activity);
            if (bmpUri != null) {
                ShareCompat.IntentBuilder builder = ShareCompat.IntentBuilder.from(activity);
                builder.setStream(bmpUri);
                builder.setType("image/*");
                builder.startChooser();
            }
        }

        @Override
        public void onBitmapFailed(Exception e, Drawable errorDrawable) { }

        @Override
        public void onPrepareLoad(Drawable placeHolderDrawable) { }
    });
}

参考にしたサイト様