-
Notifications
You must be signed in to change notification settings - Fork 344
0x03j ImageCanary_zh
hui.zhao edited this page Dec 7, 2019
·
2 revisions
使用如下配置进行安装
GodEye.instance().install(GodEyeConfig.defaultConfigBuilder().withImageCanaryConfig(new GodEyeConfig.ImageCanaryConfig(DefaultImageCanaryConfigProvider.class.getName())).build());
或者
<imageCanary imageCanaryConfigProvider="cn.hikyson.godeye.core.internal.modules.imagecanary.DefaultImageCanaryConfigProvider"/>
imageCanaryConfigProvider
为实现了ImageCanaryConfigProvider
接口的类的全路径,默认使用DefaultImageCanaryConfigProvider
public interface ImageCanaryConfigProvider {
// 规则:Bitmap和ImageView相比是否太大,用于检测过大的Bitmap设置在较小的ImageView上
boolean isBitmapQualityTooHigh(int bitmapWidth, int bitmapHeight, int imageViewWidth, int imageViewHeight);
// 规则:Bitmap和ImageView相比是否太小
boolean isBitmapQualityTooLow(int bitmapWidth, int bitmapHeight, int imageViewWidth, int imageViewHeight);
}
使用如下方式监听模块输出的数据:
try {
GodEye.instance().observeModule(GodEye.ModuleName.IMAGE_CANARY, new Consumer<ImageIssue>() {
@Override
public void accept(ImageIssue imageIssue) throws Exception {
}
});
} catch (UninstallException e) {
e.printStackTrace();
}
会在每次视图更新或布局变化之后进行检测,如果有之前没有报出过的图片问题就会回调,imageIssue中记录了有问题的图片和视图信息