1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/HarmonyOS-tpc-ReLinker

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Релинкер

Релинкер включает:

  • надёжный загрузчик нативных библиотек для openharmony OS.
  • Релинкером решаются эти проблемы путём замены стандартного вызова System.loadLibrary более надёжной реализацией.
  • реализация кода уровня JNI с помощью файла cpp.

Инструкция по использованию

  1. В папке sample/ доступен образец проекта, который предоставляет исполняемые примеры кода, демонстрирующие использование классов в этом проекте.

  2. Следующие основные классы являются основным интерфейсом для создания релинкера:

    • Релинкер: просто замените вызов System.loadLibrary следующим образом: System.loadLibrary("mylibrary"); на вызов ReLinker.loadLibrary: ReLinker.loadLibrary(контекст, "mylibrary");
  3. Расширенное использование

    • Асинхронная загрузка: Релинкером можно загружать библиотеки асинхронно. Просто передайте экземпляр LoadListener вызову loadLibrary:

      ReLinker.loadLibrary(контекст, "mylibrary", new ReLinker.LoadListener() { @Override public void success() { /* Ура */ }

        @Override
        public void failure(Throwable t) { /* Увы */ }

      });

  4. Ведение журнала: чтобы облегчить отладку, Релинкером могут быть отправлены сообщения в предоставленный вами экземпляр Logger:

    ReLinker.log(myLogger).loadLibrary(context, "mylibrary");

  5. Управление версиями: в случае изменения кода вашей библиотеки рекомендуется указать конкретную версию. Это позволит Релинкеру успешно обновить файл библиотеки обходного пути. Если система обрабатывает загрузку библиотеки соответствующим образом, указанная версия не используется, так как все файлы библиотек извлекаются и заменяются при обновлении или установке. Чтобы указать версию для вашей библиотеки, просто укажите её в качестве дополнительного параметра для loadLibrary, например:

    ReLinker.loadLibrary(контекст, "mylibrary", "1.0"); Это заставит Релинкера искать и загружать libmylibrary.so.1.0. Последующие обновления версии будут автоматически очищать все другие версии библиотек.

Руководство по установке

  1. Для использования модуля релинкера в образце приложения включите следующую зависимость библиотеки для генерации hap-файла: Добавьте зависимости в entry/build.gradle следующим образом:

    dependencies { implementation project(path ':relinker’) }

  2. Используя har-файл релинкера, убедитесь, что добавили файл relinker.har в папку entry/libs и добавили следующую зависимость в build.gradle. Измените зависимости в файле entry/build.gradle:

dependencies { implementation fileTree(dir: 'libs', include: ['.jar', '.har']) }

  1. Для использования релинкера из удалённого репозитория в отдельном приложении добавьте следующие зависимости и включите «relinker.har» в папку libs модуля «entry»: Измените entry build.gradle следующим образом:

dependencies { implementation fileTree(dir: 'libs', include: ['*.har']) implementation 'io.openharmony.tpc.thirdlib:ReLinker:1.0.1' }

Лицензия

Copyright 2015 - 2016 Keepsafe Software Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/HarmonyOS-tpc-ReLinker.git
git@api.gitlife.ru:oschina-mirror/HarmonyOS-tpc-ReLinker.git
oschina-mirror
HarmonyOS-tpc-ReLinker
HarmonyOS-tpc-ReLinker
master