SYMBOL INDEX (245 symbols across 31 files) FILE: blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/AbstractSampler.java class AbstractSampler (line 23) | abstract class AbstractSampler { method run (line 31) | @Override method AbstractSampler (line 42) | public AbstractSampler(long sampleInterval) { method start (line 49) | public void start() { method stop (line 60) | public void stop() { method doSample (line 68) | abstract void doSample(); FILE: blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/BlockCanaryContext.java class BlockCanaryContext (line 29) | public class BlockCanaryContext implements BlockInterceptor { method BlockCanaryContext (line 34) | public BlockCanaryContext() { method init (line 37) | static void init(Context context, BlockCanaryContext blockCanaryContex... method get (line 42) | public static BlockCanaryContext get() { method provideContext (line 53) | public Context provideContext() { method provideQualifier (line 62) | public String provideQualifier() { method provideUid (line 71) | public String provideUid() { method provideNetworkType (line 80) | public String provideNetworkType() { method provideMonitorDuration (line 90) | public int provideMonitorDuration() { method provideBlockThreshold (line 100) | public int provideBlockThreshold() { method provideDumpInterval (line 114) | public int provideDumpInterval() { method providePath (line 123) | public String providePath() { method displayNotification (line 132) | public boolean displayNotification() { method zip (line 143) | public boolean zip(File[] src, File dest) { method upload (line 152) | public void upload(File zippedFile) { method concernPackages (line 162) | public List concernPackages() { method filterNonConcernStack (line 171) | public boolean filterNonConcernStack() { method provideWhiteList (line 180) | public List provideWhiteList() { method deleteFilesInWhiteList (line 191) | public boolean deleteFilesInWhiteList() { method onBlock (line 198) | @Override method stopWhenDebugging (line 208) | public boolean stopWhenDebugging() { FILE: blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/BlockCanaryInternals.java class BlockCanaryInternals (line 29) | public final class BlockCanaryInternals { method BlockCanaryInternals (line 40) | public BlockCanaryInternals() { method getInstance (line 82) | static BlockCanaryInternals getInstance() { method setContext (line 98) | public static void setContext(BlockCanaryContext context) { method getContext (line 102) | public static BlockCanaryContext getContext() { method addBlockInterceptor (line 106) | void addBlockInterceptor(BlockInterceptor blockInterceptor) { method setMonitor (line 110) | private void setMonitor(LooperMonitor looperPrinter) { method getSampleDelay (line 114) | long getSampleDelay() { method getPath (line 118) | static String getPath() { method detectedBlockDirectory (line 130) | static File detectedBlockDirectory() { method getLogFiles (line 138) | public static File[] getLogFiles() { class BlockLogFileFilter (line 146) | private static class BlockLogFileFilter implements FilenameFilter { method BlockLogFileFilter (line 150) | BlockLogFileFilter() { method accept (line 154) | @Override FILE: blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/BlockInterceptor.java type BlockInterceptor (line 22) | interface BlockInterceptor { method onBlock (line 23) | void onBlock(Context context, BlockInfo blockInfo); FILE: blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/CpuSampler.java class CpuSampler (line 32) | class CpuSampler extends AbstractSampler { method CpuSampler (line 52) | public CpuSampler(long sampleInterval) { method start (line 57) | @Override method getCpuRateInfo (line 68) | public String getCpuRateInfo() { method isCpuBusy (line 82) | public boolean isCpuBusy(long start, long end) { method doSample (line 102) | @Override method reset (line 142) | private void reset() { method parse (line 151) | private void parse(String cpuRate, String pidCpuRate) { FILE: blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/HandlerThreadFactory.java class HandlerThreadFactory (line 21) | final class HandlerThreadFactory { method HandlerThreadFactory (line 26) | private HandlerThreadFactory() { method getTimerThreadHandler (line 30) | public static Handler getTimerThreadHandler() { method getWriteLogThreadHandler (line 34) | public static Handler getWriteLogThreadHandler() { class HandlerThreadWrapper (line 38) | private static class HandlerThreadWrapper { method HandlerThreadWrapper (line 41) | public HandlerThreadWrapper(String threadName) { method getHandler (line 47) | public Handler getHandler() { FILE: blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/LogWriter.java class LogWriter (line 32) | public class LogWriter { method LogWriter (line 43) | private LogWriter() { method save (line 53) | public static String save(String str) { method cleanObsolete (line 64) | public static void cleanObsolete() { method deleteAll (line 83) | public static void deleteAll() { method save (line 98) | private static String save(String logFileName, String str) { method generateTempZip (line 140) | public static File generateTempZip(String filename) { FILE: blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/LooperMonitor.java class LooperMonitor (line 22) | class LooperMonitor implements Printer { type BlockListener (line 33) | public interface BlockListener { method onBlockEvent (line 34) | void onBlockEvent(long realStartTime, method LooperMonitor (line 40) | public LooperMonitor(BlockListener blockListener, long blockThresholdM... method println (line 49) | @Override method isBlock (line 69) | private boolean isBlock(long endTime) { method notifyBlockEvent (line 73) | private void notifyBlockEvent(final long endTime) { method startDump (line 85) | private void startDump() { method stopDump (line 95) | private void stopDump() { FILE: blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/StackSampler.java class StackSampler (line 26) | class StackSampler extends AbstractSampler { method StackSampler (line 34) | public StackSampler(Thread thread, long sampleIntervalMillis) { method StackSampler (line 38) | public StackSampler(Thread thread, int maxEntryCount, long sampleInter... method getThreadStackEntries (line 44) | public ArrayList getThreadStackEntries(long startTime, long en... method doSample (line 59) | @Override FILE: blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/internal/BlockInfo.java class BlockInfo (line 34) | public class BlockInfo { method BlockInfo (line 121) | public BlockInfo() { method newInstance (line 124) | public static BlockInfo newInstance() { method setCpuBusyFlag (line 151) | public BlockInfo setCpuBusyFlag(boolean busy) { method setRecentCpuRate (line 156) | public BlockInfo setRecentCpuRate(String info) { method setThreadStackEntries (line 161) | public BlockInfo setThreadStackEntries(ArrayList threadStackEn... method setMainThreadTimeCost (line 166) | public BlockInfo setMainThreadTimeCost(long realTimeStart, long realTi... method flushString (line 174) | public BlockInfo flushString() { method getBasicString (line 208) | public String getBasicString() { method getCpuString (line 212) | public String getCpuString() { method getTimeString (line 216) | public String getTimeString() { method toString (line 220) | public String toString() { FILE: blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/internal/PerformanceUtils.java class PerformanceUtils (line 31) | class PerformanceUtils { method PerformanceUtils (line 37) | private PerformanceUtils() { method getNumCores (line 46) | public static int getNumCores() { method getFreeMemory (line 70) | public static long getFreeMemory() { method getTotalMemory (line 77) | public static long getTotalMemory() { FILE: blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/internal/ProcessUtils.java class ProcessUtils (line 25) | public class ProcessUtils { method ProcessUtils (line 30) | private ProcessUtils() { method myProcessName (line 34) | public static String myProcessName() { method obtainProcessName (line 47) | private static String obtainProcessName(Context context) { FILE: blockcanary-android-no-op/src/main/java/com/github/moduth/blockcanary/BlockCanary.java class BlockCanary (line 24) | public final class BlockCanary { method BlockCanary (line 29) | private BlockCanary() { method install (line 32) | public static BlockCanary install(Context context, BlockCanaryContext ... method get (line 37) | public static BlockCanary get() { method start (line 48) | public void start() { method stop (line 52) | public void stop() { method upload (line 56) | public void upload() { method recordStartTime (line 60) | public void recordStartTime() { method isMonitorDurationEnd (line 64) | public boolean isMonitorDurationEnd() { FILE: blockcanary-android-no-op/src/main/java/com/github/moduth/blockcanary/BlockCanaryContext.java class BlockCanaryContext (line 28) | public class BlockCanaryContext { method BlockCanaryContext (line 33) | public BlockCanaryContext() { method init (line 36) | static void init(Context c, BlockCanaryContext g) { method get (line 41) | public static BlockCanaryContext get() { method provideContext (line 49) | public Context provideContext() { method provideQualifier (line 53) | public String provideQualifier() { method provideUid (line 57) | public String provideUid() { method provideNetworkType (line 61) | public String provideNetworkType() { method provideMonitorDuration (line 65) | public int provideMonitorDuration() { method provideBlockThreshold (line 69) | public int provideBlockThreshold() { method provideDumpInterval (line 73) | public int provideDumpInterval() { method providePath (line 77) | public String providePath() { method displayNotification (line 81) | public boolean displayNotification() { method zip (line 85) | public boolean zip(File[] src, File dest) { method upload (line 89) | public void upload(File zippedFile) { method concernPackages (line 93) | public List concernPackages() { method filterNonConcernStack (line 97) | public boolean filterNonConcernStack() { method provideWhiteList (line 101) | public List provideWhiteList() { method deleteFilesInWhiteList (line 105) | public boolean deleteFilesInWhiteList() { method onBlock (line 109) | public void onBlock(Context context, BlockInfo blockInfo) { method stopWhenDebugging (line 113) | public boolean stopWhenDebugging() { FILE: blockcanary-android-no-op/src/main/java/com/github/moduth/blockcanary/internal/BlockInfo.java class BlockInfo (line 3) | public class BlockInfo { FILE: blockcanary-android/src/main/java/com/github/moduth/blockcanary/BlockCanary.java class BlockCanary (line 33) | public final class BlockCanary { method BlockCanary (line 41) | private BlockCanary() { method install (line 59) | public static BlockCanary install(Context context, BlockCanaryContext ... method get (line 70) | public static BlockCanary get() { method start (line 84) | public void start() { method stop (line 94) | public void stop() { method upload (line 106) | public void upload() { method recordStartTime (line 114) | public void recordStartTime() { method isMonitorDurationEnd (line 126) | public boolean isMonitorDurationEnd() { method setEnabledBlocking (line 137) | private static void setEnabledBlocking(Context appContext, method executeOnFileIoThread (line 148) | private static void executeOnFileIoThread(Runnable runnable) { method newSingleThreadExecutor (line 152) | private static Executor newSingleThreadExecutor(String threadName) { method setEnabled (line 156) | private static void setEnabled(Context context, FILE: blockcanary-android/src/main/java/com/github/moduth/blockcanary/DisplayService.java class DisplayService (line 37) | final class DisplayService implements BlockInterceptor { method onBlock (line 41) | @Override method show (line 52) | @TargetApi(HONEYCOMB) FILE: blockcanary-android/src/main/java/com/github/moduth/blockcanary/SingleThreadFactory.java class SingleThreadFactory (line 23) | final class SingleThreadFactory implements ThreadFactory { method SingleThreadFactory (line 27) | SingleThreadFactory(String threadName) { method newThread (line 31) | @Override FILE: blockcanary-android/src/main/java/com/github/moduth/blockcanary/Uploader.java class Uploader (line 26) | final class Uploader { method Uploader (line 32) | private Uploader() { method zip (line 36) | private static File zip() { method zipAndUpload (line 49) | public static void zipAndUpload() { FILE: blockcanary-android/src/main/java/com/github/moduth/blockcanary/ui/BlockCanaryUi.java class BlockCanaryUi (line 23) | final class BlockCanaryUi { method BlockCanaryUi (line 30) | private BlockCanaryUi() { method dpToPixel (line 47) | static float dpToPixel(float dp, Resources resources) { FILE: blockcanary-android/src/main/java/com/github/moduth/blockcanary/ui/BlockCanaryUtils.java class BlockCanaryUtils (line 12) | final class BlockCanaryUtils { method concernStackString (line 31) | public static String concernStackString(BlockInfo blockInfo) { method isBlockInfoValid (line 48) | public static boolean isBlockInfoValid(BlockInfo blockInfo) { method isInWhiteList (line 54) | public static boolean isInWhiteList(BlockInfo info) { method getConcernPackages (line 70) | public static List getConcernPackages() { method concernStackString (line 74) | private static String concernStackString(String line) { method classSimpleName (line 83) | private static String classSimpleName(String stackLine) { FILE: blockcanary-android/src/main/java/com/github/moduth/blockcanary/ui/BlockInfoCorruptException.java class BlockInfoCorruptException (line 9) | public class BlockInfoCorruptException extends Exception { method BlockInfoCorruptException (line 11) | public BlockInfoCorruptException(BlockInfoEx blockInfo) { method BlockInfoCorruptException (line 16) | public BlockInfoCorruptException(String detailMessage) { FILE: blockcanary-android/src/main/java/com/github/moduth/blockcanary/ui/BlockInfoEx.java class BlockInfoEx (line 12) | final class BlockInfoEx extends BlockInfo { method newInstance (line 25) | public static BlockInfoEx newInstance(File file) { FILE: blockcanary-android/src/main/java/com/github/moduth/blockcanary/ui/DetailAdapter.java class DetailAdapter (line 31) | final class DetailAdapter extends BaseAdapter { method getView (line 45) | @Override method connectorViewType (line 80) | private DisplayConnectorView.Type connectorViewType(int position) { method elementToHtmlString (line 86) | private String elementToHtmlString(String element, int position, boole... method update (line 129) | public void update(BlockInfo blockInfo) { method toggleRow (line 140) | public void toggleRow(int position) { method getCount (line 145) | @Override method getItem (line 153) | @Override method getViewTypeCount (line 171) | @Override method getItemViewType (line 176) | @Override method getItemId (line 184) | @Override method findById (line 189) | @SuppressWarnings("unchecked") FILE: blockcanary-android/src/main/java/com/github/moduth/blockcanary/ui/DisplayActivity.java class DisplayActivity (line 67) | public class DisplayActivity extends Activity { method createPendingIntent (line 82) | public static PendingIntent createPendingIntent(Context context, Strin... method onCreate (line 89) | @Override method onRetainNonConfigurationInstance (line 114) | @Override method onSaveInstanceState (line 119) | @Override method onResume (line 125) | @Override method setTheme (line 131) | @Override method onDestroy (line 142) | @Override method onCreateOptionsMenu (line 148) | @Override method onOptionsItemSelected (line 173) | @Override method onBackPressed (line 182) | @Override method shareBlock (line 192) | private void shareBlock(BlockInfoEx blockInfo) { method shareHeapDump (line 200) | private void shareHeapDump(BlockInfoEx blockInfo) { method updateUi (line 212) | private void updateUi() { method renderBlockList (line 229) | private void renderBlockList() { method renderBlockDetail (line 276) | private void renderBlockDetail(final BlockInfoEx blockInfo) { method getBlock (line 315) | private BlockInfoEx getBlock(String startTime) { class BlockListAdapter (line 327) | class BlockListAdapter extends BaseAdapter { method getCount (line 329) | @Override method getItem (line 334) | @Override method getItemId (line 339) | @Override method getView (line 344) | @Override class LoadBlocks (line 372) | static class LoadBlocks implements Runnable { method LoadBlocks (line 379) | LoadBlocks(DisplayActivity activity) { method load (line 384) | static void load(DisplayActivity activity) { method forgetActivity (line 390) | static void forgetActivity() { method run (line 397) | @Override FILE: blockcanary-android/src/main/java/com/github/moduth/blockcanary/ui/DisplayConnectorView.java class DisplayConnectorView (line 28) | public final class DisplayConnectorView extends View { type Type (line 43) | public enum Type { method DisplayConnectorView (line 50) | public DisplayConnectorView(Context context, AttributeSet attrs) { method onDraw (line 56) | @SuppressWarnings("SuspiciousNameCombination") method setType (line 106) | public void setType(Type type) { FILE: blockcanary-android/src/main/java/com/github/moduth/blockcanary/ui/MoreDetailsView.java class MoreDetailsView (line 24) | public final class MoreDetailsView extends View { method MoreDetailsView (line 29) | public MoreDetailsView(Context context, AttributeSet attrs) { method onDraw (line 36) | @Override protected void onDraw(Canvas canvas) { method setFolding (line 48) | public void setFolding(boolean folding) { FILE: blockcanary-sample/src/main/java/com/example/blockcanary/AppContext.java class AppContext (line 26) | public class AppContext extends BlockCanaryContext { method provideQualifier (line 29) | @Override method provideUid (line 42) | @Override method provideNetworkType (line 47) | @Override method provideMonitorDuration (line 52) | @Override method provideBlockThreshold (line 57) | @Override method displayNotification (line 62) | @Override method concernPackages (line 67) | @Override method provideWhiteList (line 74) | @Override method stopWhenDebugging (line 81) | @Override FILE: blockcanary-sample/src/main/java/com/example/blockcanary/DemoActivity.java class DemoActivity (line 26) | public class DemoActivity extends AppCompatActivity { method onCreate (line 28) | @Override method showTipDialog (line 46) | private void showTipDialog() { method onCreateOptionsMenu (line 54) | @Override method onOptionsItemSelected (line 61) | @Override FILE: blockcanary-sample/src/main/java/com/example/blockcanary/DemoApplication.java class DemoApplication (line 23) | public class DemoApplication extends Application { method onCreate (line 27) | @Override method getAppContext (line 34) | public static Context getAppContext() { FILE: blockcanary-sample/src/main/java/com/example/blockcanary/DemoFragment.java class DemoFragment (line 30) | public class DemoFragment extends Fragment implements View.OnClickListen... method newInstance (line 34) | public static DemoFragment newInstance() { method onCreate (line 38) | @Override method onCreateView (line 43) | @Nullable method onViewCreated (line 49) | @Override method onDestroyView (line 61) | @Override method onActivityCreated (line 66) | @Override method onClick (line 71) | @Override method compute (line 96) | private static double compute() { method readFile (line 105) | private static void readFile() {