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

OSCHINA-MIRROR/jenly1314-ANetty

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

ANetty

Изображение

Скачать MavenCentral JitPack CI CircleCI API Лицензия

ANetty для Android — это библиотека связи, основанная на второй оболочке Netty, предназначенная для быстрого создания высокопроизводительных и надёжных сетевых взаимодействий. Она обеспечивает удобство разработки при сохранении производительности, стабильности и масштабируемости приложения.

GIF демонстрация

Изображение

Вы также можете скачать демо-приложение для проверки работы.

Введение

Градл:

  1. Добавьте удалённые репозитории в проекте в файле build.gradle или settings.gradle

    repositories {
        //...
        mavenCentral()
    }
  2. Добавьте зависимости в модульном файле build.gradle

    // ANetty
    implementation 'com.github.jenly1314:anetty:1.1.0'

Пример использования

Код> ANetty временно не предоставляет библиотеку для серверной части Netty, так как в реальных сценариях сервер обычно зависит от конкретного бизнес-процесса. Для демонстрации ANetty клиентской части здесь представлен простой пример клиента; его можно запустить непосредственно из метода main в виде Java-кода, вызывая ANettyClient.Код сервера Netty:

   // Инициализация и запуск сервиса
   new ANettyServer().start(port);

Netty клиент:

// Инициализация Netty
Netty mNetty = new ANetty(new Netty.OnChannelHandler() {
   @Override
   public void onMessageReceived(ChannelHandlerContext ctx, String msg) {
      // TODO Полученное сообщение
   }

   @Override
   public void onExceptionCaught(ChannelHandlerContext ctx, Throwable e) {
      // TODO Обработка исключения
   }
}, true);

// Установка слушателя соединения
mNetty.setOnConnectListener(new Netty.OnConnectListener() {
   @Override
   public void onSuccess() {
      // TODO Соединение установлено успешно
   }

   @Override
   public void onFailure(Throwable e) {
      // TODO Соединение не удалось
   }
});

// Установка слушателя отправки сообщений
mNetty.setOnSendMessageListener(new Netty.OnSendMessageListener() {
   @Override
   public void onSendMessage(Object msg) {
      // TODO Отправленное сообщение
   }

   @Override
   public void onException(Throwable e) {
      // TODO Обработка исключения
   }
});

// После инициализации, создаем соединение mNetty.connect(host, port);

//--------------------- // ... // Отправка сообщения mNetty.sendMessage(msg);

//--------------------- // ... // Разрыв соединения mNetty.disconnect();

//--------------------- // ... // Переподключение mNetty.reconnect(delayMillis);

//--------------------- // ... // Закрытие соединения mNetty.close();

Для тестирования можно запустить Netty сервер; затем использовать клиента Netty для ввода соответствующего адреса соединения и порта, чтобы установить связь с сервером. (Также можно использовать демонстрационное приложение [Demo App](https://raw.githubusercontent.com/jenly1314/ANetty/master/app/release/app-release.apk) для тестирования.)Дополнительные сведения о использовании, см. в разделе [app](app) с примерами использования исходного кода или просмотреть [документацию API](https://jitpack.io/com/github/jenly1314/ANetty/latest/javadoc/) напрямую.

## Рекомендации

### [EasyChat](https://github.com/yetel/EasyChatAndroidClient) Приложение для мгновенного обмена сообщениями.
### [ASocket](https://github.com/jenly1314/ASocket) Библиотека для упаковки TCP/UDP протоколов, позволяющая быстро реализовать долгое соединение TCP и однобайтовую, групповую и широковещательную передачу UDP.
### [AWebSocket](https://github.com/jenly1314/AWebSocket) Упакованное WebSocket на основе okhttp, простое и удобное использование.

## Версионность

### v1.1.0: 2023-11-18
* Переместил выпуск на MavenCentral
* minSdk требование повышено до 21+
* compileSdk обновлено до 33
* Обновление Gradle до версии 8.0
* Обновление зависимости netty до версии v4.1.101.Final
* Изменение определений Netty, предоставление большего количества доступных методов

### v1.0.3: 2019-11-13 (ранее выпущенные версии были на JCenter)
* Добавлен параметр ChannelHandlerContext в методах интерфейса OnChannelHandler

### v1.0.2: 2019-10-30
* Добавлена возможность установки слушателя событий sendMessage через setOnSendMessageListener
* Обновление зависимости netty до версии 4.1.43.Final

### v1.0.1: 2019-09-26
* Удалены зависимости support
* Обновление зависимости netty до версии 4.1.42.Final

### v1.0.0: 2019-03-30
* Начальная версия ANetty## Поддержка
Если вам понравился ANetty, или вы считаете, что он помог вам, нажмите "Star" в правом верхнем углу, ваша поддержка — это мой двигатель, спасибо :smiley:
Вы также можете сканировать QR-код ниже, чтобы пригласить автора выпить кофе :coffee:<div>
   <img src="https://jenly1314.github.io/image/page/rewardcode.png">
</div>

## О нас| Мой блог                                                                               | GitHub                                                                                  | Gitee                                                                                    | CSDN                                                                                   | Блог на Cnblogs                                                                    |
|:--------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------|:----------------------------------------------------------------------------------|
| <a title="Мой блог" href="https://jenly1314.github.io" target="_blank">Блог Jenly</a>   | <a title="Открытый проект на GitHub" href="https://github.com/jenly1314" target="_blank">jenly1314</a> | <a title="Открытый проект на Gitee" href="https://gitee.com/jenly1314" target="_blank">jenly1314</a> | <a title="Блог на CSDN" href="http://blog.csdn.net/jenly121" target="_blank">jenly121</a> | <a title="Блог на Cnblogs" href="https://www.cnblogs.com/jenly" target="_blank">jenly</a> |

## Обратная связь| WeChat публичный аккаунт            | Gmail адрес                                                                           | QQ почта                                                                               | QQ группа                                                                                                                                                                                 | QQ группа                                                                                                                                                                                 |
|:-------------|:---------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Jenly666](http://weixin.qq.com/r/wzpWTuPEQL4-ract92-R) | <a title="Отправьте мне сообщение" href="mailto:jenly1314@gmail.com" target="_blank">jenly1314@gmail.com</a> | <a title="Отправьте мне сообщение" href="mailto:jenly1314@vip.qq.com" target="_blank">jenly1314@vip.qq.com</a> | <a title="Нажмите чтобы присоединиться к группе QQ" href="https://qm.qq.com/cgi-bin/qm/qr?k=6_RukjAhwjAdDHEk2G7nph-o8fBFFzZz" target="_blank">20867961</a> | <a title="Нажмите чтобы присоединиться к группе QQ" href="https://qm.qq.com/cgi-bin/qm/qr?k=Z9pobM8bzAW7tM_8xC31W8IcbIl0A-zT" target="_blank">64020761</a> |<div>
   <img src="https://jenly1314.github.io/image/page/footer.png">
</div>

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

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

Введение

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

Обновления

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

Участники

все

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

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