0

Android デバイスから Kinvey File Storage にファイルをアップロードしようとしていますが、次のようになります。

java.net.SocketTimeoutException: Read timed out.

Kinvey コンソールにアップロードされたファイルが表示されますが、破損しており、ダウンロードしようとしたときのファイル サイズは 10 MB ですが、元のファイル サイズは ~50 MB です。コードは次のとおりです (ドキュメントにかなり近い)。

File file = new File(Environment.getExternalStorageDirectory(), "images.zip");

FileMetaData metadata = new FileMetaData();  //create the FileMetaData object
metadata.setId("images");
metadata.setFileName("images.zip");
AccessControlList acl = new AccessControlList();
acl.setGloballyReadable(true);
metadata.setAcl(acl);

mKinveyClient.file().upload(metadata, file, new UploaderProgressListener() {

    @Override
    public void onSuccess(Void arg0) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onFailure(Throwable arg0) {
        // TODO Auto-generated method stub
    }

    @Override
    public void progressChanged(MediaHttpUploader uploader) throws IOException {
    }
});

同じ質問をここ(Kinvey サポート フォーラム) に投稿しました。

アップデート

ewilly の回答に続いて、いくつかのテストを行いました。

  • ファイルをアップロードしました〜9mb。正常に動作します。ダウンロードして抽出できるファイルは破損していません。正しいファイル サイズが表示されます。
  • ファイルをアップロードしました ~19mb、socketTimeoutException なしでアップロードします。しかし、アップロードされたファイルが破損しています。ダウンロードすると、ファイルサイズが10mbと表示されます。
  • 以前のケースは、依然としてファイル サイズ ~ 50mb を表しています。
4

2 に答える 2

0

Web サイトの FAQ を読みましたkinvey。これはあなたを助けるかもしれません:

ファイルが大きすぎると思います。APIではkinvey、20MB 未満のファイルのみをインポートできます。この場合、ファイルをチャンクに分割するか、REST API を使用してインポートするスクリプトを作成できます。

于 2013-12-05T08:13:54.640 に答える