jimu-decompiled/sources/com/squareup/leakcanary/CanaryLog.java
2025-05-13 19:24:51 +02:00

61 lines
1.6 KiB
Java

package com.squareup.leakcanary;
import android.util.Log;
/* loaded from: classes.dex */
public final class CanaryLog {
private static volatile Logger logger = new DefaultLogger();
public interface Logger {
void d(String str, Object... objArr);
void d(Throwable th, String str, Object... objArr);
}
private CanaryLog() {
throw new AssertionError();
}
public static void d(String str, Object... objArr) {
Logger logger2 = logger;
if (logger2 == null) {
return;
}
logger2.d(str, objArr);
}
public static void setLogger(Logger logger2) {
logger = logger2;
}
public static void d(Throwable th, String str, Object... objArr) {
Logger logger2 = logger;
if (logger2 == null) {
return;
}
logger2.d(th, str, objArr);
}
private static class DefaultLogger implements Logger {
DefaultLogger() {
}
@Override // com.squareup.leakcanary.CanaryLog.Logger
public void d(String str, Object... objArr) {
String format = String.format(str, objArr);
if (format.length() < 4000) {
Log.d("LeakCanary", format);
return;
}
for (String str2 : format.split("\n", -1)) {
Log.d("LeakCanary", str2);
}
}
@Override // com.squareup.leakcanary.CanaryLog.Logger
public void d(Throwable th, String str, Object... objArr) {
d(String.format(str, objArr) + '\n' + Log.getStackTraceString(th), new Object[0]);
}
}
}