本文整理了Java中com.facebook.datasource.DataSource
类的一些代码示例,展示了DataSource
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。DataSource
类的具体详情如下:
包路径:com.facebook.datasource.DataSource
类名称:DataSource
暂无
代码示例来源:origin: aa112901/remusic
dataSource = imagePipeline.fetchDecodedImage(imageRequest, AlbumsDetailActivity.this);
dataSource.subscribe(new BaseBitmapDataSubscriber() {
代码示例来源:origin: Piasy/BigImageViewer
@Override
protected void onNewResultImpl(DataSource<CloseableReference<PooledByteBuffer>> dataSource) {
if (!dataSource.isFinished() || dataSource.getResult() == null) {
return;
}
// if we try to retrieve image file by cache key, it will return null
// so we need to create a temp file, little bit hack :(
PooledByteBufferInputStream inputStream = null;
FileOutputStream outputStream = null;
try {
inputStream = new PooledByteBufferInputStream(dataSource.getResult().get());
outputStream = new FileOutputStream(mTempFile);
IOUtils.copy(inputStream, outputStream);
mFinished = true;
onSuccess(mTempFile);
} catch (IOException e) {
onFail(e);
} finally {
IOUtils.closeQuietly(inputStream);
IOUtils.closeQuietly(outputStream);
}
}
代码示例来源:origin: Piasy/BigImageViewer
private void closeSource(int requestId) {
DataSource source = mRequestSourceMap.remove(requestId);
if (source != null) {
source.close();
}
}
代码示例来源:origin: MukeshKumar009/EcomSample
@Override
public void onFinalImageSet(String s, @Nullable ImageInfo imageInfo, @Nullable Animatable animatable) {
try {
imageReference = dataSource.getResult();
if (imageReference != null) {
CloseableImage image = imageReference.get();
// do something with the image
if (image != null && image instanceof CloseableStaticBitmap) {
CloseableStaticBitmap closeableStaticBitmap = (CloseableStaticBitmap) image;
Bitmap bitmap = closeableStaticBitmap.getUnderlyingBitmap();
if (bitmap != null) {
setImageBitmap(bitmap);
}
}
}
} finally {
dataSource.close();
CloseableReference.closeSafely(imageReference);
}
}
})
代码示例来源:origin: 6ag/BaoKanAndroid
@Override
public void execute(@NonNull Runnable command) {
String filePath = null;
if (dataSource.getResult()) {
filePath = getDiskCacheFilePath(url);
// 防止获取磁盘文件失败
if (TextUtils.isEmpty(filePath)) {
cacheInDiskListener.checkCacheInDisk(false, filePath);
return;
}
}
cacheInDiskListener.checkCacheInDisk(dataSource.getResult(), filePath);
}
});
代码示例来源:origin: szpnygo/NoWordsChat
@Override
protected void onNewResultImpl(DataSource<Boolean> dataSource) {
if (!dataSource.isFinished()) {
listener.cached(false);
return;
}
listener.cached(true);
}
代码示例来源:origin: MukeshKumar009/EcomSample
@Override
public void onFinalImageSet(String s, @Nullable ImageInfo imageInfo, @Nullable Animatable animatable) {
try {
imageReference = dataSource.getResult();
if (imageReference != null) {
CloseableImage image = imageReference.get();
if (image != null && image instanceof CloseableStaticBitmap) {
CloseableStaticBitmap closeableStaticBitmap = (CloseableStaticBitmap) image;
Bitmap bitmap = closeableStaticBitmap.getUnderlyingBitmap();
if (bitmap != null) {
setImageBitmap(bitmap);
}
}
}
} finally {
dataSource.close();
CloseableReference.closeSafely(imageReference);
}
}
})
代码示例来源:origin: Awent/PhotoPick-Master
/**
* 图片是否已经存在了
*/
public static boolean isCached(Context context, Uri uri) {
ImagePipeline imagePipeline = Fresco.getImagePipeline();
DataSource<Boolean> dataSource = imagePipeline.isInDiskCache(uri);
if (dataSource == null) {
return false;
}
ImageRequest imageRequest = ImageRequest.fromUri(uri);
CacheKey cacheKey = DefaultCacheKeyFactory.getInstance().getEncodedCacheKey(imageRequest, context);
BinaryResource resource = ImagePipelineFactory.getInstance().getMainFileCache().getResource(cacheKey);
return resource != null && dataSource.getResult() != null && dataSource.getResult();
}
代码示例来源:origin: aa112901/remusic
dataSource = imagePipeline.fetchDecodedImage(imageRequest, MediaService.this);
dataSource.subscribe(new BaseBitmapDataSubscriber() {
代码示例来源:origin: 6ag/BaoKanAndroid
@Override
protected void onNewResultImpl(
DataSource<CloseableReference<CloseableImage>> dataSource) {
if (!dataSource.isFinished()) {
CloseableReference<CloseableImage> reference = dataSource.getResult();
代码示例来源:origin: biezhihua/MySimpleDraweeView
@Override
public void onFinalImageSet(String id, ImageInfo imageInfo, Animatable animatable) {
super.onFinalImageSet(id, imageInfo, animatable);
CloseableReference<CloseableImage> imageCloseableReference = null;
try {
imageCloseableReference = dataSource.getResult();
if (imageCloseableReference != null) {
final CloseableImage image = imageCloseableReference.get();
if (image != null && image instanceof CloseableStaticBitmap) {
CloseableStaticBitmap closeableStaticBitmap = (CloseableStaticBitmap) image;
final Bitmap bitmap = closeableStaticBitmap.getUnderlyingBitmap();
if (bitmap != null) {
setImageBitmap(bitmap);
setScaleType(ScaleType.CENTER_CROP);
}
}
}
} finally {
dataSource.close();
CloseableReference.closeSafely(imageCloseableReference);
}
}
})
代码示例来源:origin: bilibili/BiliShare
@Override
protected void onNewResultImpl(DataSource<CloseableReference<CloseableImage>> dataSource) {
CloseableReference<CloseableImage> result = dataSource.getResult();
if (result != null) {
ImageRequest imageRequest = ImageRequest.fromUri(imageUrl);
CacheKey cacheKey = DefaultCacheKeyFactory.getInstance()
.getEncodedCacheKey(imageRequest);
BinaryResource resource = Fresco.getImagePipelineFactory()
.getMainDiskStorageCache()
.getResource(cacheKey);
if (resource instanceof FileBinaryResource) {
File cacheFile = ((FileBinaryResource) resource).getFile();
try {
FileUtil.copyFile(cacheFile, new File(filePath));
if (listener != null)
listener.onSuccess(filePath);
return;
} catch (IOException e) {
e.printStackTrace();
}
}
}
if (listener != null)
listener.onFailed(imageUrl);
}
代码示例来源:origin: Piasy/BigImageViewer
DataSource<CloseableReference<PooledByteBuffer>> source
= pipeline.fetchEncodedImage(request, true);
source.subscribe(new ImageDownloadSubscriber(mAppContext) {
@Override
protected void onProgress(int progress) {
代码示例来源:origin: szpnygo/NoWordsChat
@Override
protected void onNewResultImpl(DataSource<CloseableReference<CloseableImage>> dataSource) {
if (!dataSource.isFinished()) {
listener.onNewResultImpl(null, null);
return;
}
CloseableReference<CloseableImage> imageCloseableReference = dataSource.getResult();
Bitmap bitmap = null;
if (imageCloseableReference != null) {
CloseableReference<CloseableImage> referenceClone = imageCloseableReference.clone();
try {
CloseableImage closeableImage = referenceClone.get();
if (closeableImage instanceof CloseableBitmap) {
bitmap = ((CloseableBitmap) closeableImage).getUnderlyingBitmap();
listener.onNewResultImpl(bitmap, referenceClone);
}
} finally {
imageCloseableReference.close();
}
}
}
代码示例来源:origin: aa112901/remusic
dataSource = imagePipeline.fetchDecodedImage(imageRequest, PlayingActivity.this);
dataSource.subscribe(new BaseBitmapDataSubscriber() {
@Override
public void onNewResultImpl(@Nullable Bitmap bitmap) {
代码示例来源:origin: aa112901/remusic
dataSource = imagePipeline.fetchDecodedImage(imageRequest, this);
dataSource.subscribe(new BaseBitmapDataSubscriber() {
代码示例来源:origin: aa112901/remusic
dataSource = imagePipeline.fetchDecodedImage(imageRequest, RadioDetailActivity.this);
dataSource.subscribe(new BaseBitmapDataSubscriber() {
代码示例来源:origin: chat-sdk/chat-sdk-android
public static Single<Bitmap> bitmapForURL (final Context context, final String url) {
return Single.create((SingleOnSubscribe<Bitmap>) e -> {
if(!StringChecker.isNullOrEmpty(url)) {
Uri uri = Uri.parse(url);
ImageRequest request = ImageRequestBuilder
.newBuilderWithSource(uri)
.build();
ImagePipeline pipeline = Fresco.getImagePipeline();
DataSource dataSource = pipeline.fetchDecodedImage(request, context);
dataSource.subscribe(new BaseBitmapDataSubscriber() {
@Override
protected void onNewResultImpl(Bitmap bitmap) {
// We need to copy the bitmap because in some cases, Fresco is recycling the bitmap
// which causes a crash later on. Seen this problem in Android 5
e.onSuccess(bitmap.copy(bitmap.getConfig(), true));
}
@Override
protected void onFailureImpl(DataSource<CloseableReference<CloseableImage>> dataSource) {
e.onError(new Throwable(context.getString(R.string.unable_to_load_image)));
}
}, CallerThreadExecutor.getInstance());
}
else {
e.onError(new Throwable("Unable to load image"));
}
}).subscribeOn(AndroidSchedulers.mainThread());
}
}
代码示例来源:origin: iielse/ImageWatcher
ImagePipeline imagePipeline = Fresco.getImagePipeline();
DataSource<CloseableReference<CloseableImage>> dataSource = imagePipeline.fetchDecodedImage(imageRequest, this);
dataSource.subscribe(new BaseBitmapDataSubscriber() {
@Override
public void onNewResultImpl(@Nullable final Bitmap bitmap) {
代码示例来源:origin: 6ag/BaoKanAndroid
dataSource.subscribe(subscriber, new Executor() {
@Override
public void execute(@NonNull Runnable command) {
内容来源于网络,如有侵权,请联系作者删除!