Android进行字符串替换

编程入门 行业动态 更新时间:2024-10-06 18:33:36

Android进行<a href=https://www.elefans.com/category/jswz/34/1771434.html style=字符串替换"/>

Android进行字符串替换

做项目中经常遇到客户要求ddr,flash,摄像头像素等信息作假,还要求在Antutu,Aida64,CPU-Z,DevCheck等检测app中显示正确,但是我们毕竟能做的有限,所以很多情况下只能通过TextView.java进行字符串替换达到作假的效果,在这里将修改记录一下,以防后面忘记或者丢失,具体修改如下:(提一句:antutu这个app调用的api是append,跟其他检测app不一样)

diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java
old mode 100644
new mode 100755
index 450bb1e77ec8..cbda951841cc
--- a/core/java/android/widget/TextView.java
+++ b/core/java/android/widget/TextView.java
@@ -6114,6 +6114,14 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener((Editable) mText).append(text, start, end);+               String pkg2 = mContext.getPackageName();
+        if(pkg2.equals("com.antutu.ABenchMark")) {
+                  Log.d("hzw","mText = " + mText.toString());
+           if(mText.toString().contains("10.09") || mText.toString().contains("10.08")) {
+              mText = ((Editable)mText).replace(0,5,"10.1");
+           }
+        }
+if (mAutoLinkMask != 0) {boolean linksWereAdded = Linkify.addLinks(mSpannable, mAutoLinkMask);// Do not change the movement method for text that support text selection as it
@@ -6404,6 +6412,44 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener@android.view.RemotableViewMethodpublic final void setText(CharSequence text) {setText(text, mBufferType);
+
+               String pkg = mContext.getPackageName();
+        String str = String.valueOf(text);  
+        //Log.d("wzh","str = " + str);
+        if(pkg.equals("com.finalwire.aida64") || pkg.equals("com.cpuid.cpu_z") || pkg.equals("mark.fakedevicetest")){                    
+            if(str.contains("4+") || str.contains("10.08") || str.contains("10.09") || str.contains("2924 MB") || str.contains("3 GB")){
+                str = str.replace("4+","5.0").replace("10.08","10.1").replace("10.09","10.1").replace("2924 MB","3924 MB").replace("3 GB","4 GB");
+                setText(str,mBufferType);
+            }else {
+                setText(text,mBufferType);
+            }             
+                      
+        }else if(pkg.equals("com.android.settings")){
+                               if(str.contains("3.0 GB")) {
+                                       str = str.replace("3.0 GB","4.0 GB");
+                                       setText(str,mBufferType);
+                               }else{
+                                       setText(text,mBufferType);
+                               }
+               }else if(pkg.equals("flar2.devcheck")) {
+                               if(str.contains("1.9 MP")) {
+                                       str = str.replace("1.9 MP","5 MP");
+                                       setText(str,mBufferType);
+                               }else if(str.contains("5 MP")){
+                                       str = str.replace("5 MP","8 MP");
+                                       setText(str,mBufferType);
+                               }else if(str.contains("10.08")){
+                                       str = str.replace("10.08","10.1");
+                                       setText(str,mBufferType);
+                               }else if(str.contains("10.09")){
+                                       str = str.replace("10.09","10.1");
+                                       setText(str,mBufferType);
+                               }else{
+                                       setText(text,mBufferType);
+                               }
+               }else{
+             setText(text,mBufferType);
+        }}/**

更多推荐

Android进行字符串替换

本文发布于:2023-12-03 10:49:32,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1654525.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:字符串   Android

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!