久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

上傳進度偵聽器未觸發(Google 驅動器 API)

Upload progress listener not fired (Google drive API)(上傳進度偵聽器未觸發(Google 驅動器 API))
本文介紹了上傳進度偵聽器未觸發(Google 驅動器 API)的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我想通過使用 Google Drive API 上傳文件的百分比來顯示進度.

I want to show progress by percent of an uploading file using Google drive API.

我的menthod之前已經成功上傳了一個文件,但是看不到上傳進度.

My menthod has successful upload a file before but It can't see upload progress.

我已經看到并添加了 this FileUploadProgressListener 但 mediaHttpUploader.getProgress() 僅顯示 0.0(進度開始)和 1.0(進度完成時).我無法及時獲得進度的百分比.

I've seen and added this FileUploadProgressListener but mediaHttpUploader.getProgress() show only 0.0 (start of progress) and 1.0 (when progress finished). I can't get percent of progress in time.

如何使它工作?

這是我的上傳代碼:

public void UploadFile(final DFile uploadFile) {
    if (!isLoggedIn()) {
        OnUploadGoogleChecked(FALSE, "Not logged in");
        return;
    }
    AsyncTask<Void, Long, String> task = new AsyncTask<Void, Long, String>() {
        java.io.File fileContent;
        FileContent mediaContent;
        com.google.api.services.drive.model.File body;
        com.google.api.services.drive.model.File file;
        private ProgressDialog mDialog;
        long mFileLen;

        @Override
        protected void onPreExecute() {
            // TODO Auto-generated method stub
            super.onPreExecute();
            mDialog = new ProgressDialog(act);
            mDialog.setMax(100);
            mDialog.setMessage("Uploading ");
            mDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
            mDialog.setProgress(0);
            mDialog.setButton("Cancel", new OnClickListener() {

                @Override
                public void onClick(DialogInterface arg0, int arg1) {
                    // TODO Auto-generated method stub

                }
            });
            mDialog.show();
        }

        class FileUploadProgressListener implements MediaHttpUploaderProgressListener {

            @Override
            public void progressChanged(MediaHttpUploader uploader) throws IOException {
                Log.d("Dolphin got percent", String.valueOf(uploader.getProgress()));
                switch (uploader.getUploadState()) {
                case INITIATION_STARTED:
                    System.out.println("Initiation Started");
                    break;
                case INITIATION_COMPLETE:
                    System.out.println("Initiation Completed");
                    break;
                case MEDIA_IN_PROGRESS:
                    System.out.println("Upload in progress");
                    System.out.println("Upload percentage: " + uploader.getProgress());
                    break;
                case MEDIA_COMPLETE:
                    System.out.println("Upload Completed!");
                    break;
                case NOT_STARTED:
                    System.out.println("Upload Not Started!");
                    break;
                }
            }
        }

        @Override
        protected String doInBackground(Void... arg0) {
            try {

                java.io.File UPLOAD_FILE = new java.io.File(uploadFile.getNameAndDir());
                // File's metadata.
                fileContent = new java.io.File(uploadFile.getNameAndDir());
                mFileLen = fileContent.length();

                InputStreamContent mediaContent2 = new InputStreamContent("image/jpeg", new BufferedInputStream(new FileInputStream(UPLOAD_FILE)));
                mediaContent2.setLength(UPLOAD_FILE.length());
                body = new com.google.api.services.drive.model.File();
                body.setTitle(fileContent.getName());
                body.setMimeType("image/jpeg");
                String parentId = null;
                body.setParents(Arrays.asList(new ParentReference().setId(uploadFile.getFileHostFolderId())));


                Drive.Files.Insert mInsert = service.files().insert(body, mediaContent2);
                MediaHttpUploader uploader = mInsert.getMediaHttpUploader();
                uploader.setDirectUploadEnabled(true);
                uploader.setProgressListener(new FileUploadProgressListener());
                file = mInsert.execute();
                if (file != null) {

                }

            } catch (UserRecoverableAuthIOException e) {

                Log.d("Dolphin got error", "not login " + e);
            } catch (IOException e) {
                e.printStackTrace();
            }
            return null;
        }


        protected void onPostExecute(String result) {
            mDialog.dismiss();
            OnUploadGoogleChecked(TRUE, "Upload complete");
        };
    };
    task.execute();
}

推薦答案

要獲得進度,必須使用 uploader.setDirectUploadEnabled(false);(而不是 true)和 uploader.setChunkSize(MediaHttpUploader.MINIMUM_CHUNK_SIZE); 或任何必須是 MediaHttpUploader.MINIMUM_CHUNK_SIZE 的乘積的值,否則會出錯.

To get progress, you must use uploader.setDirectUploadEnabled(false); (instead of true) and uploader.setChunkSize(MediaHttpUploader.MINIMUM_CHUNK_SIZE); or any value which must be the multiply of MediaHttpUploader.MINIMUM_CHUNK_SIZE, else it will cause error.

這篇關于上傳進度偵聽器未觸發(Google 驅動器 API)的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Save file in specific folder with Google Drive SDK(使用 Google Drive SDK 將文件保存在特定文件夾中)
Google Drive Android API - Invalid DriveId and Null ResourceId(Google Drive Android API - 無效的 DriveId 和 Null ResourceId)
Google drive api services account view uploaded files to google drive using java(谷歌驅動api服務賬戶查看上傳文件到谷歌驅動使用java)
Google Drive service account returns 403 usageLimits(Google Drive 服務帳號返回 403 usageLimits)
com.google.api.client.json.jackson.JacksonFactory; missing in Google Drive example(com.google.api.client.json.jackson.JacksonFactory;Google Drive 示例中缺少)
Check progress for Upload amp; Download (Google Drive API for Android or Java)(檢查上傳和進度下載(適用于 Android 或 Java 的 Google Drive API))
主站蜘蛛池模板: 免费日韩网站 | 国产一级在线 | 中文字幕在线免费观看 | 91.色| 日韩精品 | 精品久久久久久久久久久久久久久久久 | 无码日韩精品一区二区免费 | 日本在线黄色 | 男女网站免费观看 | 天堂精品视频 | 国产乱码精品一品二品 | 精品欧美在线观看 | 精品国产一区二区三区久久 | 九色视频网站 | 久久久综合久久 | 日本中文字幕在线视频 | 性色综合| 欧洲精品视频一区 | 视频一区二区三区中文字幕 | 麻豆久久 | 精品av | 欧洲国产精品视频 | 51ⅴ精品国产91久久久久久 | 精品一区二区三区四区视频 | 亚洲日韩中文字幕 | 国产精品久久7777777 | www.日本在线 | 性色av一区二区三区 | 一区二区三区四区免费视频 | 国产精品99视频 | 欧美高清性xxxxhdvideosex | 欧美激情一区二区三级高清视频 | 国产免费拔擦拔擦8x高清 | 欧美激情一区二区三级高清视频 | 久久久久久国产精品免费免费 | 国产精品久久久久久妇女6080 | 国产区在线| 国产精品久久久久久久久久99 | 美日韩免费视频 | 欧美日韩一区二区在线播放 | 亚洲一区二区在线免费观看 |