From d5e9bacab41e9ac478bda92eb8d4b02395c9ccee Mon Sep 17 00:00:00 2001 From: renhaoting <370797079@qq.com> Date: Sat, 10 Jan 2026 16:08:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ama/core/architecture/util/AndroidUtil.kt | 35 ++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/core/architecture/src/main/java/com/ama/core/architecture/util/AndroidUtil.kt b/core/architecture/src/main/java/com/ama/core/architecture/util/AndroidUtil.kt index d615bae..773e72a 100644 --- a/core/architecture/src/main/java/com/ama/core/architecture/util/AndroidUtil.kt +++ b/core/architecture/src/main/java/com/ama/core/architecture/util/AndroidUtil.kt @@ -15,6 +15,7 @@ import android.view.Gravity import android.view.PixelCopy import android.view.View import android.view.Window +import android.webkit.WebView import android.widget.Toast import androidx.core.app.NotificationManagerCompat import androidx.core.graphics.createBitmap @@ -152,7 +153,7 @@ class AndroidUtil private constructor() { } - fun captureView(window: Window, targetView: View, callback: (Bitmap?) -> Unit) { + fun getThumbOfView1(window: Window, targetView: View, callback: (Bitmap?) -> Unit) { val location = IntArray(2) targetView.getLocationInWindow(location) val (x, y) = location @@ -185,6 +186,38 @@ class AndroidUtil private constructor() { return bitmap } + fun getThumbOfView3(targetView: View): Bitmap { + val bitmap = Bitmap.createBitmap( + targetView.width, + targetView.height, + Bitmap.Config.ARGB_8888 + ) + val canvas = Canvas(bitmap) + targetView.draw(canvas) + return bitmap + } + + + fun getThumbOfView4(webView : WebView): Bitmap? { + val picture = webView.capturePicture(); + val width = picture.getWidth(); + val height = picture.getHeight(); + + if (width <= 0 || height <= 0) { + return null + } + + try { + val bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888) + val canvas = Canvas(bitmap) + picture.draw(canvas) + return bitmap + } catch (e: Exception) { + e.printStackTrace() + } + return null + } + inline fun json2Object(jsonString: String): T? {