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

OSCHINA-MIRROR/chinasoft3_ohos-PickiT

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

PickiT

Проект

  • Название проекта: библиотека для получения пути к файлу по его Uri.
  • Серия: адаптация сторонних компонентов для openharmony.
  • Функциональность: получение пути к файлу по его Uri.
  • Состояние переноса проекта: основная функциональность реализована.
  • Различия при вызове: отсутствуют.
  • Версия разработки: SDK6, DevEco Studio2.2 beta1.
  • Базовая версия: Release 0.1.14.

Эффект демонстрации

Демонстрация эффекта представлена в виде картинки (printscreen/PickiT.gif).

Установка

  1. В файле build.gradle в корневом каталоге проекта:
 allprojects {
    repositories {
        maven {
            url 'https://s01.oss.sonatype.org/content/repositories/releases/'
        }
    }
 }
  1. В файле entry модуля build.gradle:
 dependencies {
    implementation('com.gitee.chinasoft_ohos:PickiT:1.0.0')
    ......  
 }

В случае проблем с запуском проекта на SDK6 и DevEco Studio 2.2 beta1 рекомендуется удалить файлы .gradle, .idea, build, gradle, build.gradle и создать новый проект, после чего скопировать соответствующие файлы из нового проекта в корневой каталог.

Использование

Для использования библиотеки необходимо реализовать PickiT callbacks. Для этого:

  1. Создайте класс MainAbilitySlice, который расширяет AbilitySlice и реализует PickiTCallbacks.
  2. Объявите переменную pickiT типа PickiT.
  3. Инициализируйте pickiT в методе onStart().
  4. Выберите файл и передайте его путь в метод getPath() переменной pickiT.
  5. После обработки файла удалите временный файл с помощью метода deleteTemporaryFile(Context). Это можно сделать в методах onBackPressed() и onStop().

Пример кода:

public class MainAbilitySlice extends AbilitySlice implements PickiTCallbacks {
    //Declare PickiT
    PickiT pickiT;

    @Override
    protected void onStart(Intent intent) {
        super.onStart(intent);
        super.setUIContent(ResourceTable.Layout_ability_main);

        //Initialize PickiT
        //context, listener, AbilitySlice
        pickiT = new PickiT(this, this, this);

    }
}

После выбора файла путь к нему передаётся в pickiT следующим образом:

@Override
protected void onAbilityResult(int requestCode, int resultCode, Intent resultData) {
    super.onAbilityResult(requestCode, resultCode, resultData);
    if (requestCode == SELECT_VIDEO_REQUEST) {
        if (resultCode == RESULT_OK && resultData.getUri() != null) {
            pickiT.getPath(resultData.getUri());
            originalText.setText(String.valueOf(resultData.getUri()));
        }
    }
}

Удаление временного файла:

@Override
protected void onBackPressed() {
    pickiT.deleteTemporaryFile(this);
    super.onBackPressed();
}

 @Override
 protected void onStop() {
    super.onStop();
    if (!isChangingConfigurations()) {
        pickiT.deleteTemporaryFile(this);
    }
}

Если не вызывать метод deleteTemporaryFile(), файл будет сохранён в папке и будет перезаписываться при каждом выборе нового файла.

Также необходимо реализовать методы PickiTonUriReturned(), PickiTonStartListener(), PickiTonProgressUpdate(), PickiTonCompleteListener().

Примечание: если у вас возникли проблемы при реализации библиотеки, рекомендуется обратиться к демонстрационному проекту.

Тестирование

Проведено тестирование CodeCheck и CloudTest, вирусная безопасность проверена. Текущая версия demo функционально не отличается от оригинальной версии компонента.

Версии

Текущая версия — 1.0.0, предыдущая версия — 0.0.1-SNAPSHOT.

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

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

Введение

Данная библиотека позволяет получить путь к файлу через Uri файла. Развернуть Свернуть
MIT
Отмена

Обновления (1)

все

Участники

все

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

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