code: public static List<String> getDexFilePaths(Context context) {
          ApplicationInfo appInfo = context.getApplicationInfo();
          File sourceApk = new File(appInfo.sourceDir);
  
          List<String> sourcePaths = new ArrayList<>();
          sourcePaths.add(appInfo.sourceDir);
  
          if (!isVMMultidexCapable()) {
              String extractedFilePrefix = sourceApk.getName() + EXTRACTED_NAME_EXT;
              int totalDexNumber = getMultiDexPreferences(context).getInt(KEY_DEX_NUMBER, 1);
              File dexDir = new File(appInfo.dataDir, CODE_CACHE_SECONDARY_DIRECTORY);
  
              for (int secondaryNumber = 2; secondaryNumber <= totalDexNumber; secondaryNumber++) {
                  String fileName = extractedFilePrefix + secondaryNumber + EXTRACTED_SUFFIX;
                  File extractedFile = new File(dexDir, fileName);
                  if (extractedFile.isFile()) {
                      sourcePaths.add(extractedFile.getAbsolutePath());
                  }
              }
          }
  
          if (AndServer.isDebug()) {
              sourcePaths.addAll(loadInstantRunDexFile(appInfo));
          }
          return sourcePaths;
      }
docs: Obtain all the dex path.
  
  @see com.android.support.MultiDex#loadExistingExtractions(Context, String)
  @see com.android.support.MultiDex#clearOldDexDir(Context)