@NonNull private static RequestManagerRetriever getRetriever(@Nullable Context context) { // Context could be null for other reasons (ie the user passes in null), but in practice it will // only occur due to errors with the Fragment lifecycle. Preconditions.checkNotNull( context, "You cannot start a load on a not yet attached View or a Fragment where getActivity() " + "returns null (which usually occurs when getActivity() is called before the Fragment " + "is attached or after the Fragment is destroyed)."); return Glide.get(context).getRequestManagerRetriever(); }
private void registerFragmentWithRoot(@NonNull FragmentActivity activity) { unregisterFragmentWithRoot(); rootRequestManagerFragment = Glide.get(activity).getRequestManagerRetriever().getSupportRequestManagerFragment(activity); if (!equals(rootRequestManagerFragment)) { rootRequestManagerFragment.addChildRequestManagerFragment(this); } }
@SuppressWarnings("deprecation") private void registerFragmentWithRoot(@NonNull Activity activity) { unregisterFragmentWithRoot(); rootRequestManagerFragment = Glide.get(activity).getRequestManagerRetriever().getRequestManagerFragment(activity); if (!equals(rootRequestManagerFragment)) { rootRequestManagerFragment.addChildRequestManagerFragment(this); } }
@Override public void clear(final Context ctx, CommonImageConfigImpl config) { Preconditions.checkNotNull(ctx, "Context is required"); Preconditions.checkNotNull(config, "ImageConfigImpl is required"); if (config.getImageViews() != null && config.getImageViews().length > 0) {//取消在执行的任务并且释放资源 for (ImageView imageView : config.getImageViews()) { GlideArms.get(ctx).getRequestManagerRetriever().get(ctx).clear(imageView); } } if (config.isClearDiskCache()) {//清除本地缓存 Observable.just(0) .observeOn(Schedulers.io()) .subscribe(new Consumer<Integer>() { @Override public void accept(@NonNull Integer integer) throws Exception { Glide.get(ctx).clearDiskCache(); } }); } if (config.isClearMemory()) {//清除内存缓存 Observable.just(0) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Consumer<Integer>() { @Override public void accept(@NonNull Integer integer) throws Exception { Glide.get(ctx).clearMemory(); } }); } }
private static RequestManagerRetriever getRetriever(@Nullable Context context) { // Context could be null for other reasons (ie the user passes in null), but in practice it will // only occur due to errors with the Fragment lifecycle. Preconditions.checkNotNull( context, "You cannot start a load on a not yet attached View or a Fragment where getActivity() " + "returns null (which usually occurs when getActivity() is called before the Fragment " + "is attached or after the Fragment is destroyed)."); return Glide.get(context).getRequestManagerRetriever(); }
private void registerFragmentWithRoot(FragmentActivity activity) { unregisterFragmentWithRoot(); rootRequestManagerFragment = Glide.get(activity).getRequestManagerRetriever() .getSupportRequestManagerFragment(activity.getSupportFragmentManager(), null); if (rootRequestManagerFragment != this) { rootRequestManagerFragment.addChildRequestManagerFragment(this); } }
@Override public void clear(final Context ctx, CommonImageConfigImpl config) { Preconditions.checkNotNull(ctx, "Context is required"); Preconditions.checkNotNull(config, "ImageConfigImpl is required"); if (config.getImageViews() != null && config.getImageViews().length > 0) {//取消在执行的任务并且释放资源 for (ImageView imageView : config.getImageViews()) { GlideArms.get(ctx).getRequestManagerRetriever().get(ctx).clear(imageView); } } if (config.isClearDiskCache()) {//清除本地缓存 Observable.just(0) .observeOn(Schedulers.io()) .subscribe(new Consumer<Integer>() { @Override public void accept(@NonNull Integer integer) throws Exception { Glide.get(ctx).clearDiskCache(); } }); } if (config.isClearMemory()) {//清除内存缓存 Observable.just(0) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Consumer<Integer>() { @Override public void accept(@NonNull Integer integer) throws Exception { Glide.get(ctx).clearMemory(); } }); } }
private void registerFragmentWithRoot(Activity activity) { unregisterFragmentWithRoot(); rootRequestManagerFragment = Glide.get(activity).getRequestManagerRetriever() .getRequestManagerFragment(activity.getFragmentManager(), null); if (rootRequestManagerFragment != this) { rootRequestManagerFragment.addChildRequestManagerFragment(this); } }