Android-Universal-Image-Loader를 사용하여 이미지를 공유하는 방법 imageloader를 통해로드되지만 이미지 로더에 URL을 제공하는 imageview가 있습니다. 이미지 로더가 이미 이미지를 URL에서 디스크로 작성한 다음 그것을 표시했습니다Android-Universal-Image-Loader를 사용하여 이미지를 공유하는 방법은 무엇입니까?
어떻게 디스크에 다시 쓰지 않고도 공유 할 수 있습니까?
item_zoom_image_view는 selectedItemImage가 URL이 포함 된 특성이있는 클래스 이미지 뷰 여기
내 이미지 로더 설정입니다 ( http://...합니다.) :public void initImageLoader(Context context) {
DisplayImageOptions options = new DisplayImageOptions.Builder()
.cacheOnDisc().imageScaleType(ImageScaleType.IN_SAMPLE_POWER_OF_2)
.bitmapConfig(Bitmap.Config.RGB_565)
.build();
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(
context).threadPriority(Thread.NORM_PRIORITY - 2)
.denyCacheImageMultipleSizesInMemory()
.discCacheFileNameGenerator(new Md5FileNameGenerator())
.defaultDisplayImageOptions(options)
.memoryCache(new WeakMemoryCache())
.denyCacheImageMultipleSizesInMemory()
.tasksProcessingOrder(QueueProcessingType.LIFO).build();
imgLoader = ImageLoader.getInstance();
imgLoader.init(config);
}
여기에 내가 이미지를 표시하는 방법입니다 여기
ImageLoader imgLoader = AppData.imgLoader;
if (!selectedItemImage.getImageURL().trim().equals("")) {
imgLoader.displayImage(selectedItemImage.getImageURL(), item_zoom_image_view, new ImageLoadingListener() {
@Override
public void onLoadingStarted(String imageUri, View view) {
Progress.ShowProgressDialog(true);
currentImageURI = "";
}
@Override
public void onLoadingFailed(String imageUri, View view, FailReason failReason) {
item_zoom_image_view.setImageResource(R.drawable.ic_artificial_flowers);
Progress.HideProgressDialog();;
currentImageURI = "";
}
@Override
public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
Progress.HideProgressDialog();;
currentImageURI = imageUri;
}
@Override
public void onLoadingCancelled(String imageUri, View view) {
item_zoom_image_view.setImageResource(R.drawable.ic_artificial_flowers);
Progress.HideProgressDialog();;
currentImageURI = "";
}
});
}
else
{
item_zoom_image_view.setImageResource(R.drawable.ic_artificial_flowers);
Progress.HideProgressDialog();;
currentImageURI = "";
}
내가 이미지를 공유하는 방법입니다
void ShareImg() {
try {
Uri bmpUri = Uri.parse(currentImageURI);
if (bmpUri != null) {
// Construct a ShareIntent with link to image
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, bmpUri);
shareIntent.setType("image/*");
// Launch sharing dialog for image
startActivity(Intent.createChooser(shareIntent, "Share Image"));
} else {
// ...sharing failed, handle error
}
} catch (Exception e) {
}
}
문제는 이미지를 표시하는 동안 내가 찍은 URI (currentImageURI가) 정확하지 않은 것입니다 또는 내가 모르는 그러나
왜? 이미지 로더가 이미 imageUri를 제공하고있어로드 된 이미지를 공유 할 수 있습니다. 내가 공유 (나는 방금 내 질문을 업데이 트)에 추가 된 방법을 사용하여 –