当前位置: 首页>>代码示例>>Java>>正文


Java DefaultCacheKeyFactory类代码示例

本文整理汇总了Java中com.facebook.imagepipeline.cache.DefaultCacheKeyFactory的典型用法代码示例。如果您正苦于以下问题:Java DefaultCacheKeyFactory类的具体用法?Java DefaultCacheKeyFactory怎么用?Java DefaultCacheKeyFactory使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


DefaultCacheKeyFactory类属于com.facebook.imagepipeline.cache包,在下文中一共展示了DefaultCacheKeyFactory类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getFileFromDiskCache

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
/**
 * @param url 指定的url
 * @return 获取制定url的图片,需要保存为xx.jpg格式。
 */
public File getFileFromDiskCache(String url) {
    File localFile = null;
    if (!TextUtils.isEmpty(url)) {
        CacheKey cacheKey = DefaultCacheKeyFactory.getInstance().getEncodedCacheKey(ImageRequest.fromUri(url), null);
        BinaryResource resource;
        if (ImagePipelineFactory.getInstance().getMainFileCache().hasKeySync(cacheKey)) {
            resource = ImagePipelineFactory.getInstance().getMainFileCache().getResource(cacheKey);
            localFile = ((FileBinaryResource) resource).getFile();
        } else if (ImagePipelineFactory.getInstance().getSmallImageFileCache().hasKey(cacheKey)) {
            resource = ImagePipelineFactory.getInstance().getSmallImageFileCache().getResource(cacheKey);
            localFile = ((FileBinaryResource) resource).getFile();
        }
    }
    return localFile;
}
 
开发者ID:zhonglikui,项目名称:cardinalsSample,代码行数:20,代码来源:FrescoManager.java

示例2: doInBackground

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
@Override
    protected File doInBackground(Void... params) {
        final String url = shot.getTeaserUrl();
        try {
            ImageRequest imageRequest = ImageRequest.fromUri(url);
            CacheKey cacheKey = DefaultCacheKeyFactory.getInstance().getEncodedCacheKey(imageRequest);
//            ImagePipeline imagePipeline = Fresco.getImagePipeline();
//            imagePipeline.prefetchToDiskCache(imageRequest,activity);
            BinaryResource resource = ImagePipelineFactory.getInstance().getMainDiskStorageCache().getResource(cacheKey);
            File file = ((FileBinaryResource) resource).getFile();

            String fileName = url;
            fileName = fileName.substring(fileName.lastIndexOf('/') + 1);
            File renamed = new File(file.getParent(), fileName);
            if (!renamed.exists()) {
                FileUtil.copy(file, renamed);
            }
            return renamed;
        } catch (Exception ex) {
            Log.w("SHARE", "Sharing " + url + " failed", ex);
            return null;
        }
    }
 
开发者ID:goodev,项目名称:materialup,代码行数:24,代码来源:ShareDribbbleImageTask.java

示例3: viewImageMedia

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
@Override
public void viewImageMedia(int position, boolean loaded) {
    if(loaded){
        PostItem item = getItem(position);
        CacheKey cacheKey = DefaultCacheKeyFactory.getInstance()
                .getEncodedCacheKey(ImageRequest
                        .fromUri(Uri.parse(item.getUrl())));
        if(cacheKey != null){
            BinaryResource resource = ImagePipelineFactory.getInstance().getMainDiskStorageCache().getResource(cacheKey);

            File localFile;
            if(resource != null){
                localFile = ((FileBinaryResource) resource).getFile();

                Bundle bundle = new Bundle();

                bundle.putString(getResources().getString(R.string.local_cache_key), localFile.getPath());

                bundle.putString(getResources().getString(R.string.main_data_key), gson.toJson(item));

                ((SlidingUpPanelActivity)context).setPanelView(Fragments.IMAGE_PREVIEW, bundle);
            }
        }
    }
}
 
开发者ID:Redgram,项目名称:redgram-for-reddit,代码行数:26,代码来源:LinksContainerView.java

示例4: displayCachedImageFromBackgroundThread

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
private void displayCachedImageFromBackgroundThread(ImageRequest request){
    CacheKey cacheKey = DefaultCacheKeyFactory.getInstance().getEncodedCacheKey(ImageRequest.fromUri(request.getSourceUri()));

    if(cacheKey != null){
        BinaryResource resource = ImagePipelineFactory.getInstance().getMainDiskStorageCache().getResource(cacheKey);
        if(resource != null){
            File localFile = ((FileBinaryResource) resource).getFile();
            if(localFile != null){
                Handler handler = new Handler(Looper.getMainLooper());
                handler.post(new Runnable() {
                    @Override
                    public void run() {
                        imagePreview.setImage(ImageSource.uri(localFile.getPath()));
                    }
                });
            }
        }

    }
}
 
