日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

kcp参数 android,Android上KCP协议的使用

發布時間:2023/12/20 Android 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 kcp参数 android,Android上KCP协议的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

有關KCP協議,可以參閱KCP協議。

目前比較成熟完備的解決方案是kcptun。kcptun在kcp協議的基礎止,做了很多優化,包括前向糾錯(FEC),差分服務代碼點(DSCP),加解密,壓縮。本文講述把kcptun移植到Android端的過程。

1.Go環境準備

kcptun本身是個Go項目,而Go項目本身是支持移植到Android或iOS客戶端作為第三方庫使用的。

1. Go語言環境安裝

2.GoMobile工具安裝

GoMobile工具用于編譯和運行Android和iOS應用。

首先安裝:

go get golang.org/x/mobile/cmd/gomobile

成功后:

gomobile init

如果安裝失敗,通常是網絡問題,可以使用國內鏡像:

a. 安裝gopm

go get -u github.com/gpmgo/gopm

b. 用gopm get -g 代替go get

gopm get -g golang.org/x/net

也可以簡單的從github上克隆相應的為庫到gopath目錄下。

2. Go項目編譯

客戶端只是kcptun的client部分。將kcptun下的client文件夾放到gopath的go/src/golang.org/x/mobile/example/目錄下。

開始編譯之前做一些小修改。

修改client下的三個文件,把代碼中的package main改成別的包名,如package kcpclient,否則編譯不過。

修改main.go,把main方法改名為:Run,main方法是啟動kcpclient的唯一入口,改成大寫字母開頭的方法才會暴露出來給Android使用。

在main.go預定義代碼中定義一個配置路徑屬性CONFIGPATH,修改Run方法代碼片段:

if c.String("c") != "" {

err := parseJSONConfig(&config, c.String("c"))

checkError(err)

}else if CONFIGPATH != "" {

err := parseJSONConfig(&config, CONFIGPATH)

checkError(err)

}

這里加入的CONFIGPATH屬性,并且暴露給客戶端,可以在啟動kcp client前通過setCONFIGPATH,傳入配置的json文件路徑,對kcp client進行自定義參數配置。

上面修改完成后,進入到client目錄,執行

gomobile bind -target=android

編譯完成后,得到kcpclient.aar以及kcpclient-sources.jar。

3.移植到Android端使用

把kcpclient.aar和kcpclient-sources.jar加入依賴。

啟動kcp client是個網絡操作,所以要放到子線程進行操作。最簡單的做法是:

new Thread() {

@Override

public void run() {

super.run();

//這里設置自己的kcp client配置,也可不調用,使用默認配置

Kcpclient.setCONFIGPATH("xxxx");

Kcpclient.run();

}

}.start();

總結

以上是生活随笔為你收集整理的kcp参数 android,Android上KCP协议的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。