android 高仿拼多多,Android高仿拼多多分类列表
package com.zkteam.discover.fresco;
import android.content.Context;
import android.graphics.Bitmap;
import 链接已屏蔽.Uri;
import 链接已屏蔽mon.SimpleCacheKey;
import 链接已屏蔽mon.executors.CallerThreadExecutor;
import 链接已屏蔽mon.executors.UiThreadImmediateExecutorService;
import 链接已屏蔽mon.memory.PooledByteBuffer;
import 链接已屏蔽mon.references.CloseableReference;
import com.facebook.datasource.BaseDataSubscriber;
import com.facebook.datasource.DataSource;
import com.facebook.datasource.DataSubscriber;
import com.facebook.drawee.backends.pipeline.Fresco;
import com.facebook.imagepipeline.core.ImagePipeline;
import com.facebook.imagepipeline.datasource.BaseBitmapDataSubscriber;
import com.facebook.imagepipeline.image.CloseableImage;
import com.facebook.imagepipeline.request.BasePostprocessor;
import com.facebook.imagepipeline.request.ImageRequest;
import com.facebook.imagepipeline.request.ImageRequestBuilder;
import com.facebook.imagepipeline.request.Postprocessor;
import java.io.InputStream;
import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
public class FrescoHelper {
/**
* 下载图片
*
* @param context
* @param baseBitmapDataSubscriber onNewResultImpl进行对加载完成bitmap操作,下载失败回调onFailureImpl
*/
public void downloadRequest(Context context, String url, BaseBitmapDataSubscriber baseBitmapDataSubscriber) {
// 获取网络图片
ImageRequest imageRequest = ImageRequestBuilder
.newBuilderWithSource(Uri.parse(url))
.setProgressiveRenderingEnabled(true)
.build();
ImagePipeline imagePipeline = Fresco.getImagePipeline();
DataSource> dataSource =
imagePipeline.fetchDecodedImage(imageRequest, context);
dataSource.subscribe(baseBitmapDataSubscriber, CallerThreadExecutor.getInstance());
}
/**
* 下载图片监听未解码的原始数据的回调
*
* @param context
* @param url
* @param baseDataSubscriber
* @return DataSource 被订阅对象 调用close可消息订阅释放资源
*/
public DataSource downloadRequest(Context context, String url, BaseDataSubscriber baseDataSubscriber) {
// 获取网络图片
ImageRequest imageRequest = ImageRequestBuilder
.newBuilderWithSource(Uri.parse(url))
.setProgressiveRenderingEnabled(true)
.build();
ImagePipeline imagePipeline = Fresco.getImagePipeline();
DataSource> dataSource =
imagePipeline.fetchEncodedImage(imageRequest, context);
dataSource.subscribe(baseDataSubscriber, UiThreadImmediateExecutorService.getInstance());
return dataSource;
}
/**
* 高斯模糊处理器
*
* @return
*/
public Postprocessor newBlurPostProcessor(final Context context, final int blurRadius) {
return new BasePostprocessor() {
@Override
public void process(Bitmap destBitmap, Bitmap sourceBitmap) {
// BitmapUtil.blurThisImage(context, sourceBitmap, destBitmap, blurRadius);
}
};
}
public void clearMemoryCache(Uri uri) {
ImagePipeline imagePipeline = Fresco.getImagePipeline();
if (isInMemoryCache(uri))
imagePipeline.evictFromMemoryCache(uri);
}
public void clearDiskCache(Uri uri) {
ImagePipeline imagePipeline = Fresco.getImagePipeline();
if (isInDiskCache(uri.toString()))
imagePipeline.evictFromDiskCache(uri);
}
public static void clearCache(Uri uri) {
ImagePipeline imagePipeline = Fresco.getImagePipeline();
imagePipeline.evictFromCache(uri);
}
public static boolean isInMemoryCache(Uri uri) {
ImagePipeline imagePipeline = Fresco.getImagePipeline();
return imagePipeline.isInBitmapMemoryCache(uri);
}
public static boolean isInDiskCache(String uri) {
return Fresco.getImagePipelineFactory().getMainFileCache().hasKey(new SimpleCacheKey(uri));
}
public static InputStream getDiskCacheFile(String uri) throws Exception {
return Fresco.getImagePipelineFactory().getMainFileCache().getResource(new SimpleCacheKey(uri)).openStream();
}
public static boolean isInCache(Uri uri) {
return isInMemoryCache(uri) || isInDiskCache(uri.toString());
}
public void asyncCheckInDiskCache(Uri uri, BaseDataSubscriber baseDataSubscriber) {
//异步判断是否在磁盘中
DataSource inDiskCacheSource = Fresco.getImagePipeline().isInDiskCache(uri);
DataSubscriber subscriber = baseDataSubscriber;
// DataSubscriber subscriber = new BaseDataSubscriber() {
//
// @Override
// protected void onNewResultImpl(DataSource dataSource) {
// if (!dataSource.isFinished()) {
// return;
// }
// boolean isInCache = dataSource.getResult();
// }
//
// @Override
// protected void onFailureImpl(DataSource dataSource) {
//
// }
// };
inDiskCacheSource.subscribe(subscriber, new ThreadPoolExecutor(3, 127, 3,
TimeUnit.SECONDS, new ArrayBlockingQueue(3),
new ThreadPoolExecutor.DiscardOldestPolicy()));
}
/**
* 清除内存缓存数据
*/
public static void clearMemoryCache() {
try {
ImagePipeline imagePipeline = Fresco.getImagePipeline();
imagePipeline.clearMemoryCaches();
} catch (Throwable t) {
}
}
/**
* 清除磁盘缓存
*/
public static void clearDiskCache() {
ImagePipeline imagePipeline = Fresco.getImagePipeline();
imagePipeline.clearDiskCaches();
}
/**
* 清除内存及磁盘缓存
*/
public static void clearMemoryAndDiskCache() {
ImagePipeline imagePipeline = Fresco.getImagePipeline();
imagePipeline.clearCaches();
}
}
更多源码 | 好库简介 | 网站地图 | 帮助中心 | 版权说明
Copyright© 2009-2012 OKBASE.NET All Rights Reserved 好库网 版权所有
android 高仿拼多多,Android高仿拼多多分类列表相关推荐
- 高仿精仿快播应用android源码下载
今天给大家在网上找到的一款高仿精仿快播应用android源码,分享给大家,希望大家功能喜欢. 说明源码更新中.... 源码即将上传 也可以到这个网站下载:download 转载于:https://ww ...
- android开发常用工具类、高仿客户端、附近厕所、验证码助手、相机图片处理等源码...
Android精选源码 android开发过程经常要用的工具类源码 Android类似QQ空间个人主页下拉头部放大的布局效果 Android高仿煎蛋客户端,Android完整项目 android帮你找 ...
- android开发常用工具类、高仿客户端、附近厕所、验证码助手、相机图片处理等源码
Android精选源码 android开发过程经常要用的工具类源码 Android类似QQ空间个人主页下拉头部放大的布局效果 Android高仿煎蛋客户端,Android完整项目 android帮你找 ...
- android 今日头条加载动画,高仿今日头条加载动画
01 每每浏览手机app时,发现有的效果体验不错,作为一位程序员,总想要是自己来做,怎么实现. 今天我们来模仿今日头条的加载动画. 首先我们来看一下我们这个demo最终效果,有图有真相. 高仿今日头条 ...
- 高仿喜马拉雅听Android客户端,Zhumulangma
### 注意:请将lib_common下manifest中喜马拉雅key替换为自己的,不然会提示访问超过限制. https://github.com/TanZhiL/Zhumulangma 本项目仅 ...
- 高仿陌陌android+gradle 客户端 源代码含IM即时通信UI
高仿陌陌android客户端包含 动态.留言本.相册.IM即时聊天等功能, 相关技术: 使用rxperssion 进行权限的动态申请. 使用butterknife将xml元素绑定带对象 源码开源,地址 ...
- 高仿知乎Android客户端欢迎引导动画
这段时间断断续续的抽时间模仿了下知乎Andorid的引导页面,觉得知乎做的更活泼一些吧.对动画,对NineOld实践也就到此告一段落了,再往深挖无非就是一些插值估值等基础的数学知识了.(在这里我要吐槽 ...
- 高仿优酷Android客户端图片左右滑动(自动切换)
本例是用ViewPager去做的实现,支持自动滑动和手动滑动,不仅优酷网,实际上有很多商城和门户网站都有类似的实现: 具体思路: 1. 工程中需要添加android-support-v4.jar,才能 ...
- android高仿微信拍摄,Android 仿微信视频拍摄 支持触摸拍摄 长按拍摄
JCamera This is Android CameraActivity,Imitation WeChat Camera Android 仿微信视频拍摄 支持触摸拍摄 长按拍摄,采用camera2 ...
- android获取通知栏消息源代码,Android高仿UC浏览器和360手机卫士消息常驻栏(通知栏)(示例代码)...
之前网上看了下自己定义消息栏,通知栏,了解到了Notification这个控件.发现UC浏览器等都是这样的类型,今天写个demo实现下.如图: 当中每一个button都有不同的功能.代码例如以下: p ...
最新文章
- 三天学会Selenium,阿里p7精心整理自动化测试Selenium大礼包
- 四大微博OAuth认证
- 2008软考网络工程师题
- CF464E The Classic Problem(主席树+哈希+最短路)
- 一种table超出高度自动出滚动条的解决方案
- 十六个字 一辈子学不完
- 使用Skrollr创建视差滚动效果页面
- 【Flink】flink-connector-elasticsearch5与flink-connector-elasticsearch6 有什么区别
- 查询出两个表中不同的数据
- 以太坊PoA共识引擎算法介绍(3)
- C++ STL unordered_map按照value排序
- Introduction to Computer Networking学习笔记(二十一):TCP拥塞控制-基础、公平分配带宽准则
- Mac系统下替换百度云的倍速播放器-Quicktime player 的使用方法
- 5V升压8.4V,锂电池充电管理芯片
- 100个精彩的开源游戏
- Keystone认证服务详细操作流程
- JSR303和拦截器
- 怎么拍照识别植物的名称呢?教大家一个识别小妙招
- python数学编程 pdf,Python数学编程
- 计算机,我该学什么?