遇到的场景:
DevCheck在设备信息显示这块关于CPU核心数的显示,他不是用的TextView显示的,所以不能像以往一样在setText或者append中进行作假修改,根据UI Automator Viewer抓取的布局看,显示CPU核心数是用的View显示的,那么就要在绘制的时候截获显示内容并进行修改,方能实现CPU核心数作假目的。
布局快照:

因此作如下修改
修改前显示内容:

修改内容如下:
cpp
diff --git a/sys/frameworks/base/graphics/java/android/graphics/BaseRecordingCanvas.java b/sys/frameworks/base/graphics/java/android/graphics/BaseRecordingCanvas.java
index 0ce5d73bff3..241a92699e0 100644
--- a/sys/frameworks/base/graphics/java/android/graphics/BaseRecordingCanvas.java
+++ b/sys/frameworks/base/graphics/java/android/graphics/BaseRecordingCanvas.java
@@ -462,6 +462,15 @@ public class BaseRecordingCanvas extends Canvas {
if ((start | end | (end - start) | (text.length() - end)) < 0) {
throw new IndexOutOfBoundsException();
}
+ //flar2.devcheck v6.28 谷歌商店版
+ //解决DevCheck中CPU核心数还是为'4 核心数'或者'4 cores'问题 add by lyw
+ if (text != null) {
+ if ("4 核心数".equals(text.toString())) {
+ text = "8 核心数";
+ } else if ("4 cores".equals(text.toString())) {
+ text = "8 cores";
+ }
+ }
/**
* Unisoc: PNP data collection
* AR.695.004988.016609.049292
修改后显示内容:
