FilzaFileManager là một ứng dụng quản lý tệp Android hiện đại được phát triển bởi nhóm sinh viên CNTT. Ứng dụng cung cấp giao diện thân thiện để duyệt, xem và quản lý các loại tệp khác nhau trên thiết bị Android, tích hợp với Google Drive để đồng bộ hóa dữ liệu.
- Xây dựng ứng dụng quản lý tệp hoàn chỉnh với giao diện Material Design 3v
- Hỗ trợ xem và chỉnh sửa nhiều loại tệp (hình ảnh, video, âm thanh, PDF, văn bản)
- Tích hợp Google Drive để đồng bộ hóa và sao lưu dữ liệu
- Cung cấp trải nghiệm người dùng mượt mà và trực quan
- Áp dụng các kiến trúc và design pattern hiện đại trong Android development
- Duyệt tệp: Giao diện danh sách và lưới với sắp xếp theo tên, ngày, kích thước
- Tạo thư mục: Tạo thư mục mới trong bất kỳ vị trí nào
- Nhập tệp: Import tệp từ bộ nhớ thiết bị
- Chế độ chọn nhiều: Chọn và thao tác với nhiều tệp cùng lúc
- Tìm kiếm: Tìm kiếm tệp trong thư mục hiện tại
- Hình ảnh: Xem ảnh với zoom, vẽ, highlight, lưu chỉnh sửa
- Hỗ trợ: JPG, JPEG, PNG, GIF, BMP, WebP
- Video: Phát video với Picture-in-Picture, điều khiển đầy đủ
- Hỗ trợ: MP4, MKV, 3GP, AVI, MOV, WMV, FLV, WebM
- Âm thanh: Phát nhạc với giao diện đẹp, hiển thị metadata
- Hỗ trợ: MP3, WAV, OGG, M4A, FLAC, AAC
- PDF: Xem PDF với zoom, highlight, xuất trang
- Văn bản: Xem file text với tìm kiếm, đánh số dòng
- Hỗ trợ: TXT, LOG, MD, JSON, XML, CSV
- Đăng nhập: Xác thực qua Google Sign-In
- Duyệt tệp: Xem và duyệt tệp trên Google Drive
- Tải lên: Upload tệp từ thiết bị lên Google Drive
- Tải xuống: Download tệp từ Google Drive về thiết bị
- Đồng bộ: Quản lý tệp giữa thiết bị và cloud
- Material Design 3: Giao diện hiện đại với Material You
- Dark/Light theme: Hỗ trợ chế độ tối và sáng
- Responsive: Tương thích với nhiều kích thước màn hình
- Animations: Hiệu ứng chuyển động mượt mà
- Accessibility: Hỗ trợ người dùng khuyết tật
- Java 11: Ngôn ngữ lập trình chính
- Android SDK: Framework phát triển Android
- Gradle: Hệ thống build và quản lý dependencies
- MVVM (Model-View-ViewModel): Kiến trúc UI
- Repository Pattern: Quản lý dữ liệu
- Factory Pattern: Tạo đối tượng
- Observer Pattern: Reactive programming với LiveData
- Strategy Pattern: Xử lý các loại tệp khác nhau
- AndroidX: Thư viện Android hiện đại
- Material Components: UI components theo Material Design
- PhotoView: Zoom và pan cho hình ảnh
- Google Play Services: Xác thực và Google Drive API
- Google API Client: Tương tác với Google APIs
- Google Sign-In: Xác thực người dùng
- Google Drive API v3: Quản lý tệp trên Drive
- OAuth 2.0: Bảo mật xác thực
- Android: API level 30 (Android 11) trở lên
- RAM: Tối thiểu 2GB
- Storage: 50MB cho ứng dụng
- Internet: Cần kết nối cho tính năng Google Drive
- Android Studio: Arctic Fox trở lên
- JDK: Version 11
- Gradle: Version 8.9.0
-
Clone repository
git clone https://github.com/dinhno12313/FilzaFileManager cd FilzaFileManager -
Cấu hình Google Drive API
- Tạo project trên Google Cloud Console
- Bật Google Drive API
- Tạo OAuth 2.0 credentials
- Thêm file
google-services.jsonvào thư mụcapp/
-
Build project
./gradlew build
-
Chạy ứng dụng
./gradlew installDebug
- Mở Google Cloud Console
- Tạo project mới hoặc chọn project có sẵn
- Bật Google Drive API
- Tạo OAuth 2.0 Client ID
- Download file
google-services.json - Đặt file vào thư mục
app/của project
- Khởi động ứng dụng: Mở FilzaFileManager từ launcher
- Duyệt tệp: Chạm vào thư mục để mở, chạm vào tệp để xem
- Tạo thư mục: Chạm vào nút "+" ở góc phải dưới
- Nhập tệp: Chạm vào nút upload ở góc trái dưới
- Chạm vào file ảnh để mở ImageViewer
- Zoom: Chạm đúp hoặc pinch để zoom
- Vẽ: Chạm vào nút bút để vẽ lên ảnh
- Highlight: Chạm vào nút highlight để tô sáng
- Lưu: Chạm vào nút save để lưu chỉnh sửa
- Chạm vào file âm thanh để mở MusicPlayer
- Điều khiển: Play/Pause, Next/Previous, Seek
- Metadata: Hiển thị tên bài hát, nghệ sĩ
- Album art: Hiển thị ảnh album nếu có
- Chạm vào file PDF để mở PdfViewer
- Điều hướng: Vuốt để chuyển trang
- Zoom: Pinch để zoom in/out
- Highlight: Tô sáng nội dung quan trọng
- Xuất: Xuất trang hoặc toàn bộ PDF
- Chạm vào file text để mở TxtViewer
- Tìm kiếm: Sử dụng thanh tìm kiếm
- Đánh số dòng: Bật/tắt hiển thị số dòng
- Font size: Tăng/giảm kích thước chữ
- Đăng nhập: Chạm vào menu → Google Drive
- Duyệt: Xem tệp trên Google Drive
- Upload: Chạm vào nút upload để tải lên
- Download: Chạm vào tệp để tải xuống
- Chạm vào menu → Select
- Chọn các tệp cần thao tác
- Chạm vào Actions để thực hiện thao tác
- Chạm Cancel để thoát chế độ chọn
- Trưởng nhóm: [Nguyễn Quang Định] - [2251061741]
- Thành viên 1: [Phạm Đức Đô] - [2251061742]
- Thành viên 2: [Bùi Trung Kiên] - [2251061810]
FilzaFileManager là dự án đồ án nhóm được phát triển cho mục đích học tập và nghiên cứu. Dự án này được phân phối dưới giấy phép học thuật và KHÔNG được sử dụng cho mục đích thương mại.
- Mục đích: Học tập và nghiên cứu
- Sử dụng thương mại: Không được phép
- Phân phối: Chỉ được phép trong phạm vi học thuật
- Bản quyền: Thuộc về nhóm phát triển
- PhotoView: Copyright (c) 2011-2019 Chris Banes
- Material Components: Copyright (c) Google LLC
- Google APIs: Copyright (c) Google LLC
Dự án này được phát triển cho mục đích học tập. Nếu bạn muốn đóng góp ý tưởng hoặc báo cáo lỗi, vui lòng liên hệ với nhóm phát triển.
- Email: [dinhno12313@gmail.com]
- GitHub: [github.com/dinhno12313]
- Trường: [Đại Học Thuỷ Lợi]
- Khoa: [Công Nghệ Thông Tin]
Lưu ý: Dự án này được phát triển bởi sinh viên CNTT cho mục đích học tập. Vui lòng tôn trọng bản quyền và không sử dụng cho mục đích thương mại.