标签: file-transfer

通过蓝牙在Android和iPhone之间传输文件?

我正在考虑开发一个iPhone和Android应用程序,以便他们可以通过蓝牙在彼此之间共享数据.可能吗?如果有,怎么样?

谢谢你的帮助

iphone android bluetooth file-transfer ios

8
推荐指数
1
解决办法
7万
查看次数

蓝牙文件传输Android

我在通过蓝牙套接字发送大文件时遇到问题.较小的文件正确传输.我相信最多可以正确传输161280个字节.

编辑:我做了一些测试并缩小了原因.看起来

outStream.write(mybytearray, 0, mybytearray.length);
Run Code Online (Sandbox Code Playgroud)

在发送代码部分不写超过161280字节.我通过不关闭套接字连接看到了这种行为,从而导致read接收部分在161280字节上"阻塞".这里的蓝牙输出流有什么问题?我究竟做错了什么?

编辑2: 这样做让它通过.

for(int i = 0 ; i < mybytearray.length ; i++){
    outStream.write(mybytearray[i]);
}
Run Code Online (Sandbox Code Playgroud)

发送代码:

    try {
        outStream = mBluetoothSocket.getOutputStream();
        Log.d(TAG,"outStream created success!");
    } catch (IOException e) {
        Log.d(TAG,
                "ON RESUME: Output stream creation failed.",
                e);
    }

    File myFile = new File(file_name);
    Log.d(TAG,"file /source.pdf created success!");

    byte[] mybytearray = new byte[(int)myFile.length()];
    Log.d(TAG,"file length() =" + (int)myFile.length());

    FileInputStream fis = new FileInputStream(myFile);
    Log.d(TAG,"fis created");

    BufferedInputStream bis = new BufferedInputStream(fis,1272254 );
    Log.d(TAG,"bis created …
Run Code Online (Sandbox Code Playgroud)

android bluetooth file-transfer

8
推荐指数
1
解决办法
2万
查看次数

Android文件传输无法通过XMPP和OpenFire工作

问题:无法通过XMPP和OpenFire Server接收发送到我的Android应用程序的文件.我可以成功发送文件.我使用的asmack jar是asmack-jse-buddycloud-2010.12.11.jar

代码:

    connConfig = new ConnectionConfiguration("beta.myCompany.co.uk", 5222);
    connConfig.setSASLAuthenticationEnabled(true);
    try {
        connect("username", "password");
    } catch (Exception e) {
        e.printStackTrace();
    }

    ServiceDiscoveryManager sdm = ServiceDiscoveryManager.getInstanceFor(connection);
    if(sdm == null)
        sdm = new ServiceDiscoveryManager(connection);

    fileTransferManager = new FileTransferManager(connection);
    FileTransferNegotiator.setServiceEnabled(connection, true);

fileTransferManager.addFileTransferListener(new FileTransferListener() {
    @Override
    public void fileTransferRequest(FileTransferRequest request) {
        IncomingFileTransfer transfer = request.accept();
        try {
            FileOutputStream fos = openFileOutput(request.getFileName(), Context.MODE_PRIVATE);
            InputStream stream = transfer.recieveFile();//THIS FAILS!
            fos.write(IOUtils.toByteArray(stream));
            fos.close();    
        } catch (Exception e) {
            e.printStackTrace();
        }
}
Run Code Online (Sandbox Code Playgroud)

错误(如果文件是通过Spark发送的): …

android xmpp openfire file-transfer asmack

8
推荐指数
1
解决办法
8748
查看次数

如何使用Apache Common vfs列出文件目录/文件

我是使用Apache Common vfs的新手,我成功连接到我已经阅读过docs的服务器但是我坚持使用这段代码.我如何列出目录/文件?

....
Session session = null;
        FileSystemManager fsManager = null;
        FileSystem fs = null;
        try {
            String host = "host_here";
            int port = 22;

            String userStr = "user_here";
            char [] username = userStr.toCharArray();

            String passStr = "password_here";
            char [] password = passStr.toCharArray();

            session = SftpClientFactory.createConnection(host, port, username, password, null);
            //session.connect();

            System.out.println("Connected to the server");

            FileSystemOptions opts = new FileSystemOptions();
            fsManager = VFS.getManager();
            FileObject file = fsManager.resolveFile("ftp://"+userStr+":"+passStr+"@"+host+"/home/", opts);    

            // .... whats next i do here? .....

        } catch (Exception …
Run Code Online (Sandbox Code Playgroud)

ftp jsch file-transfer apache-commons-vfs

8
推荐指数
1
解决办法
1万
查看次数

如何在android中找到通过wifi直接模式传输的文件的文件名?

嗨我的最终目标是在两台设备之间使用android直接api在android中传输文件.一旦设备充当客户端,另一个充当服务器,就像在wifi直接sdk演示中一样.为此,使用服务器端口和主机地址从客户端创建套接字.我想传输多个文件.在接收器端接受客户端套接字连接时,我必须使用从客户端发送的文件的文件名创建文件.但我不知道服务器端的文件名.

那么如何使用套接字连接为这个wifi直接传输模式发送文件名进行多文件传输.

使用服务器端口和主机地址从客户端创建套接字:

fileUris = intent.getExtras().getParcelableArrayList(EXTRA_STREAM);
        String host = intent.getExtras().getString(
                EXTRAS_GROUP_OWNER_ADDRESS);
        Socket socket = new Socket();
        int port = intent.getExtras().getInt(EXTRAS_GROUP_OWNER_PORT);

        try {
            Log.d(WifiDirectActivity.TAG, "Opening client socket - ");
            socket.bind(null);
            socket.connect((new InetSocketAddress(host, port)),
                    SOCKET_TIMEOUT);

            Log.d(WifiDirectActivity.TAG,
                    "Client socket - " + socket.isConnected());
            OutputStream stream = socket.getOutputStream();
            ContentResolver cr = context.getContentResolver();
            InputStream is = null;
            for (int i = 0; i < fileUris.size(); i++) {
                Uri uri = fileUris.get(0);

                try {
                    is = cr.openInputStream(Uri.parse(uri.toString()));
                } catch (FileNotFoundException e) {
                    Log.d(WifiDirectActivity.TAG, e.toString());
                }
                DeviceDetailFragment.copyFile(is, …
Run Code Online (Sandbox Code Playgroud)

android file-transfer wifi-direct

8
推荐指数
1
解决办法
1540
查看次数

手机无法在调试模式下连接到Eclipse

我尝试连接三星Galaxy S2和三星Galaxy Nexus上的USB调试器.它仍然设法在两个设备上都失败了.目前我使用的是Windows XP,但我的想法已经不多了.

这是我尝试过的:

  1. 已安装SAMSUNG_USB_DRIVER_FOR_MOBILE_PHONES_1.4.8.0.exe
  2. 搜索并尝试在Google云端硬盘上安装驱动程序.

有没有人有这个类似的问题,可以分享一个解决方案?

编辑*两个设备三星Galaxy S2和三星Galaxy Nexus能够连接到PC而不是调试器.即使安装了三星Kias,安装了不同差异的驱动程序.

我明天将为50个代表增加一笔赏金.我真的需要测试我在实际手机上做的事情.

memory android file-transfer

7
推荐指数
1
解决办法
6266
查看次数

如何使用TurnSocket(XEP-0065:SOCKS5 Bytestreams)连接?XEP-0096:SI文件传输?[socket writeData]?

我正在尝试使用XMPPFramework和OpenFire通过iOS上的XMPP进行文件传输.我的代码基础来自以下教程.我有一个成功的TurnSocket(XEP-0065:SOCKS5 Bytestreams)连接,但我无法工作如何使用它来发送数据.我有两个注意事项,我都坚持这两个:1.调用[socket writeData]和2.使用'XEP-0096:SI文件传输'.

可能的解决方案1 ​​ - 调用[socket writeData] 在我的App委托中,我有一个didSucceed方法.我可以像这样调用[socket writeData] ...

- (void)turnSocket:(TURNSocket *)sender didSucceed:(GCDAsyncSocket *)socket {

    NSLog(@"TURN Connection succeeded!");

    [socket writeData:myData withTimeout:60.0f tag:0]; 
    [turnSockets removeObject:sender];
}
Run Code Online (Sandbox Code Playgroud)

6月14日更新:这是正确的吗?如果是这样,其他用户如何读取数据?我试过实施

- (void)socket:(GCDAsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag
Run Code Online (Sandbox Code Playgroud)

但它永远不会被召唤.我如何确保它被调用?

可能的解决方案2 - XEP-0096:SI文件传输 我是否需要使用XEP-0096:SI文件传输?如果是这样,我如何在我需要形成的XEP-0096 XML中使用我的成功连接?在XEP-0096文档意味着有一个"哈希"属性,但我不知道该从何而来.

例如

<iq type='set' id='offer1' to='receiver@jabber.org/resource'>
  <si xmlns='http://jabber.org/protocol/si' 
      id='a0'
      mime-type='text/plain'
      profile='http://jabber.org/protocol/si/profile/file-transfer'>
    <file xmlns='http://jabber.org/protocol/si/profile/file-transfer'
          name='test.txt'
          size='1022'
          hash='552da749930852c69ae5d2141d3766b1'
          date='1969-07-21T02:56:15Z'>
      <desc>This is a test. If this were a real file...</desc>
    </file>
    <feature xmlns='http://jabber.org/protocol/feature-neg'>
      <x xmlns='jabber:x:data' type='form'>
        <field var='stream-method' type='list-single'> …
Run Code Online (Sandbox Code Playgroud)

xmpp file-transfer asyncsocket socks xmppframework

7
推荐指数
1
解决办法
2703
查看次数

在 NodeJS 服务器之间发送文件的最有效方式是什么?

介绍

假设在同一个本地网络上,我们有两个使用 Express 设置的 Node JS 服务器:服务器 A 用于 API,服务器 F 用于表单。

  • 服务器 A 是一个 API 服务器,它接收请求并将其保存到 MongoDB 数据库(文件存储为 Buffer,其详细信息存储为其他字段)
  • 服务器 F 提供表单,处理表单发布并将表单数据发送到服务器 A。

在接收服务器是 Express API 的两个 NodeJS 服务器之间发送文件的最有效方法是什么?文件大小在哪里重要?

1.HTTP方式

如果我发送的文件是 PDF 文件(不会超过 50mb),将整个内容作为字符串通过 HTTP 发送是否有效?

算法如下:

  • 服务器 F 使用https://www.npmjs.com/package/multer处理文件请求并保存文件
  • 然后服务器 F 读取此文件并通过https://github.com/request/request以及文件的一些详细信息发出 HTTP 请求
  • 服务器 A 收到此请求并将文件内容从字符串转换为 Buffer 并将记录与文件详细信息一起保存在 MongoDB 中。

在这个算法中,Server A(存储到MongoDB时)和Server F(发送到Server A时)都将文件读入内存,两台服务器之间的请求大小与文件大小相同. (50Mb 的请求可以吗?)

但是,需要考虑的一件事是 - 使用这种方法 - 我将在整个过程中使用 ExpressJS 风格的 API,这将与应用程序的其余部分保持一致,其中/list,/details请求也在路由中定义。我喜欢一致性。

2.Socket.IO方式

与此算法相反,我探索了https://github.com/nkzawa/socket.io-stream方式,它脱离了服务器 A …

file-transfer node.js express

7
推荐指数
1
解决办法
1万
查看次数

SCP 无法在 EC2 (AWS) 中工作

我可以通过 SSH 连接到 EC2 实例:

\n\n
ssh -i "my_key.pem" ec2-user@my-public-ip\n
Run Code Online (Sandbox Code Playgroud)\n\n

但是,scp 不起作用:

\n\n
scp -r \xe2\x80\x93i "my_key.pem" ./my_file ec2-user@my-public-ip:/home/ec2-user/my_file\n
Run Code Online (Sandbox Code Playgroud)\n\n
\n

权限被拒绝(公钥)。
\n 失去连接

\n
\n\n

我也尝试过使用公共实例 DNS,但没有任何变化。

\n\n

知道为什么会发生这种情况以及如何解决吗?

\n

linux ssh scp amazon-ec2 file-transfer

7
推荐指数
1
解决办法
9330
查看次数

如何在Google Compute Engine虚拟机上打开浏览器

如何在VM实例中打开浏览器?以及这有多安全/不安全?

实例是Ubuntu 16.04

我知道访问VM的唯一方法是通过Google在云控制台网站上提供的SSH按钮。

我想定期使用它,以可视方式显示页面并单击鼠标。(以新手的身份对待我,我在Linux和VM上都是全新的。我什至不知道还有另一种控制浏览器的方法)


内容:

I need to download a huge amount of data from websites to my virtual machine on Google Compute Engine.

I know there are solutions on the web to transfer files from my machine, but my internet really sucks, it's not feasible.

I also know there are some commands like wget using copied cookies to download some files.

Even though, I feel I'll be needing to use a browser, especially because I want …

browser virtual-machine file-transfer google-compute-engine

7
推荐指数
1
解决办法
3580
查看次数