0.基础环境
类别:笔记本 型号:中国长城 NF14C 硬件平台:飞腾处理器(ArmV8 指令集) 系统:银河麒麟操作系统 V10 SP1(2203)
关键词: 信创,麒麟系统,linux,c++,c,飞腾,arm,airdrop,snapdrop
1.背景
AirDrop,即隔空投送。 是苹果公司iOS,iPadOS和macOS系统下特有的功能,用于在多台设备之间分享文件,只要将文件拖动到使用隔空投送功能的好友的头像上,就能进行一对一的文件传输(类似于无线网络传输)。 在2013年WWDC大会上,隔空投送加入到iOS设备中,iPhone 5以下的设备不支持隔空投送应用。
2.snapdrop
类似 AirDrop 快速跨设备传档功能,它不需安装 App 或软件、不需注册登入、不需任何设定,只要在同一个无线网路环境下的手机或电脑打开「Snapdrop」网页,就能侦测到彼此,并且像是 AirDrop 那样开始传送档案。理论上,需要浏览器支持 WebRTC API 才能使用。Chrome、Firefox 在 2012 年的版本已经支持 WebRTC,市面主流浏览器都支持。 而且「Snapdrop」可以在 Android、Windows、Mac 与 iOS 上一起使用! 在同一网络内(无线WIFI或者内网域网),多台可互相通讯的设备输入http://www.snapdrop.net即可相互传送文件。
2.1传输文件
2.2发送消息
右击中间传输带按钮,可以直接发送信息。
2.3 项目源码
项目是通过GPL协议开源的,地址:github.com/RobinLinus/…
2.4 其他客户端
apk下载地址: play.google.com/store/apps/… m.apkpure.com/snapdrop-fo… 2.火孤浏览器扩展(可桌面使用) github.com/ueen/Snapdr… 下载地址:addons.mozilla.org/de/firefox/…
chrome/chromium使用方式
Download the latest release zip and extract
open chrome://extensions (enable developer mode)
'Load unpacked extension' and select the extracted folder
从使用便利性来讲,还是直接输入网址更快捷,手机装APK
2.5关于在无外网以及特殊区域的使用
如果大家是在无外网的内网使用,则需要考虑自己内网在服务器上跑一个docker,具体可以参见github.com/RobinLinus/… 此处不再详述。
2.6传输原理
Signaling 服务器的作用类似相亲里的媒人。一开始,两个客户端互不认识。他们需要一个中介人去介绍,才知道另一方的存在,而后使用 WebRTC 定义的 API 进行 P2P 连线及数据传输,实际传输是直接通讯。
写在最后
airdrop的便利性,给大家带来的欢乐。本文通过寻找对应的方案,如果大家有更多好的选择,麻烦通过评论区告诉我。我再补充。 特别补充:localsend也很好,但是没有arm版本,我曾花过几天时间编译过,但底层的flutter sdk并不支持arm64,因此此方案放弃了。
原文来自:XPlaza信创开源广场