private static File extractPackFile()

in library/src/main/java/com/whatsapp/stringpacks/StringPacks.java [244:266]


  private static File extractPackFile(
      final Context context,
      @NonNull String fileName,
      @NonNull Resources resources,
      @NonNull String resourcePackFileName)
      throws IOException {
    File filesDirectory = context.getFilesDir();
    String extractedPackFileName =
        fileName + UNDERSCORE + getPackageCodePathTimestamp(context) + PACK_FILE_EXTENSION;
    File extractedPackFile = new File(filesDirectory, extractedPackFileName);

    if (!extractedPackFile.exists()) {
      File tempFile = new File(filesDirectory, TEMP_PACK_FILE);
      OutputStream out = new FileOutputStream(tempFile);
      FileUtils.copyStream(resources.getAssets().open(resourcePackFileName), out);
      out.close();
      boolean rename = tempFile.renameTo(extractedPackFile);
      if (!rename) {
        throw new IOException("Renaming temp file failed");
      }
    }
    return extractedPackFile;
  }