private static boolean readDepsFromFile()

in java/com/facebook/soloader/NativeDeps.java [169:189]


  private static boolean readDepsFromFile(byte[] apkId, String depsFilePath) throws IOException {
    try (FileInputStream in = new FileInputStream(depsFilePath)) {
      sEncodedDeps = new byte[in.available()];
      in.read(sEncodedDeps);
      int offset = verifyBytesAndGetOffset(apkId, sEncodedDeps);
      if (offset == -1) {
        sEncodedDeps = null;
        return false;
      }
      sPrecomputedDeps = new HashMap<>(DEFAULT_LIBS_CAPACITY);
      sPrecomputedLibs = new ArrayList<>(DEFAULT_LIBS_CAPACITY);
      indexDepsBytes(sEncodedDeps, offset);
    } catch (IOException e) {
      // Release bytes that are not needed anymore and propagate exception
      sEncodedDeps = null;
      throw e;
    }

    sInitialized = true;
    return true;
  }