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

OSCHINA-MIRROR/xuexiangjys-XQRCode

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

XQRCode

[![api][apisvg]][api] I Star

Очень удобный и практичный инструмент для сканирования, анализа и генерации QR-кодов.

О себе

Публичный аккаунт Juejin Zhihu CSDN Jianshu Segmentfault Bilibili Toutiao
Моё путешествие в мир открытого исходного кода Android Ссылка Ссылка Ссылка Ссылка Ссылка Ссылка Ссылка

Особенности

  • Поддержка быстрой интеграции функций сканирования штрих-кодов и QR-кодов.
  • Возможность настройки интерфейса сканирования.
  • Поддержка многократного сканирования QR-кодов.
  • Генерация QR-кодов с иконками.
  • Создание сложных QR-кодов с фоновыми изображениями.
  • Функция анализа QR-кодов.

1. Демонстрация (пожалуйста, поддержите звёздочкой)

xqrcode.gif

Скачать демоверсию

downloads

xqrcode_download.png

2. Как использовать

В настоящее время поддерживается использование основного инструмента разработки Android Studio. Просто настройте build.gradle и добавьте зависимость.

2.1. Метод импорта в Android Studio, добавление Gradle зависимости

  1. Сначала добавьте в файл build.gradle в корне проекта:
allprojects {
     repositories {
        ...
        maven { url "https://jitpack.io" }
    }
}
  1. Затем добавьте в файл build.gradle приложения:
dependencies {
  ...
   // Если это проект androidx, используйте версию 1.1.0 или выше
  implementation 'com.github.xuexiangjys:XQRCode:1.1.0'
   // Для проектов support используйте версию 1.0.6
  implementation 'com.github.xuexiangjys:XQRCode:1.0.6'
}

2.2. Сканирование QR-кода

Сканирование по умолчанию

  1. Используйте XQRCode.startScan, чтобы вызвать сканирование по умолчанию.
XQRCode.startScan(this, REQUEST_CODE);
  1. Результаты сканирования возвращаются через Intent:
  • XQRCode.RESULT_TYPE: тип результата сканирования, XQRCode.RESULT_SUCCESS означает успешное сканирование, а XQRCode.RESULT_FAILED — неудачное.
  • XQRCode.RESULT_DATA: данные отсканированного QR-кода.
  1. Настройка темы пользовательского интерфейса по умолчанию для сканирования:
<!-- Пользовательская тема интерфейса сканирования по умолчанию -->
<style name="XQRCodeTheme.Custom">
    <item name="ViewfinderViewStyle">@style/ViewfinderView.Custom</item>
</style>

<style name="ViewfinderView.Custom">
    <item name="inner_corner_color">#123456</item>
    <item name="inner_corner_length">50dp</item>
    <item name="inner_corner_width">5dp</item>
    <item name="inner_scan_speed">20dp</item>
    <item name="inner_scan_isCircle">false</item>
</style>
  1. Настройка пользовательского интерфейса сканирования: переопределите соответствующие методы.

Для получения более подробной информации см. CustomCaptureActivity.

@Override
protected void beforeCapture() {
// Выполнить необходимые действия перед сканированием
}

@Override
protected void onCameraInitSuccess() {
// Камера успешно инициализирована
}

@Override
protected void onCameraInitFailed() {
// Ошибка инициализации камеры
}

Пример кода для сканирования QR-кода:

/**
 * Запуск сканирования QR-кода
 */
@Permission(CAMERA)
private void startScan(ScanType scanType) {
    switch (scanType) {
        case DEFAULT:
            XQRCode.startScan(this, REQUEST_CODE);
            break;
        case DEFAULT_Custom:
            XQRCode.startScan(this, REQUEST_CODE, R.style.XQRCodeTheme_Custom);
            break;
        case REMOTE:
            Intent intent = new Intent(XQRCode.ACTION_DEFAULT_CAPTURE);
            startActivityForResult(intent, REQUEST_CODE);
            break;
        default:
            break;
    }
}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    // Обработка результатов сканирования
    if (requestCode == REQUEST_CODE && resultCode == RESULT_OK) {
        // Отображение результатов сканирования на экране
        handleScanResult(data);
    }

    // Выбор системного изображения и его анализ
    else if (requestCode == REQUEST_IMAGE) {
        if (data != null) {
            Uri uri = data.getData();
            getAnalyzeQRCodeResult(uri);
        }
    }
}

/**
 *
``` Ваша поддержка — моя мотивация. Список всех поддержавших будет приведён ниже в качестве подтверждения, перед тем как поддержать проект, пожалуйста, оставьте комментарий с описанием поддержки!

## Публичный аккаунт

> Больше информации. Добро пожаловать в мой личный публичный аккаунт WeChat: «Мой путь в мир открытых исходных кодов Android».

[apisvg]: https://img.shields.io/badge/API-14+-brightgreen.svg
[api]: https://android-arsenal.com/api?level=14

*Примечание: часть текста не удалось перевести из-за отсутствия контекста.*

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

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

Введение

Библиотека для сканирования, анализа и создания двумерных кодов, очень удобная и практичная. Развернуть Свернуть
Apache-2.0
Отмена

Обновления

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

Участники

все

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

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