ASocket は、TCP ロング接続と UDP ユニキャスト、マルチキャスト、ブロードキャスト、およびその他の関連通信を容易にし、迅速に実装する TCP/UDP プロトコル カプセル化ライブラリです。
Androidに適したASocketによるTCP/UDP関連のSocketの一元管理、UIメインスレッドでの呼び出しとコールバック、サブスレッドでメッセージの送受信を非同期処理
デモアプリを直接ダウンロードして効果を体験することもできます
プロジェクトのbuild.gradleまたはsettings.gradleにリモート リポジトリを追加します
repositories {
// ...
mavenCentral()
}
インポートされた依存関係をモジュールのbuild.gradleに追加します
implementation ' com.github.jenly1314:asocket:1.0.0 '
マルチキャスト アドレスは固有であり、マルチキャストにはクラス D アドレスが使用されます。クラス D IP アドレスはマルチキャスト IP アドレス、つまり 224.0.0.0 ~ 239.255.255.255 の IP アドレスで、ローカル接続マルチキャスト アドレス、予約済みマルチキャスト アドレス、および管理権マルチキャスト アドレスの 3 つのカテゴリに分類されます。 ローカル マルチキャスト アドレス ブロードキャスト アドレス: 224.0.0.0 ~ 224.0.0.255 は、ルーティング プロトコルおよびその他の目的のために予約されているアドレスです。ルーターは、この範囲に属する IP パケットを転送しません。 予約済みマルチキャスト アドレス: 224.0.1.0 ~ 238.255.255.255。グローバル (インターネットなど) またはネットワーク プロトコルで使用できます。 管理許可マルチキャストアドレス: 239.0.0.0 ~ 239.255.255.255 組織内で使用可能。プライベート IP アドレスに似ており、インターネット上では使用できません。
//初始化一个ISocket的实现类(如:TCPClient、TCPServer、UDPClient、UDPServer、UDPMulticast)
val tcpClient = TCPClient (host,port)
//初始化ASocket
val aSocket = ASocket (tcpClient)
//设置状态监听
aSocket.setOnSocketStateListener( object : ISocket . OnSocketStateListener {
override fun onStarted () {
}
override fun onClosed () {
}
override fun onException ( e : Exception ) {
}
})
//设置接收消息监听
aSocket.setOnMessageReceivedListener { data ->
// TODO 接收消息
}
//启动
aSocket.start()
// ....
//发送消息
aSocket.write(data)
TCPClientアクティビティ
TCPサーバーアクティビティ
UDPClientアクティビティ
UDPサーバーアクティビティ
UDPマルチキャストアクティビティ
使用法の詳細については、デモのソース コードの使用例を参照するか、API ヘルプ ドキュメントを直接参照してください。
ASocket が気に入った場合、または ASocket が役に立ったと感じた場合は、右上隅の「スター」をクリックしてサポートしていただけます。ありがとうございます。
以下の QR コードをスキャンして著者にコーヒーを買うこともできます☕
私のブログ | GitHub | ギティ | CSDN | ブログパーク |
---|---|---|---|---|
ジェンリーのブログ | ジェンリー1314 | ジェンリー1314 | ジェンリー121 | ゼリー |
WeChatの公開アカウント | Gメール | QQメールボックス | QQグループ | QQグループ |
---|---|---|---|---|
ジェンリー666 | ジェンリー1314 | ジェンリー1314 | 20867961 | 64020761 |