chemfinder
V2EX  ›  问与答

文件直接上传到 APP

  •  
  •   chemfinder · Aug 28, 2017 · 2460 views
    This topic created in 3221 days ago, the information mentioned may be changed or developed.
    我开发了一个 Android 端的 app

    现在有一个文本文件,在电脑桌面上,需要上传到我这个 app 上

    有什么办法直接从电脑把这个文本文件直接上传到我的 APP 里面呢?

    (不通过手机 qq、 微信、 邮箱等等)

    而是直接从电脑到我的 app 减少中间环节!
    18 replies    2017-08-29 08:49:42 +08:00
    momocraft
        1
    momocraft  
       Aug 28, 2017
    app 内做一个带上传的 http server,从电脑访问
    lydasia
        2
    lydasia  
       Aug 28, 2017 via iPhone
    app 开 http 服务器,显示 ip 地址(和端口号),同局域网桌面端用浏览器上传,别的大概就比较复杂了吧。
    chemfinder
        3
    chemfinder  
    OP
       Aug 28, 2017
    @momocraft 电脑端不想装什么东西 就是任意一台电脑 这样也是可以的吗?不太懂技术 我是有这个需求 在找解决方案。。
    momocraft
        4
    momocraft  
       Aug 28, 2017
    @chemfinder 电脑需要有浏览器
    chemfinder
        5
    chemfinder  
    OP
       Aug 28, 2017
    @lydasia
    我异想天开的想法是:我可以要求客户统一将该文件命名为“需要上传的资料.txt ”,然后在我的 app 上传页面提供一个扫描器,用户手持手机扫描桌面,发现该名字的文件,即开始进行上传动作。但是,隐隐约约感觉这需要电脑授权吧?否则是不是有点移形换影的感觉?脑洞大开了。。。
    chemfinder
        6
    chemfinder  
    OP
       Aug 28, 2017
    电脑需要有浏览器 你们需要把文件拖动到浏览器里面吗?如果是这样,那我还不如开发个 web 页面上传呢。但是这样就增加了中间环节啊~
    chemfinder
        7
    chemfinder  
    OP
       Aug 28, 2017
    电脑需要有浏览器 那么嗨需要把文件拖动到浏览器里面吗?如果是这样,那我还不如开发个 web 页面上传呢。但是这样就增加了中间环节啊~
    chinvo
        8
    chinvo  
       Aug 28, 2017
    @chemfinder #6 大家就是在说用 web 页面上传啊
    ipconfiger
        9
    ipconfiger  
       Aug 28, 2017
    App 上实现一个扫二维码功能, 你先上传文件到网盘, 生成分享连接, 再找个二维码服务把连接生成二维码, App 一扫得到连接, 就可以下载了. 那么, 如果你要一站式的, 就把上述功能集成起来就行了
    ipconfiger
        10
    ipconfiger  
       Aug 28, 2017
    所以苹果全家桶的好处就是, Airdrop 一发就好了
    jugelizi
        11
    jugelizi  
       Aug 28, 2017
    参见 qq 阅读的 wifi 传书
    lookas2001
        12
    lookas2001  
       Aug 28, 2017 via Android
    首先我把你的需求详细化成在同一个局域网传输文件,同时不需要安装过多软件,并且要方便。
    这么分析你的需求是因为:
    第一点是因为看你的需求好像不要邮箱这种通过第三方服务(器)来进行。
    第二点和第三点是你不想让用户安装 qq 和微信(增加
    了操作成本)。
    那么先从系统自带的功能开始。
    文件复制?
    scp
    我觉得用户不会打开一个黑漆漆的窗口然后传文件,此方案 pass 掉。
    smb (文件共享)
    系统自带,但是 Android app 上运行一个 smb server 且不说系统让不让你这么干,首先开发难度就上去了。不是特别推荐,但是如果你不喜欢下一个方案,这个方案可以当一个备选。
    web 浏览器上传
    web 浏览器一般系统都有。那么这样问题就简单了。咱你的 Android app 里开一个 http server (绝对比 smb server 好开)然后运行一个非常简单的 web service,告诉用户手机电脑要在一个局域网内,应该在浏览器打哪些网址,让用户打开 web 后然后上传文件。
    据我所知一些应用比如百度云的免流量安装的原理一般就是这样的。
    chemfinder
        13
    chemfinder  
    OP
       Aug 28, 2017
    @chinvo
    @ipconfiger
    @jugelizi
    @lookas2001
    @lydasia
    @momocraft

    以上方案是不是都要求那台 PC 得有无线网卡?或者蓝牙呢?
    如果是这样,这是没有办法保证的啊~
    chinvo
        14
    chinvo  
       Aug 29, 2017
    @chemfinder #13 不是,是你的 app 提供一个 web 页面,只要和电脑在一个网络里面,电脑能访问到就可以
    ipconfiger
        15
    ipconfiger  
       Aug 29, 2017
    @chemfinder 如果 PC 不联网的话, 有两个办法
    1: 通过视频
    把文件分割成多块, 每一块生成一个二维码, 按顺序下来, 再将数据拼接起来生成文件
    缺点就是, 慢, 需要手动扫, 你要是手快的话, 一秒也差不多只能几百个 byte

    2: 通过音频
    把文件编码成音频用音箱播放, 手机解码后还原成文件
    缺点是, 慢, 每秒差不多也就几百个 byte, 还会存在一定误码率, 所以差不多每几个 byte 就需要一个校验位, 还需要一个序列位用来解决重发的问题
    momocraft
        16
    momocraft  
       Aug 29, 2017
    換個思路: 如果不要任何保證就能用手機拿到附近 pc 的文件, 連網絡都不需要, 你猜這技術能賣多少錢
    lfk0000
        17
    lfk0000  
       Aug 29, 2017
    一种在实现物理隔离的计算机之间交换信息的方法
    CN 103729323 A
    摘要
    本发明提出了一种在实现物理隔离的计算机之间交换信息的方法,通过将待传输文件分割为多个原始数据块,对原始数据块进行编码,生成相应的二维码图像,通过读取二维码图像并解码,实现信息交换。按照本发明在物理隔离的两台计算机间进行信息交换,所传递的信息对用户是完全透明的,并且无需使用任何光盘进行传递。由于二维码本身包含了纠错机制,传输数据时很少出现校验错误。单次能够传输的最大数据量与所使用的二维码编码方式、显示器、显卡和数码相机的分辨率密切相关,每秒能够进行的传输次数与所采用的相机摄像速率有关。

    http://www.google.com.pg/patents/CN103729323A?cl=zh
    lfk0000
        18
    lfk0000  
       Aug 29, 2017
    按照本发明在物理隔离的两台计算机间进行信息交换,所传递的信息对用户是完全透明的,并且无需使用任何光盘进行传递。由于二维码本身包含了纠错机制,传输数据时很少出现校验错误。单次能够传输的最大数据量与所使用的二维码编码方式、显示器、显卡和数码相机的分辨率密切相关,每秒能够进行的传输次数与所采用的相机摄像速率有关。经过测算,当计算机显示分辨率设为 1920*1080、数码相机分辨率为 3648*2736、采用 QR 编码时,每幅图像最大可传输 177180 字节数据。相机采集速率为 60 帧 /秒时,每秒则可以传输 30 次。

    177kB*30=5.3MB ,这速率还可以。。。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3161 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 13:48 · PVG 21:48 · LAX 06:48 · JFK 09:48
    ♥ Do have faith in what you're doing.