1 package leakcanary 2 3 import android.annotation.SuppressLint 4 import leakcanary.HeapAnalysisInterceptor.Chain 5 import leakcanary.HeapAnalysisJob.Result 6 import java.util.concurrent.TimeUnit 7 8 @SuppressLint("NewApi") 9 class MinimumElapsedSinceStartInterceptor( 10 private val minimumElapsedSinceStartMillis: Long = TimeUnit.SECONDS.toMillis(30), 11 private val processInfo: ProcessInfo = ProcessInfo.Real 12 ) : HeapAnalysisInterceptor { 13 interceptnull14 override fun intercept(chain: Chain): Result { 15 if (processInfo.elapsedMillisSinceStart < minimumElapsedSinceStartMillis) { 16 chain.job.cancel("app started less than $minimumElapsedSinceStartMillis ms ago.") 17 } 18 return chain.proceed() 19 } 20 }