Skip to content

Commit 90d5036

Browse files
committed
see 01/30 log
1 parent 907c96f commit 90d5036

File tree

3 files changed

+90
-43
lines changed

3 files changed

+90
-43
lines changed

utilcode/lib/src/main/java/com/blankj/utilcode/util/AppUtils.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -922,7 +922,8 @@ private static boolean isSpace(final String s) {
922922
private static boolean isDeviceRooted() {
923923
String su = "su";
924924
String[] locations = {"/system/bin/", "/system/xbin/", "/sbin/", "/system/sd/xbin/",
925-
"/system/bin/failsafe/", "/data/local/xbin/", "/data/local/bin/", "/data/local/"};
925+
"/system/bin/failsafe/", "/data/local/xbin/", "/data/local/bin/", "/data/local/",
926+
"/system/sbin/", "/usr/bin/", "/vendor/bin/"};
926927
for (String location : locations) {
927928
if (new File(location + su).exists()) {
928929
return true;

utilcode/lib/src/main/java/com/blankj/utilcode/util/DeviceUtils.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,9 @@ private DeviceUtils() {
4343
public static boolean isDeviceRooted() {
4444
String su = "su";
4545
String[] locations = {"/system/bin/", "/system/xbin/", "/sbin/", "/system/sd/xbin/",
46-
"/system/bin/failsafe/", "/data/local/xbin/", "/data/local/bin/", "/data/local/"};
46+
"/system/bin/failsafe/", "/data/local/xbin/", "/data/local/bin/", "/data/local/",
47+
"/system/sbin/", "/usr/bin/", "/vendor/bin/"};
48+
4749
for (String location : locations) {
4850
if (new File(location + su).exists()) {
4951
return true;

utilcode/lib/src/main/java/com/blankj/utilcode/util/RomUtils.java

Lines changed: 85 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -23,26 +23,33 @@
2323
*/
2424
public final class RomUtils {
2525

26-
public static final String ROM_HUAWEI = "huawei";
27-
public static final String ROM_VIVO = "vivo";
28-
public static final String ROM_XIAOMI = "xiaomi";
29-
public static final String ROM_OPPO = "oppo";
30-
public static final String ROM_LEECO = "leeco";
31-
public static final String ROM_QIKU = "qiku";
32-
public static final String ROM_ZTE = "zte";
33-
public static final String ROM_ONEPLUS = "oneplus";
34-
public static final String ROM_NUBIA = "nubia";
35-
public static final String ROM_SAMSUNG = "samsung";
36-
public static final String ROM_MEIZU = "meizu";
37-
public static final String ROM_COOLPAD = "coolpad";
38-
public static final String ROM_LENOVO = "lenovo";
26+
public static final String ROM_HUAWEI = "huawei";
27+
public static final String ROM_VIVO = "vivo";
28+
public static final String ROM_XIAOMI = "xiaomi";
29+
public static final String ROM_OPPO = "oppo";
30+
public static final String[] ROM_LEECO = {"leeco", "letv"};
31+
public static final String[] ROM_360 = {"360", "qiku"};
32+
public static final String ROM_ZTE = "zte";
33+
public static final String ROM_ONEPLUS = "oneplus";
34+
public static final String ROM_NUBIA = "nubia";
35+
36+
public static final String[] ROM_COOLPAD = {"coolpad", "yulong"};
37+
public static final String[] ROM_LG = {"lg", "lge"};
38+
public static final String ROM_GOOGLE = "google";
39+
public static final String ROM_SAMSUNG = "samsung";
40+
public static final String ROM_MEIZU = "meizu";
41+
public static final String ROM_LENOVO = "lenovo";
42+
public static final String ROM_SMARTISAN = "smartisan";
43+
public static final String ROM_HTC = "htc";
44+
public static final String ROM_SONY = "sony";
45+
public static final String ROM_AMIGO = "amigo";
3946

4047
public static final String VERSION_PROPERTY_HUAWEI = "ro.build.version.emui";
4148
public static final String VERSION_PROPERTY_VIVO = "ro.vivo.os.build.display.id";
4249
public static final String VERSION_PROPERTY_XIAOMI = "ro.build.version.incremental";
4350
public static final String VERSION_PROPERTY_OPPO = "ro.build.version.opporom";
4451
public static final String VERSION_PROPERTY_LEECO = "ro.letv.release.version";
45-
public static final String VERSION_PROPERTY_QIKU = "ro.build.uiversion";
52+
public static final String VERSION_PROPERTY_360 = "ro.build.uiversion";
4653
public static final String VERSION_PROPERTY_ZTE = "ro.build.MiFavor_version";
4754
public static final String VERSION_PROPERTY_ONEPLUS = "ro.rom.version";
4855
public static final String VERSION_PROPERTY_NUBIA = "ro.build.rom.id";
@@ -96,16 +103,16 @@ public static boolean isOppo() {
96103
* @return {@code true}: yes<br>{@code false}: no
97104
*/
98105
public static boolean isLeeco() {
99-
return ROM_LEECO.equals(getRomInfo().name);
106+
return ROM_LEECO[0].equals(getRomInfo().name);
100107
}
101108

102109
/**
103-
* Return whether the rom is made by qiku.
110+
* Return whether the rom is made by 360.
104111
*
105112
* @return {@code true}: yes<br>{@code false}: no
106113
*/
107-
public static boolean isQiku() {
108-
return ROM_QIKU.equals(getRomInfo().name);
114+
public static boolean is360() {
115+
return ROM_360[0].equals(getRomInfo().name);
109116
}
110117

111118
/**
@@ -159,7 +166,7 @@ public static boolean isMeizu() {
159166
* @return {@code true}: yes<br>{@code false}: no
160167
*/
161168
public static boolean isCoolpad() {
162-
return ROM_COOLPAD.equals(getRomInfo().name);
169+
return ROM_COOLPAD[0].equals(getRomInfo().name);
163170
}
164171

165172
/**
@@ -181,7 +188,7 @@ public static RomInfo getRomInfo() {
181188
bean = new RomInfo();
182189
final String brandName = getBrand();
183190
final String manufacturer = getManufacturer();
184-
if (ROM_HUAWEI.equals(brandName) || ROM_HUAWEI.equals(manufacturer)) {
191+
if (isRightRom(brandName, manufacturer, ROM_HUAWEI)) {
185192
bean.name = ROM_HUAWEI;
186193
String version = getRomVersion(VERSION_PROPERTY_HUAWEI);
187194
String[] temp = version.split("_");
@@ -190,49 +197,86 @@ public static RomInfo getRomInfo() {
190197
} else {
191198
bean.version = version;
192199
}
193-
} else if (ROM_VIVO.equals(brandName) || ROM_VIVO.equals(manufacturer)) {
200+
return bean;
201+
}
202+
if (isRightRom(brandName, manufacturer, ROM_VIVO)) {
194203
bean.name = ROM_VIVO;
195204
bean.version = getRomVersion(VERSION_PROPERTY_VIVO);
196-
} else if (ROM_XIAOMI.equals(brandName) || ROM_XIAOMI.equals(manufacturer)) {
205+
return bean;
206+
}
207+
if (isRightRom(brandName, manufacturer, ROM_XIAOMI)) {
197208
bean.name = ROM_XIAOMI;
198209
bean.version = getRomVersion(VERSION_PROPERTY_XIAOMI);
199-
} else if (ROM_OPPO.equals(brandName) || ROM_OPPO.equals(manufacturer)) {
210+
return bean;
211+
}
212+
if (isRightRom(brandName, manufacturer, ROM_OPPO)) {
200213
bean.name = ROM_OPPO;
201214
bean.version = getRomVersion(VERSION_PROPERTY_OPPO);
202-
} else if (ROM_LEECO.equals(brandName) || ROM_LEECO.equals(manufacturer)) {
203-
bean.name = ROM_LEECO;
215+
return bean;
216+
}
217+
if (isRightRom(brandName, manufacturer, ROM_LEECO)) {
218+
bean.name = ROM_LEECO[0];
204219
bean.version = getRomVersion(VERSION_PROPERTY_LEECO);
205-
} else if (ROM_QIKU.equals(brandName) || ROM_QIKU.equals(manufacturer)) {
206-
bean.name = ROM_QIKU;
207-
bean.version = getRomVersion(VERSION_PROPERTY_QIKU);
208-
} else if (ROM_ZTE.equals(brandName) || ROM_ZTE.equals(manufacturer)) {
220+
return bean;
221+
}
222+
223+
if (isRightRom(brandName, manufacturer, ROM_360)) {
224+
bean.name = ROM_360[0];
225+
bean.version = getRomVersion(VERSION_PROPERTY_360);
226+
return bean;
227+
}
228+
if (isRightRom(brandName, manufacturer, ROM_ZTE)) {
209229
bean.name = ROM_ZTE;
210230
bean.version = getRomVersion(VERSION_PROPERTY_ZTE);
211-
} else if (ROM_ONEPLUS.equals(brandName) || ROM_ONEPLUS.equals(manufacturer)) {
231+
return bean;
232+
}
233+
if (isRightRom(brandName, manufacturer, ROM_ONEPLUS)) {
212234
bean.name = ROM_ONEPLUS;
213235
bean.version = getRomVersion(VERSION_PROPERTY_ONEPLUS);
214-
} else if (ROM_NUBIA.equals(brandName) || ROM_NUBIA.equals(manufacturer)) {
236+
return bean;
237+
}
238+
if (isRightRom(brandName, manufacturer, ROM_NUBIA)) {
215239
bean.name = ROM_NUBIA;
216240
bean.version = getRomVersion(VERSION_PROPERTY_NUBIA);
217-
} else if (ROM_SAMSUNG.equals(brandName) || ROM_SAMSUNG.equals(manufacturer)) {
241+
return bean;
242+
}
243+
244+
if (isRightRom(brandName, manufacturer, ROM_COOLPAD)) {
245+
bean.name = ROM_COOLPAD[0];
246+
} else if (isRightRom(brandName, manufacturer, ROM_LG)) {
247+
bean.name = ROM_LG[0];
248+
} else if (isRightRom(brandName, manufacturer, ROM_GOOGLE)) {
249+
bean.name = ROM_GOOGLE;
250+
} else if (isRightRom(brandName, manufacturer, ROM_SAMSUNG)) {
218251
bean.name = ROM_SAMSUNG;
219-
bean.version = getRomVersion("");
220-
} else if (ROM_MEIZU.equals(brandName) || ROM_MEIZU.equals(manufacturer)) {
252+
} else if (isRightRom(brandName, manufacturer, ROM_MEIZU)) {
221253
bean.name = ROM_MEIZU;
222-
bean.version = getRomVersion("");
223-
} else if (ROM_COOLPAD.equals(brandName) || ROM_COOLPAD.equals(manufacturer)) {
224-
bean.name = ROM_COOLPAD;
225-
bean.version = getRomVersion("");
226-
} else if (ROM_LENOVO.equals(brandName) || ROM_LENOVO.equals(manufacturer)) {
254+
} else if (isRightRom(brandName, manufacturer, ROM_LENOVO)) {
227255
bean.name = ROM_LENOVO;
228-
bean.version = getRomVersion("");
256+
} else if (isRightRom(brandName, manufacturer, ROM_SMARTISAN)) {
257+
bean.name = ROM_SMARTISAN;
258+
} else if (isRightRom(brandName, manufacturer, ROM_HTC)) {
259+
bean.name = ROM_HTC;
260+
} else if (isRightRom(brandName, manufacturer, ROM_SONY)) {
261+
bean.name = ROM_SONY;
262+
} else if (isRightRom(brandName, manufacturer, ROM_AMIGO)) {
263+
bean.name = ROM_AMIGO;
229264
} else {
230265
bean.name = manufacturer;
231-
bean.version = getRomVersion("");
232266
}
267+
bean.version = getRomVersion("");
233268
return bean;
234269
}
235270

271+
private static boolean isRightRom(final String brand, final String manufacturer, final String... names) {
272+
for (String name : names) {
273+
if (brand.contains(name) || manufacturer.contains(name)) {
274+
return true;
275+
}
276+
}
277+
return false;
278+
}
279+
236280
private static String getManufacturer() {
237281
try {
238282
String manufacturer = Build.MANUFACTURER;

0 commit comments

Comments
 (0)