English | 中文 | 日本語 | 正體中文 | Tiếng Việt
Gopeed (tên đầy đủ Go Speed), một công cụ tải xuống tốc độ cao được phát triển bởi Golang
+ Flutter
, hỗ trợ giao thức (HTTP, BitTorrent, Magnet) và hỗ trợ tất cả các nền tảng. Ngoài các chức năng tải xuống cơ bản, Gopeed còn là một công cụ tải xuống có thể tùy chỉnh cao cho phép triển khai thêm tính năng thông qua việc tích hợp với APIs hoặc cài đặt và phát triển các tiện ích mở rộng.
Truy cập ✈ Trang web chính thức | 📖 Tài liệu chính thức
Nền tảng | Loại gói | Liên kết tải xuống |
---|---|---|
Windows | Bộ cài đặt EXE |
Liên kết |
ZIP Portable |
Liên kết | |
MacOS | Bộ cài đặt DMG |
Liên kết |
Linux | Flathub |
Liên kết |
SNAP |
Liên kết | |
DEB |
Liên kết | |
AppImage |
Liên kết | |
Android | APK |
Liên kết |
iOS | IPA |
Liên kết |
Web | Liên kết | |
Docker | Liên kết |
Thêm thông tin về cài đặt, vui lòng tham khảo Cài đặt
Sử dụng go install
:
go install github.com/GopeedLab/gopeed/cmd/gopeed@latest
Nếu bạn thích dự án này, xin vui lòng xem xét quyên góp để hỗ trợ phát triển dự án này, cảm ơn bạn!
Dự án này được chia thành hai phần, phần giao diện sử dụng flutter
, phần backend sử dụng Golang
, và hai phía giao tiếp thông qua giao thức http
. Trên hệ thống unix, sử dụng unix socket
, và trên hệ thống windows, sử dụng giao thức tcp
.
Mã giao diện nằm trong thư mục
ui/flutter
.
- Golang 1.22+
- Flutter 3.16+
git clone [email protected]:GopeedLab/gopeed.git
Vui lòng tham khảo CONTRIBUTING_vi-VN.md
Trước tiên, bạn cần cấu hình môi trường theo tài liệu chính thức của Tài liệu trang web máy tính để bàn Flutter, sau đó bạn cần đảm bảo môi trường cgo được thiết lập đúng. Để biết hướng dẫn chi tiết về cách thiết lập môi trường cgo, vui lòng tham khảo các tài liệu tương ứng có sẵn trực tuyến.
command:
- windows
go build -tags nosqlite -ldflags="-w -s" -buildmode=c-shared -o ui/flutter/windows/libgopeed.dll github.com/GopeedLab/gopeed/bind/desktop
cd ui/flutter
flutter build windows
- macos
go build -tags nosqlite -ldflags="-w -s" -buildmode=c-shared -o ui/flutter/macos/Frameworks/libgopeed.dylib github.com/GopeedLab/gopeed/bind/desktop
cd ui/flutter
flutter build macos
- linux
go build -tags nosqlite -ldflags="-w -s" -buildmode=c-shared -o ui/flutter/linux/bundle/lib/libgopeed.so github.com/GopeedLab/gopeed/bind/desktop
cd ui/flutter
flutter build linux
Giống như trước đây, bạn cũng cần chuẩn bị môi trường cgo
và sau đó cài đặt gomobile
:
go install golang.org/x/mobile/cmd/gomobile@latest
go get golang.org/x/mobile/bind
gomobile init
command:
- android
gomobile bind -tags nosqlite -ldflags="-w -s" -o ui/flutter/android/app/libs/libgopeed.aar -target=android -androidapi 21 -javapkg="com.gopeed" github.com/GopeedLab/gopeed/bind/mobile
cd ui/flutter
flutter build apk
- ios
gomobile bind -tags nosqlite -ldflags="-w -s" -o ui/flutter/ios/Frameworks/Libgopeed.xcframework -target=ios github.com/GopeedLab/gopeed/bind/mobile
cd ui/flutter
flutter build ios --no-codesign
command:
cd ui/flutter
flutter build web
cd ../../
rm -rf cmd/web/dist
cp -r ui/flutter/build/web cmd/web/dist
go build -tags nosqlite,web -ldflags="-s -w" -o bin/ github.com/GopeedLab/gopeed/cmd/web