Tôi đã viết một ứng dụng bằng API chính thức để tải lên Google drive, điều này hoạt động hoàn hảo. Tuy nhiên, tôi không thể tìm thấy cách nào để hủy tải lên. Tôi đang chạy nó trong một ASyncTask, cho đến nay tôi đã cố gắng làm cho đối tượng ổ đĩa, đường dẫn tệp, mã thông báo và một vài biến khác không có. Tôi cũng đã cố gắng để làm mất hiệu lực các mã thông báo tuy nhiên có vẻ như điều này chỉ loại bỏ nó khỏi bộ nhớ cache và không thực sự vô hiệu hóa phía máy chủ. Tôi đã gọi là hủy bỏ trên ASyncTask tuy nhiên nếu nó bị hủy bỏ một khi tải lên đã bắt đầu có vẻ như không có cách nào để ngăn chặn nó.Hủy tải lên Google Drive có thể?
Vấn đề của tôi là nếu người dùng bắt đầu tải lên tệp 100MB không có cách nào để họ hủy nó khác, sau đó bật và tắt kết nối internet của họ mà không thực tế. Đây là mã tải lên của tôi:
java.io.File jFile = new java.io.File(path); //Does not get file just info
File body = setBody(jFile, mimeType);
try
{
java.io.File mediaFile = new java.io.File(path);
InputStreamContent mediaContent =
new InputStreamContent(mimeType,
new BufferedInputStream(new FileInputStream(mediaFile)));
mediaContent.setLength(mediaFile.length());
request = drive.files().insert(body, mediaContent);
request.getMediaHttpUploader().setProgressListener(new CustomProgressListener());
File file = request.execute();
Chắc chắn có cách nào để hủy tải lên?
Tôi đã cố gắng gọi chuỗi. Phương thức ngắt() nhưng quá trình tải lên vẫn tiếp tục. Bạn có ý nghĩa gì khi tự mình triển khai chủ đề đa? – pommedeterresautee