2013-05-27 82 views
6

tải Tôi tải thành công một file pdf từ internet và sau đó tôi mở tải folder sử dụng tiếp cận mục đích sau:android không thể mở tập tin

Intent pdfFileIntent = new Intent(); 
pdfFileIntent.setAction(DownloadManager.ACTION_VIEW_DOWNLOADS); 
ctx.startActivity(pdfFileIntent); 

Mã này nằm trong phương pháp onReceive() của một BroadcastReceiver tôi được tạo để xử lý các sự kiện tải xuống hoàn chỉnh. Tải xuống hoàn tất và thành công (Tôi có thể thấy trạng thái tải xuống trong thư mục tải xuống, được mở ngay sau khi quá trình tải xuống hoàn tất, như mong đợi). Tuy nhiên, khi tôi nhấp vào tệp vừa tải xuống, một hộp thoại khác bật lên yêu cầu tôi chọn ứng dụng mà tệp sẽ được mở (tôi có thể chọn Adobe Reader hoặc Quickoffice). Khi tôi chọn Adobe Reader, tôi gặp lỗi: "Đường dẫn tài liệu không hợp lệ" và khi tôi chọn Quickoffice, tôi gặp lỗi: "Không thể mở tệp".

Điều này cực kỳ khó chịu đặc biệt vì thư mục tải xuống và quá trình tải xuống và quản lý tệp đã tải xuống hoàn toàn nằm ngoài tầm tay của tôi - Android nhận thức được tệp trong thư mục tải xuống khi trình bày chúng cho tôi. là nó không vượt qua một con đường hợp lệ? Chuyện gì vậy? Để làm rõ mọi thứ, tôi không chỉ định đường dẫn nào trong mã của mình - Android đã chọn đường dẫn để lưu tệp. Và tôi thậm chí có thể thấy rằng tệp có kích thước hợp lý trong KB, có nghĩa là tệp không trống và tệp này chắc chắn là tệp pdf (đuôi mở rộng .pdf).

Vui lòng trợ giúp. Cảm ơn trước.

+0

sau khi tải xuống ..vào thư mục tải xuống (không phải từ ứng dụng của bạn) bằng trình duyệt tệp và kiểm tra xem nó có đang mở hay không .. – bakriOnFire

+0

Cảm ơn bakriOnFire. Thực tế là tệp đã tải xuống không xuất hiện trong thư mục Tải xuống khi tôi điều hướng đến tệp bằng trình khám phá tệp của thiết bị ... có thể nó nằm trong một thư mục khác? Tại sao tôi có thể xem tệp trong Hoạt động được hiển thị? Nếu nó ở đó có nghĩa là Android nhận ra sự tồn tại của nó, phải không? – shai

+0

đăng mã ur mà u sử dụng để tải xuống và lưu trong thư mục tải xuống .. – bakriOnFire

Trả lời

0

And I can even see that the file has a reasonable size in KBs, which means it's not empty and it's definitely a pdf file (.pdf extension).

Thực tế là tệp có phần mở rộng PDF không nhất thiết phải là tệp PDF hợp lệ! Di chuyển tập tin vào máy tính của bạn và xem liệu bạn có thể mở nó ở đó hay không. Bạn có thể gặp lỗi trong mã thực hiện tải xuống, khiến một số nội dung không hợp lệ được ghi vào tệp.

+0

Thực ra, tôi đã thử mở các tệp pdf đã tải xuống trên một thiết bị khác đã cài đặt Polaris Office và hoạt động tốt trên thiết bị đó. Đó chắc chắn là pdf tôi mong đợi. Nhưng trên thiết bị của tôi nó chỉ không mở với các lỗi ở trên. – shai

+0

Nhân tiện, thiết bị gốc (trên đó xảy ra lỗi) là hệ điều hành Android 2.3.5, thiết bị Samsung Galaxy Young (1) và thiết bị thành công trong việc mở tệp là Hệ điều hành Android 4.0.1, Samsung Galaxy 2 thiết bị. Hy vọng rằng sẽ giúp. – shai

Các vấn đề liên quan