| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -44,11 +44,9 @@ object ImageProvider { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            oldBitmap: Bitmap, | 
					 | 
					 | 
					 | 
					            oldBitmap: Bitmap, | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            newBitmap: Bitmap? | 
					 | 
					 | 
					 | 
					            newBitmap: Bitmap? | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        ) { | 
					 | 
					 | 
					 | 
					        ) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            if (evicted) { | 
					 | 
					 | 
					 | 
					            oldBitmap.recycle() | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                oldBitmap.recycle() | 
					 | 
					 | 
					 | 
					            putDebug("ImageProvider: trigger bitmap recycle. URI: $key") | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                putDebug("ImageProvider: trigger bitmap recycle. URI: $key") | 
					 | 
					 | 
					 | 
					            putDebug("ImageProvider : cacheUsage ${size()}bytes / ${maxSize()}bytes") | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                putDebug("ImageProvider : cacheUsage ${size()}bytes / ${maxSize()}bytes") | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            } | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        } | 
					 | 
					 | 
					 | 
					        } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    } | 
					 | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -90,7 +88,7 @@ object ImageProvider { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        // inJustDecodeBounds如果设置为true,仅仅返回图片实际的宽和高,宽和高是赋值给opts.outWidth,opts.outHeight; | 
					 | 
					 | 
					 | 
					        // inJustDecodeBounds如果设置为true,仅仅返回图片实际的宽和高,宽和高是赋值给opts.outWidth,opts.outHeight; | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        op.inJustDecodeBounds = true | 
					 | 
					 | 
					 | 
					        op.inJustDecodeBounds = true | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        BitmapFactory.decodeFile(file.absolutePath, op) | 
					 | 
					 | 
					 | 
					        BitmapFactory.decodeFile(file.absolutePath, op) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        if (op.outWidth < 1 && op.outHeight < 1) { | 
					 | 
					 | 
					 | 
					        if (op.outWidth <= 0 && op.outHeight <= 0) { | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            return Size(errorBitmap.width, errorBitmap.height) | 
					 | 
					 | 
					 | 
					            return Size(errorBitmap.width, errorBitmap.height) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        } | 
					 | 
					 | 
					 | 
					        } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        return Size(op.outWidth, op.outHeight) | 
					 | 
					 | 
					 | 
					        return Size(op.outWidth, op.outHeight) | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -116,7 +114,10 @@ object ImageProvider { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            bitmap | 
					 | 
					 | 
					 | 
					            bitmap | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        }.onFailure { | 
					 | 
					 | 
					 | 
					        }.onFailure { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            Coroutine.async { | 
					 | 
					 | 
					 | 
					            Coroutine.async { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                putDebug("ImageProvider: decode bitmap failed. path: ${vFile.absolutePath}\n$it", it) | 
					 | 
					 | 
					 | 
					                putDebug( | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                    "ImageProvider: decode bitmap failed. path: ${vFile.absolutePath}\n$it", | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                    it | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                ) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                if (FileUtils.readText(vFile.absolutePath).isXml()) { | 
					 | 
					 | 
					 | 
					                if (FileUtils.readText(vFile.absolutePath).isXml()) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                    putDebug("ImageProvider: delete xml file. path: ${vFile.absolutePath}") | 
					 | 
					 | 
					 | 
					                    putDebug("ImageProvider: delete xml file. path: ${vFile.absolutePath}") | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                    vFile.delete() | 
					 | 
					 | 
					 | 
					                    vFile.delete() | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |