14 KiB
LocalSend
Homepage • Discord • GitHub • Codeberg
LocalSend เป็นแอปที่ช่วยให้การส่งไฟล์ระหว่างอุปกรณ์เป็นไปอย่างปลอดภัยโดยไม่จำเป็นต้องใช้อินเทอร์เน็ต
เกี่ยวกับ
LocalSend เป็นแอปข้ามแพลตฟอร์มที่ช่วยให้การสื่อสารระหว่างอุปกรณ์เป็นไปอย่างปลอดภัยโดยใช้ REST API และการเข้ารหัส HTTPS ต่างจากแอปส่งข้อความอื่นๆ ที่ต้องพึ่งพาเซิร์ฟเวอร์ภายนอก LocalSend ไม่ต้องการการเชื่อมต่ออินเทอร์เน็ตหรือเซิร์ฟเวอร์บุคคลที่สาม ทำให้เป็นโซลูชั่นการสื่อสารภายในท้องถิ่นที่รวดเร็วและเชื่อถือได้
ภาพหน้าจอ
ดาวน์โหลด
ทางเราแนะนำให้ดาวน์โหลดแอปนี้จาก App Store หรือ Package Manager เพราะในตัวแอปไม่มีฟังชั่นอัปเดตอัตโนมัติ
| Windows | macOS | Linux | Android | iOS | Fire OS |
|---|---|---|---|---|---|
| Winget | App Store | Flathub | Play Store | App Store | Amazon |
| Scoop | Homebrew | Nixpkgs | F-Droid | ||
| Chocolatey | DMG Installer | Snap | APK | ||
| EXE Installer | AUR | ||||
| Portable ZIP | TAR | ||||
| DEB | |||||
| AppImage |
อ่านเพิ่มเติมเกี่ยวกับ distribution channels.
การตั่งค่า
ในกรณีส่วนใหญ่ LocalSend ควรทำงานได้ทันที อย่างไรก็ตาม หากคุณประสบปัญหาในการส่งหรือรับไฟล์ คุณอาจต้องกำหนดค่าไฟร์วอลล์ของคุณเพื่อให้ LocalSend สามารถสื่อสารผ่านเครือข่ายแลนได้
| Traffic Type | Protocol | Port | Action |
|---|---|---|---|
| Incoming | TCP, UDP | 53317 | Allow |
| Outgoing | TCP, UDP | Any | Allow |
แนะนำให้ตรวจสอบให้แน่ใจว่าคุณได้ปิด AP isolation บนเราเตอร์ของคุณแล้ว โดยปกติการตั้งค่าดังกล่าวจะถูกปิดเป็นค่าเริ่มต้นอยู่แล้ว แต่บางเราเตอร์บางตัวอาจเปิดใช้งานไว้
โหมดเคลื่อนที่
(เพิ่มเข้ามาในเวอร์ชัน v1.13.0)
สร้างไฟล์ชื่อ settings.json ไว้ในโฟล์เดอร์เดียวกับตัวแอป (.exe)
ไฟล์นี้สามารถเป็นไฟล์ว่างเปล่าได้
ตัวแอปจะทำการเก็บข้อมูลการตั้งค่าไว้ในนี้แทนที่จะไปเก็บยังที่เริ่มต้น
เริ่มแอปเป็นไอคอนถาดกราฟิก
(อัปเดตในเวอร์ชัน v1.15.0)
เพื่อเริ่มแอปเป็นไอคอนถาดกราฟิก (เฉพาะไอคอนถาดกราฟิกอย่างเดียว) ใช้คำสั่ง --hidden (ตัวอย่าง: localsend_app.exe --hidden)
ในเวอร์ชัน v1.14.0 หรือก่อนหน้า ตัวแอปจะเริ่มเป็นไอคอนถาดกราฟิกถ้าใส่ flag autostart และเปิดโหมดซ่อน
หลักการทำงาน
LocalSend ใช้โปรโตคอลการสื่อสารที่ปลอดภัยที่ช่วยให้อุปกรณ์สามารถสื่อสารกันโดยใช้ REST API ข้อมูลทั้งหมดจะถูกส่งอย่างปลอดภัยผ่าน HTTPS และใบรับรอง TLS/SSL จะถูกสร้างขึ้นในทันทีบนแต่ละอุปกรณ์เพื่อให้แน่ใจว่ามีความปลอดภัยสูงสุด
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับโปรโตคอล LocalSend ดูที่ documentation.
การเริ่มต้น
ในการคอมไพล์ LocalSend จากซอร์สโค้ด ให้ทำตามขั้นตอนเหล่านี้:
- ติดตั้ง Flutter โดยตรง หรือใช้ fvm (ดู เวอร์ชันที่ต้องการ)
- โคลน repository ของ
LocalSend - รัน
cd appเพื่อเข้าไปยังโฟล์เดอร์ของแอป - รัน
flutter pub getเพื่อดาวโหลด dependencies - รัน
flutter runเพื่อเริ่มแอป
[!หมายเหตุ] LocalSend ยังคงต้องการ Flutter เวอร์ชันเก่าอยู่ (ดูที่ .fvmrc) จึงอาจเกิดปัญหาการคอมไพล์ ที่เกิดจากความไม่ตรงกันระหว่างเวอร์ชันที่ต้องการและเวอร์ชัน Flutter ที่ติดตั้งในระบบ เพื่อทำให้การพัฒนาเป็นไปอย่างสม่ำเสมอ LocalSend ใช้ fvm ในการจัดการเวอร์ชัน Flutter ของโปรเจกต์ หลังจากติดตั้ง
fvm, ให้ใช้คำสั่งfvm flutterแทนการใช้flutter.
การมีส่วนร่วมพัฒนา
เรายินดีต้อนรับการมีส่วนร่วมจากทุกคนที่สนใจช่วยปรับปรุง LocalSend หากคุณต้องการมีส่วนร่วม มีหลายวิธีที่คุณสามารถทำได้:
การแปล
คุณสามารถช่วยแปลแอปนี้เป็นภาษาอื่นได้! โดยการ:
- Fork repository นี้
- เลือกภาษาที่ต้องการแปล มีหลักการแปลดังนี้
- เพิ่มการแปลที่ขาดหายในภาษาที่มีอยู่: อัปเดตเฉพาะ
_missing_translations_<locale>.jsonใน app/assets/i18n - แก้ไขการแปลที่มีอยู่: อัปเดต
strings_<locale>.i18n.jsonใน app/assets/i18n - เพิ่มภาษาใหม่: สร้างไฟล์ใหม่; see also: locale codes.
- เพิ่มการแปลที่ขาดหายในภาษาที่มีอยู่: อัปเดตเฉพาะ
- รันแอปใหม่ (ไม่จำเป็น)
- รัน
cd appเพื่อเข้าโฟล์เดอร์ของแอป - ตรวจสอบให้แน่ใจว่าคุณเคย รัน แอปนี้แล้วมาครั้งนึง
- อัปเดตการแปลภาษาโดยใช้คำสั่ง
flutter pub run slang - รันแอปผ่านคำสั่ง
flutter run - เปิด pull request
- รัน
หมายเหตุ: ไม่ต้องแปลช่องหรือบรรทัดที่ขึ้นต้นด้วยตัวอักษร @ เพราะจะไม่ถูกแสดงในแอป ข้อความเหล่านั้นมีไว้เพื่อให้นักพัฒนาเข้าใจโค้ดเท่านั้น.
การแก้บัคและพัฒนา
- การแก้บัค: หากคุณพบข้อบกพร่อง กรุณาสร้าง pull request พร้อมคำอธิบายชัดเจนเกี่ยวกับปัญหาและวิธีการแก้ไข
- การพัฒนา: มีไอเดียในการปรับปรุง LocalSend ไหม? กรุณาสร้าง "issue" ก่อนเพื่อพูดคุยว่าทำไมการปรับปรุงนั้นจึงจำเป็น
สำหรับข้อมูลเพิ่มเติม ดูได้ที่ contributing guide.
การสร้างและคอมไพล์แอป
สำหรับนักพัฒนาเท่านั้น
Android
Traditional APK
flutter build apk
AppBundle for Google Play
flutter build appbundle
iOS
flutter build ipa
macOS
flutter build macos
Windows
Traditional
flutter build windows
Local MSIX App
flutter pub run msix:create
Store ready
flutter pub run msix:create --store
Linux
Traditional
flutter build linux
AppImage
appimage-builder --recipe AppImageBuilder.yml
Snap
คุณสามารถเปิด pull request ได้ตามสะดวกเลย เรามี branch snap ให้คุณลองเล่นด้วยนะ :)

