CrackMe.apk
Download file
package com.google.android.exoplayer2.upstream;
import com.google.android.exoplayer2.C;
import com.google.android.exoplayer2.ParserException;
import com.google.android.exoplayer2.upstream.HttpDataSource;
import com.google.android.exoplayer2.upstream.LoadErrorHandlingPolicy;
import com.google.android.exoplayer2.upstream.Loader;
import java.io.FileNotFoundException;
import java.io.IOException;
public class DefaultLoadErrorHandlingPolicy implements LoadErrorHandlingPolicy {
private static final int DEFAULT_BEHAVIOR_MIN_LOADABLE_RETRY_COUNT = -1;
public static final long DEFAULT_LOCATION_EXCLUSION_MS = 300000;
public static final int DEFAULT_MIN_LOADABLE_RETRY_COUNT = 3;
public static final int DEFAULT_MIN_LOADABLE_RETRY_COUNT_PROGRESSIVE_LIVE = 6;
@Deprecated
public static final long DEFAULT_TRACK_BLACKLIST_MS = 60000;
public static final long DEFAULT_TRACK_EXCLUSION_MS = 60000;
private final int minimumLoadableRetryCount;
public /* synthetic */ void onLoadTaskConcluded(long j) {
LoadErrorHandlingPolicy.CC.$default$onLoadTaskConcluded(this, j);
}
public DefaultLoadErrorHandlingPolicy() {
this(-1);
}
public DefaultLoadErrorHandlingPolicy(int i) {
this.minimumLoadableRetryCount = i;
}
public LoadErrorHandlingPolicy.FallbackSelection getFallbackSelectionFor(LoadErrorHandlingPolicy.FallbackOptions fallbackOptions, LoadErrorHandlingPolicy.LoadErrorInfo loadErrorInfo) {
if (!isEligibleForFallback(loadErrorInfo.exception)) {
return null;
}
if (fallbackOptions.isFallbackAvailable(1)) {
return new LoadErrorHandlingPolicy.FallbackSelection(1, 300000);
}
if (fallbackOptions.isFallbackAvailable(2)) {
return new LoadErrorHandlingPolicy.FallbackSelection(2, 60000);
}
return null;
}
public long getRetryDelayMsFor(LoadErrorHandlingPolicy.LoadErrorInfo loadErrorInfo) {
IOException iOException = loadErrorInfo.exception;
return ((iOException instanceof ParserException) || (iOException instanceof FileNotFoundException) || (iOException instanceof HttpDataSource.CleartextNotPermittedException) || (iOException instanceof Loader.UnexpectedLoaderException) || DataSourceException.isCausedByPositionOutOfRange(iOException)) ? C.TIME_UNSET : (long) Math.min((loadErrorInfo.errorCount - 1) * 1000, 5000);
}
public int getMinimumLoadableRetryCount(int i) {
int i2 = this.minimumLoadableRetryCount;
if (i2 == -1) {
return i == 7 ? 6 : 3;
}
return i2;
}
/* access modifiers changed from: protected */
public boolean isEligibleForFallback(IOException iOException) {
if (!(iOException instanceof HttpDataSource.InvalidResponseCodeException)) {
return false;
}
HttpDataSource.InvalidResponseCodeException invalidResponseCodeException = (HttpDataSource.InvalidResponseCodeException) iOException;
if (invalidResponseCodeException.responseCode == 403 || invalidResponseCodeException.responseCode == 404 || invalidResponseCodeException.responseCode == 410 || invalidResponseCodeException.responseCode == 416 || invalidResponseCodeException.responseCode == 500 || invalidResponseCodeException.responseCode == 503) {
return true;
}
return false;
}
}
Download file