Class Infrastructure

    • Constructor Detail

      • Infrastructure

        public Infrastructure​(android.content.Context ctx)
        Конструктор. Вычисляет путь к вызывающему приложению, путь к нативным библиотекам CSP и их разрядность.
        Parameters:
        ctx - Контекст приложения.
    • Method Detail

      • getApplicationPath

        public java.lang.String getApplicationPath()
        Получение папки приложения.
        Returns:
        абсолютный путь.
      • getCspLibPath

        public java.lang.String getCspLibPath()
        Получение папки нативных библиотек CSP.
        Returns:
        абсолютный путь.
      • getCodeZipFile

        public java.util.zip.ZipFile getCodeZipFile()
                                             throws java.io.IOException
        Получение пути к архиву с dex-файлами.
        Returns:
        dex-файлы.
        Throws:
        java.io.IOException
      • isArm

        public boolean isArm()
        Проверка платформы, в которой выполняется запуск.
        Returns:
        true, если arm.
      • isIsCspLib64

        public boolean isIsCspLib64()
        Определение разрядности библиотек CSP.
        Returns:
        true, если 64-бит. (arm64 или x86_x64).
      • create

        public boolean create()
        Создание иерархии папок CSP.
        Returns:
        True, если все папки созданы.
      • getCproCspDirectory

        public java.lang.String getCproCspDirectory()
        Получение абсолютного пути к папке CSPDirectoryConstants.DIRECTORY_CPROCSP.
        Returns:
        полный путь к папке.
      • getEtcDirectory

        public java.lang.String getEtcDirectory()
        Получение абсолютного пути к папке CSPDirectoryConstants.SUBDIRECTORY_ETC.
        Returns:
        полный путь к папке.
      • getUsersDirectory

        public java.lang.String getUsersDirectory()
        Получение абсолютного пути к папке CSPDirectoryConstants.SUBDIRECTORY_USERS.
        Returns:
        полный путь к папке.
      • getKeysDirectory

        public java.lang.String getKeysDirectory()
        Получение абсолютного пути к папке CSPDirectoryConstants.SUBDIRECTORY_KEYS.
        Returns:
        полный путь к папке.
      • getTmpDirectory

        public java.lang.String getTmpDirectory()
        Получение абсолютного пути к папке CSPDirectoryConstants.SUBDIRECTORY_TMP.
        Returns:
        полный путь к папке.
      • getLicenseFile

        public java.lang.String getLicenseFile()
        Получение абсолютного пути к фйлу лицензии с именем файла.
        Returns:
        полный путь к файлу.
      • getConfigFile

        public java.lang.String getConfigFile()
        Получение абсолютного пути к файлу конфигурации с именем файла.
        Returns:
        полный путь к файлу.
      • exists

        public static boolean exists​(java.io.File path,
                                     java.lang.String fileName)
        Проверка, существует ли файл в папке.
        Parameters:
        path - Путь к папке.
        fileName - Имя файла.
        Returns:
        True, если файл существует.
      • createSubDirectory

        public static boolean createSubDirectory​(java.io.File baseDir,
                                                 java.lang.String subDir)
        Создание подпапки.
        Parameters:
        baseDir - Родительский каталог.
        subDir - Создаваемая подпапка.
        Returns:
        True, если подпапка создана успешно.
      • denyPermissions

        public boolean denyPermissions()
        Смена прав на файл лицензии. Задаются права с кодом 700. Дополнительно отменяется право чтения файла лицензии.
        Returns:
        True, если команда выполнена успешно.
      • copyContainerFromDirectory

        public boolean copyContainerFromDirectory​(androidx.documentfile.provider.DocumentFile containerDirectory,
                                                  android.content.ContentResolver contentResolver,
                                                  java.lang.StringBuilder dstPath)
        Копирование ключевых контейнеров из папки в папку для ключей приложения.
        Parameters:
        containerDirectory - Папка контейнера.
        Returns:
        true, если скопирован хотя бы один контейнер и без ошибок.
      • getKeysDirectoryPath

        public java.lang.String getKeysDirectoryPath()
      • copyContainerFromArchive

        public void copyContainerFromArchive​(int archiveResourceId)
        Копирование контейнеров, в формате [name].000, из архива в папку keys приложения.
        Parameters:
        archiveResourceId - Идентификатор ресурса архива с контейнерами.