Nếu tôi mở một tệp zip lớn (250MB) qua lớp ZipFile và cố gắng đọc các mục nhập. Điều này hoạt động tốt trên 2.x trong giả lập và phần cứng thực. Nếu tôi sử dụng chính xác một số mã trên máy tính bảng của tôi (Asus Transformer chạy 4.0.3) hoặc trình mô phỏng (3.2), tôi không thể đọc bất kỳ mục nhập nào. Hàm size() của lớp ZipFile luôn trả về số không và ZipFile không trả về bất kỳ mục zip nào. Ngay cả một ứng dụng zip đi kèm với ROM trên máy tính bảng của tôi không thể đọc bất kỳ mục nhập nào. Tệp zip không bị hỏng. Tôi đã kiểm tra nó.Android 3.x + Java ZipFile Class - Không thể đọc ZipEntries từ các tệp lớn
Mã để đọc từ ZipFile hoạt động tốt trên tất cả các phiên bản có tệp zip nhỏ hơn. Điều gì đã thay đổi giữa 2.x và 3.x/4.x ??
My Testfile là C64Music.zip từ Bộ sưu tập HighVoltage Sid. Nó chứa hơn 40.000 tập tin và khoảng 250MB.
Tôi không biết phải nhìn vào đâu.
Bạn đã thử đọc các tệp zip khác trên Asus hoặc trình mô phỏng đang chạy 3.x/4.x chưa? Có phải vấn đề chỉ với tệp zip này không? –
Bạn có nuốt bất kỳ ngoại lệ nào không? Nếu không, getName() trả về tên của tệp zip? (Thử nghiệm đơn giản, nhưng có thể bật lên một cái gì đó đáng ngạc nhiên). Bạn có nhận được bất kỳ kết quả nào khác không nếu bạn mở zip có hoặc không có cờ OPEN_READ? –
Tôi không chắc chắn, bạn có thể thử với 'JarFile'? ... –