2.1. Chức năng duyệt
Phân tích chức năng: chức năng duyệt, cho phép người dùng có thể nhìn thấy được
các tập tin và thư mục trong thư mục hiện hành, thực hiện các thao tác chuyển đổi giữa các thư mục. Đồng thời, chức năng cung cấp một số thông tin về các tập tin và thư mục như: kiểu tập tin, dung lượng tập tin và quyền hạn của tập tin.
Xây dựng chức năng:
Sử dụng ListView của Android để liệt kê các tập tin/thư mục có trong thư mục hiện hành
Khi có sự thay đổi thư mục hiện hành, tức người dùng nhấn vào một thư mục hiển thị trên màn hình, thì thư mục hiện hành được thay đổi sang thư mục vừa chọn
Liệt kê các tập tin có trong thư mục hiện hành sau đó lưu vào ArrayList để hiển thị bằng ListView
Sử dụng một ArrayAdapter để ánh xạ dữ liệu từ ArrayList vào vị trí tương ứng trên ListView
Thiết kế một file XML cho việc hiển thị từng dòng trong ListView, mỗi dòng trên ListView hiển thị các thông tin như: hình ảnh cho tập tin, tên tập tin, quyền hạn trên tập tin và dung lượng của tập tin đó.
2.2. Chức năng sao chép
Phân tích chức năng: chức năng năng sao chép thực hiện việc sao chép một hay nhiều tập tin đến một thư mục khác. Đảm bảo công việc sao chép có thể thực hiện được với nhiều tập tin được sao chép cùng lúc mà không làm ứng dụng gặp lỗi Android not responding.
Xây dựng chức năng:
Việc copy một tập tin hay nhiều tập tin phải được thực hiện ở background activity để tránh lỗi Android not responding. Để giải quyết vấn đề này, xây
Trần Đức Trình và Trần Hoàng Quân – Lớp 09T4 – Nhóm 10
dựng lớp BackgroundWork thừa kế từ lớp AsyncTask để thực hiện việc sao chép
Thực hiện việc copy thông qua lớp FileManager (lớp định nghĩa tấc cả các thao tác trên tập tin), sử dụng BufferInputStream để đọc nội dung tập tin nguồn. Trong trường hợp chế độ multi-select (lựa chọn nhiều file), khi người dùng nhấn vào một tập tin trên danh sách thì lưu đường dẫn tập tin lại
Tạo một tập tin mới trong thư mục đích với tên trùng tên với tập tin nguồn, sau đó ghi nội dung đọc được vào tập tin này
Nếu việc copy lỗi thì hàm copy định nghĩ trong lớp FileManager trả về giá trị -1, thành công thì trả về giá trị 0.
2.3. Chức năng di chuyển
Phân tích chức năng: chức năng năng di chuyển thực hiện việc di chuyển một hay nhiều tập tin đến một thư mục khác. Đảm bảo công việc di chuyển có thể thực hiện được với nhiều tập tin được di chuyển cùng lúc mà không làm ứng dụng gặp lỗi Android not responding (ANR).
Xây dựng chức năng:
Việc copy một tập tin hay nhiều tập tin phải được thực hiện ở background activity để tránh lỗi Android not responding. Để giải quyết vấn đề này, xây dựng lớp BackgroundWork thừa kế từ lớp AsyncTask để thực hiện việc sao chép
Thực hiện việc copy thông qua lớp FileManager (lớp định nghĩa tấc cả các thao tác trên tập tin), sử dụng BufferInputStream để đọc nội dung tập tin nguồn. Trong trường hợp chế độ multi-select (lựa chọn nhiều file), khi người dùng nhấn vào một tập tin trên danh sách thì lưu đường dẫn tập tin lại
Tạo một tập tin mới trong thư mục đích với tên trùng tên với tập tin nguồn, sau đó ghi nội dung đọc được vào tập tin này
Nếu việc copy lỗi thì hàm copy định nghĩ trong lớp FileManager trả về giá trị -1, thành công thì trả về giá trị 0.
Sau khi thực hiện xong thao tác copy tập tin, xóa các tập tin nguồn đi.
2.4. Chức năng xóa
Phân tích chức năng: chức năng năng xóa thực hiện việc xóa một hay nhiều tập tin.
Đảm bảo công việc xóa có thể thực hiện được với nhiều tập tin được xóa cùng lúc mà không làm ứng dụng gặp lỗi Android not responding.
Trần Đức Trình và Trần Hoàng Quân – Lớp 09T4 – Nhóm 10
Việc xóa một tập tin hay nhiều tập tin phải được thực hiện ở background activity để tránh lỗi Android not responding. Để giải quyết vấn đề này, xây dựng lớp BackgroundWork thừa kế từ lớp AsyncTask để thực hiện việc sao chép
Thực hiện việc xóa thông qua lớp FileManager (lớp định nghĩa tấc cả các thao tác trên tập tin), trong trường hợp chế độ multi-select (lựa chọn nhiều file), khi người dùng nhấn vào một tập tin trên danh sách thì lưu đường dẫn tập tin lại
Nếu việc xóa lỗi thì hàm delete định nghĩ trong lớp FileManager trả về giá trị -1, thành công thì trả về giá trị 0.
2.5. Chức năng tạo thư mục
Phân tích chức năng: thực hiện công việc tạo một thư mục mới trong thư mục hiện
hành
Xây dựng chức năng:
Thực hiện việc thông qua lớp FileManager thừa kế từ lớp File của Android để tạo thư mục.
2.6. Chức năng xem thông tin thư mục
Phân tích chức năng: chức năng xem thông tin thư mục cho phép người dùng xem
các thông tin của thư mục hiện hành như tên thư mục, đường dẫn thư mục, số lượng tập tin và thư mục có trong, lần sửa cuối và kích thước thư mục.
Xây dựng chức năng:
Xây dựng lớp BackgroundWork thừa kế từ lớp AsyncTask để thực hiện việc xem thông tin của thư mục hiện hành
Lớp StatFs cho biết thông tin về kích thước thư mục
Lớp File cho biết thông tin các tập tin có trong thư mục hiện hành và lần sửa cuối.
2.7. Chức năng tìm kiếm tập tin
Phân tích chức năng: chức năng tìm kiếm tập tin thực hiện việc tìm kiếm một tập
tin/thư mục dựa vào dữ liệu mà người dùng nhập vào. Kết quả được trả về dưới dạng danh sách, khi nhấn vào một kết quả trên danh sách trả về, trình duyệt tập tin sẽ chuyển thư mục hiện hành về thư mục chứa kết quả đó. Tất nhiên công việc tìm kiếm chúng ta phải tránh lỗi Android not responding nếu như thời gian tìm kiếm quá lâu.
Trần Đức Trình và Trần Hoàng Quân – Lớp 09T4 – Nhóm 10
Xây dựng lớp BackgroundWork thừa kế từ lớp AsyncTask để thực hiện việc tìm kiếm tập tin, thực hiện việc tìm kiếm thông qua lớp FileManager (lớp định nghĩa tấc cả các thao tác trên tập tin)
Kết quả tìm kiếm trả về một ArrayList để hiển thị lên màn hình, nếu không tìm thấy thì thông báo không tìm thấy. Kết quả trả về chứa đường dẫn của các tập tin/thư mục tìm thấy, nếu người dùng nhấn vào một kết quả thì sử dụng chức năng duyệt về thư mục chứa kết quả đó.
Trần Đức Trình và Trần Hoàng Quân – Lớp 09T4 – Nhóm 10
CHƢƠNG 4: TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