19
19
import android .annotation .TargetApi ;
20
20
import android .app .ListFragment ;
21
21
import android .app .admin .DevicePolicyManager ;
22
+ import android .app .admin .SecurityLog ;
22
23
import android .app .admin .SecurityLog .SecurityEvent ;
23
24
import android .content .ComponentName ;
24
25
import android .content .Context ;
@@ -130,7 +131,7 @@ private void processEvents(List<SecurityEvent> logs) {
130
131
if (Util .SDK_INT >= VERSION_CODES .P ) {
131
132
sb .append (event .getId () + ": " );
132
133
}
133
- sb .append (Util . getStringEventTagFromId (event .getTag ()));
134
+ sb .append (getStringEventTagFromId (event .getTag ()));
134
135
sb .append (" (" )
135
136
.append (formatter .format (new Date (TimeUnit .NANOSECONDS .toMillis (event .getTimeNanos ()))))
136
137
.append ("): " );
@@ -142,6 +143,114 @@ private void processEvents(List<SecurityEvent> logs) {
142
143
}
143
144
}
144
145
146
+ public static String getStringEventTagFromId (int eventId ) {
147
+ final String eventTag ;
148
+ switch (eventId ) {
149
+ case SecurityLog .TAG_ADB_SHELL_INTERACTIVE :
150
+ eventTag = "ADB_SHELL_INTERACTIVE" ;
151
+ break ;
152
+ case SecurityLog .TAG_ADB_SHELL_CMD :
153
+ eventTag = "ADB_SHELL_CMD" ;
154
+ break ;
155
+ case SecurityLog .TAG_SYNC_RECV_FILE :
156
+ eventTag = "SYNC_RECV_FILE" ;
157
+ break ;
158
+ case SecurityLog .TAG_SYNC_SEND_FILE :
159
+ eventTag = "SYNC_SEND_FILE" ;
160
+ break ;
161
+ case SecurityLog .TAG_APP_PROCESS_START :
162
+ eventTag = "APP_PROCESS_START" ;
163
+ break ;
164
+ case SecurityLog .TAG_KEYGUARD_DISMISSED :
165
+ eventTag = "KEYGUARD_DISMISSED" ;
166
+ break ;
167
+ case SecurityLog .TAG_KEYGUARD_DISMISS_AUTH_ATTEMPT :
168
+ eventTag = "KEYGUARD_DISMISS_AUTH_ATTEMPT" ;
169
+ break ;
170
+ case SecurityLog .TAG_KEYGUARD_SECURED :
171
+ eventTag = "KEYGUARD_SECURED" ;
172
+ break ;
173
+ case SecurityLog .TAG_OS_STARTUP :
174
+ eventTag = "OS_STARTUP" ;
175
+ break ;
176
+ case SecurityLog .TAG_OS_SHUTDOWN :
177
+ eventTag = "OS_SHUTDOWN" ;
178
+ break ;
179
+ case SecurityLog .TAG_LOGGING_STARTED :
180
+ eventTag = "LOGGING_STARTED" ;
181
+ break ;
182
+ case SecurityLog .TAG_LOGGING_STOPPED :
183
+ eventTag = "LOGGING_STOPPED" ;
184
+ break ;
185
+ case SecurityLog .TAG_MEDIA_MOUNT :
186
+ eventTag = "MEDIA_MOUNT" ;
187
+ break ;
188
+ case SecurityLog .TAG_MEDIA_UNMOUNT :
189
+ eventTag = "MEDIA_UNMOUNT" ;
190
+ break ;
191
+ case SecurityLog .TAG_LOG_BUFFER_SIZE_CRITICAL :
192
+ eventTag = "LOG_BUFFER_SIZE_CRITICAL" ;
193
+ break ;
194
+ case SecurityLog .TAG_PASSWORD_EXPIRATION_SET :
195
+ eventTag = "PASSWORD_EXPIRATION_SET" ;
196
+ break ;
197
+ case SecurityLog .TAG_PASSWORD_COMPLEXITY_SET :
198
+ eventTag = "PASSWORD_COMPLEXITY_SET" ;
199
+ break ;
200
+ case SecurityLog .TAG_PASSWORD_HISTORY_LENGTH_SET :
201
+ eventTag = "PASSWORD_HISTORY_LENGTH_SET" ;
202
+ break ;
203
+ case SecurityLog .TAG_MAX_SCREEN_LOCK_TIMEOUT_SET :
204
+ eventTag = "MAX_SCREEN_LOCK_TIMEOUT_SET" ;
205
+ break ;
206
+ case SecurityLog .TAG_MAX_PASSWORD_ATTEMPTS_SET :
207
+ eventTag = "MAX_PASSWORD_ATTEMPTS_SET" ;
208
+ break ;
209
+ case SecurityLog .TAG_KEYGUARD_DISABLED_FEATURES_SET :
210
+ eventTag = "KEYGUARD_DISABLED_FEATURES_SET" ;
211
+ break ;
212
+ case SecurityLog .TAG_REMOTE_LOCK :
213
+ eventTag = "REMOTE_LOCK" ;
214
+ break ;
215
+ case SecurityLog .TAG_WIPE_FAILURE :
216
+ eventTag = "WIPE_FAILURE" ;
217
+ break ;
218
+ case SecurityLog .TAG_KEY_GENERATED :
219
+ eventTag = "KEY_GENERATED" ;
220
+ break ;
221
+ case SecurityLog .TAG_KEY_IMPORT :
222
+ eventTag = "KEY_IMPORT" ;
223
+ break ;
224
+ case SecurityLog .TAG_KEY_DESTRUCTION :
225
+ eventTag = "KEY_DESTRUCTION" ;
226
+ break ;
227
+ case SecurityLog .TAG_USER_RESTRICTION_ADDED :
228
+ eventTag = "USER_RESTRICTION_ADDED" ;
229
+ break ;
230
+ case SecurityLog .TAG_USER_RESTRICTION_REMOVED :
231
+ eventTag = "USER_RESTRICTION_REMOVED" ;
232
+ break ;
233
+ case SecurityLog .TAG_CERT_AUTHORITY_INSTALLED :
234
+ eventTag = "CERT_AUTHORITY_INSTALLED" ;
235
+ break ;
236
+ case SecurityLog .TAG_CERT_AUTHORITY_REMOVED :
237
+ eventTag = "CERT_AUTHORITY_REMOVED" ;
238
+ break ;
239
+ case SecurityLog .TAG_CRYPTO_SELF_TEST_COMPLETED :
240
+ eventTag = "CRYPTO_SELF_TEST_COMPLETED" ;
241
+ break ;
242
+ case SecurityLog .TAG_KEY_INTEGRITY_VIOLATION :
243
+ eventTag = "KEY_INTEGRITY_VIOLATION" ;
244
+ break ;
245
+ case SecurityLog .TAG_CERT_VALIDATION_FAILURE :
246
+ eventTag = "CERT_VALIDATION_FAILURE" ;
247
+ break ;
248
+ default :
249
+ eventTag = "UNKNOWN(" + eventId + ")" ;
250
+ }
251
+ return eventTag ;
252
+ }
253
+
145
254
public static void printData (StringBuilder sb , Object data ) {
146
255
if (data instanceof Integer
147
256
|| data instanceof Long
0 commit comments