Skip to content

Commit a3fa31f

Browse files
committed
未检测到SOTER服务时,Step1显示“跳过”,SOTER检测不再因此变红
1 parent 750e959 commit a3fa31f

File tree

1 file changed

+16
-2
lines changed

1 file changed

+16
-2
lines changed

app/src/main/java/io/github/xiaotong6666/keydetector/checker/SoterSdkSequenceChecker.java

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@ public static Result probe(Context context, LogSink logSink) {
2121
boolean nativeSupport = false;
2222
int coreType = 0;
2323
boolean trebleConnected = false;
24+
boolean servicePresenceKnown = false;
25+
boolean servicePresent = false;
2426
boolean askOk = false;
2527
boolean askModelPresent = false;
2628
boolean askGeneratedByProbe = false;
@@ -44,6 +46,8 @@ public static Result probe(Context context, LogSink logSink) {
4446
nativeSupport = SoterCore.isNativeSupportSoter();
4547
coreType = SoterCore.getSoterCoreType();
4648
trebleConnected = SoterCore.isTrebleServiceConnected();
49+
servicePresenceKnown = true;
50+
servicePresent = nativeSupport;
4751
appendLog(
4852
logSink,
4953
"Native support="
@@ -52,8 +56,9 @@ public static Result probe(Context context, LogSink logSink) {
5256
+ coreType
5357
+ ", trebleConnected="
5458
+ trebleConnected);
59+
String initStatus = !nativeSupport ? "跳过" : (trebleConnected ? "通过" : "已发现");
5560
ui.append("\n1. 初始化与服务:")
56-
.append(nativeSupport ? "通过" : "失败")
61+
.append(initStatus)
5762
.append(" (coreType=")
5863
.append(coreType)
5964
.append(", trebleConnected=")
@@ -213,7 +218,16 @@ public static Result probe(Context context, LogSink logSink) {
213218
.append(")");
214219

215220
boolean initServiceOk = nativeSupport && trebleConnected;
216-
boolean overallOk = initServiceOk && keyPrepareOk && signSessionOk;
221+
// Missing SOTER service is treated as not-applicable for UI coloring.
222+
// Only mark the SOTER block as failed when the service is present but follow-up key/sign steps fail.
223+
boolean overallOk;
224+
if (servicePresenceKnown && !servicePresent) {
225+
overallOk = true;
226+
} else if (servicePresenceKnown) {
227+
overallOk = keyPrepareOk && signSessionOk;
228+
} else {
229+
overallOk = false;
230+
}
217231
return new Result(initServiceOk, keyPrepareOk, signSessionOk, overallOk, ui.toString());
218232
}
219233

0 commit comments

Comments
 (0)