开发者ID:Redgram,项目名称:redgram-for-reddit,代码行数:21,代码来源:ImagePreviewFragment.java

示例5: getImageBytesFromLocal

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
private InputStream getImageBytesFromLocal(Uri loadUri) {
    if (loadUri == null) {
        return null;
    }
    CacheKey cacheKey = DefaultCacheKeyFactory.getInstance()
            .getEncodedCacheKey(ImageRequest.fromUri(loadUri), null);
    try {
        if (ImagePipelineFactory.getInstance().getMainFileCache().hasKey(cacheKey)) {
            return ImagePipelineFactory.getInstance()
                    .getMainFileCache()
                    .getResource(cacheKey)
                    .openStream();
        }
        if (ImagePipelineFactory.getInstance().getSmallImageFileCache().hasKey(cacheKey)) {
            return ImagePipelineFactory.getInstance()
                    .getSmallImageFileCache()
                    .getResource(cacheKey)
                    .openStream();
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    return null;
}
 
开发者ID:gzsll,项目名称:TLint,代码行数:25,代码来源:ImagePreviewPresenter.java

示例6: insertImageToCache

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
/**
 * 将图片插入缓存
 *
 * @param key         保存文件的可以
 * @param inputStream 图片转化成的InputStream
 * @return 是否插入成功
 */
public static boolean insertImageToCache(String key, InputStream inputStream) {
    try {
        CacheKey cacheKey = DefaultCacheKeyFactory.getInstance().getEncodedCacheKey(ImageRequest.fromUri(key), null);
        ImagePipelineFactory.getInstance().getMainFileCache().insert(cacheKey, WriterCallbacks.from(inputStream));
    } catch (IOException e) {
        e.printStackTrace();
        return false;
    } finally {
        CloseUtil.close(inputStream);
    }
    return true;

}
 
开发者ID:zhonglikui,项目名称:cardinalsSample,代码行数:21,代码来源:FrescoManager.java

示例7: isCached

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
/**
 *this method is return very fast, you can use it in UI thread.
 * @param url
 * @return 该url对应的图片是否已经缓存到本地
 */
public static boolean isCached(String url) {

    // return Fresco.getImagePipeline().isInDiskCache(Uri.parse(url));

    ImageRequest imageRequest = ImageRequest.fromUri(url);
    CacheKey cacheKey = DefaultCacheKeyFactory.getInstance()
            .getEncodedCacheKey(imageRequest);
    return ImagePipelineFactory.getInstance()
            .getMainFileCache().hasKey(cacheKey);
}
 
开发者ID:glassLake,项目名称:fastDev,代码行数:16,代码来源:FrescoUtils.java

示例8: isCached

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
/**
 *this method is return very fast, you can use it in UI thread.
 * @param url
 * @return 该url对应的图片是否已经缓存到本地
 */
public static boolean isCached(String url) {
    url = append(url);
  // return Fresco.getImagePipeline().isInDiskCache(Uri.parse(url));

    ImageRequest imageRequest = ImageRequest.fromUri(url);
    CacheKey cacheKey = DefaultCacheKeyFactory.getInstance()
            .getEncodedCacheKey(imageRequest,null);
    return ImagePipelineFactory.getInstance()
            .getMainFileCache().hasKey(cacheKey);
}
 
开发者ID:hss01248,项目名称:MyImageUtil,代码行数:16,代码来源:FrescoUtil.java

示例9: save

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
private void save() {
        try {
            ImageRequest imageRequest = ImageRequest.fromUri(mUrl);
            CacheKey cacheKey = DefaultCacheKeyFactory.getInstance().getEncodedCacheKey(imageRequest);
            BinaryResource resource = ImagePipelineFactory.getInstance().getMainDiskStorageCache().getResource(cacheKey);
            File file = ((FileBinaryResource) resource).getFile();

            String fileName = mUrl;
            fileName = fileName.substring(fileName.lastIndexOf('/') + 1);
            if (mTitle != null) {
                fileName = mTitle + fileName;
            }
            File pic = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
            File dir = new File(pic, "material/");
            if (!dir.exists()) {
                dir.mkdirs();
            }
            File renamed = new File(dir, fileName);
            if (!renamed.exists()) {
                renamed.createNewFile();
                FileUtil.copy(file, renamed);
            }
            UI.showToast(this, getString(R.string.image_saved_to, renamed.getAbsolutePath()));
//            Snackbar.make(mDraweeView,R.string.image_is_saved, Snackbar.LENGTH_LONG);
        } catch (Exception ex) {
            Log.w("SHARE", "Sharing " + mUrl + " failed", ex);
        }
    }
 
开发者ID:goodev,项目名称:materialup,代码行数:29,代码来源:PhotoActivity.java

示例10: getCacheFile

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
private File getCacheFile(final ImageRequest request) {
    FileCache mainFileCache = ImagePipelineFactory
            .getInstance()
            .getMainFileCache();
    final CacheKey cacheKey = DefaultCacheKeyFactory
            .getInstance()
            .getEncodedCacheKey(request, false); // we don't need context, but avoid null
    File cacheFile = request.getSourceFile();
    // http://crashes.to/s/ee10638fb31
    if (mainFileCache.hasKey(cacheKey) && mainFileCache.getResource(cacheKey) != null) {
        cacheFile = ((FileBinaryResource) mainFileCache.getResource(cacheKey)).getFile();
    }
    return cacheFile;
}
 
开发者ID:Piasy,项目名称:BigImageViewer,代码行数:15,代码来源:FrescoImageLoader.java

示例11: isCached

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
/**
 *this method is return very fast, you can use it in UI thread.
 * @param url
 * @return 该url对应的图片是否已经缓存到本地
 */
public static boolean isCached(String url) {

  // return Fresco.getImagePipeline().isInDiskCache(Uri.parse(url));

    ImageRequest imageRequest = ImageRequest.fromUri(url);
    CacheKey cacheKey = DefaultCacheKeyFactory.getInstance()
            .getEncodedCacheKey(imageRequest);
    return ImagePipelineFactory.getInstance()
            .getMainFileCache().hasKey(cacheKey);
}
 
开发者ID:glassLake,项目名称:FrescoUtlis,代码行数:16,代码来源:FrescoUtils.java

示例12: isDownloaded

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
private boolean isDownloaded(Uri loadUri) {

        if (loadUri == null) {
            return false;
        }
        ImageRequest imageRequest = ImageRequest.fromUri(loadUri);
        CacheKey cacheKey = DefaultCacheKeyFactory.getInstance()
                .getEncodedCacheKey(imageRequest);
        return ImagePipelineFactory.getInstance()
                .getMainDiskStorageCache().hasKey(cacheKey);
    }
 
开发者ID:cowthan,项目名称:AyoSunny,代码行数:12,代码来源:ImageLoaderUseFresco.java

示例13: isCached

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
/**
 * 图片是否已经存在了
 */
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();
}
 
开发者ID:CarGuo,项目名称:FrescoUtils,代码行数:17,代码来源:FrescoHelper.java

示例14: getCache

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
/**
 * 本地缓存文件
 */
public static File getCache(Context context, Uri uri) {
    if (!isCached(context, uri))
        return null;
    ImageRequest imageRequest = ImageRequest.fromUri(uri);
    CacheKey cacheKey = DefaultCacheKeyFactory.getInstance()
            .getEncodedCacheKey(imageRequest, context);
    BinaryResource resource = ImagePipelineFactory.getInstance()
            .getMainFileCache().getResource(cacheKey);
    File file = ((FileBinaryResource) resource).getFile();
    return file;
}
 
开发者ID:CarGuo,项目名称:FrescoUtils,代码行数:15,代码来源:FrescoHelper.java

示例15: getCacheFile

import com.facebook.imagepipeline.cache.DefaultCacheKeyFactory; //导入依赖的package包/类
private File getCacheFile(final ImageRequest request) {
    FileCache mainFileCache = ImagePipelineFactory
            .getInstance()
            .getMainFileCache();
    final CacheKey cacheKey = DefaultCacheKeyFactory
            .getInstance()
            .getEncodedCacheKey(request, false); // we don't need context, but avoid null
    File cacheFile = request.getSourceFile();
    if (mainFileCache.hasKey(cacheKey)) {
        cacheFile = ((FileBinaryResource) mainFileCache.getResource(cacheKey)).getFile();
    }
    return cacheFile;
}
 
开发者ID:love-311,项目名称:BigImageViewer-master,代码行数:14,代码来源:FrescoImageLoader.java


注:本文中的com.facebook.imagepipeline.cache.DefaultCacheKeyFactory类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。