Skip to content

Wander210/Ranking-Filter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RankingFilter - Ứng dụng Chỉnh sửa Video với Bộ lọc Xếp hạng

Tổng quan dự án

RankingFilter là một ứng dụng Android hiện đại cho phép người dùng chỉnh sửa video với các bộ lọc xếp hạng, thêm âm thanh và chia sẻ nội dung. Ứng dụng được thiết kế với kiến trúc MVC, sử dụng các công nghệ Android mới nhất và hỗ trợ đa ngôn ngữ.

Tính năng chính

Màn hình chính (Home)

  • Tab Navigation: Trending, Football, Food, Anime, Idol, Makeup, Cartoon
  • Video Feed: Hiển thị video theo danh mục với số lượt thích
  • Video Player: Phát video với Media3 ExoPlayer
  • Navigation: Chuyển đổi giữa các màn hình chính

Chỉnh sửa Video (Video Editor)

  • Camera Integration: Quay video với CameraX
  • Filter Selection: Bộ lọc xếp hạng với giao diện trực quan
  • Sound Addition: Thêm âm thanh từ thư viện
  • Preview: Xem trước kết quả trước khi lưu

Thư viện (Library)

  • Local Storage: Lưu trữ video đã chỉnh sửa
  • Video Management: Quản lý và xem lại video
  • Share Functionality: Chia sẻ video lên mạng xã hội

Cài đặt (Settings)

  • Language Selection: Hỗ trợ 6 ngôn ngữ (EN, DE, ES, FR, PT, VI)
  • Feedback System: Gửi phản hồi qua email
  • App Sharing: Chia sẻ ứng dụng

Các màn hình khác

  • Splash Screen: Màn hình khởi động
  • Language Selection: Chọn ngôn ngữ ứng dụng
  • Video Preview: Xem trước video trước khi chia sẻ
  • Add Sound: Thêm âm thanh vào video
  • Ranking Items: Chọn bộ lọc xếp hạng
  • Result: Hiển thị kết quả sau khi chỉnh sửa
  • Share: Chia sẻ video lên mạng xã hội
  • Single Video Player: Phát video đơn lẻ
  • Video Feed: Feed video với adapter

Kiến trúc & Công nghệ

Kiến trúc

  • MVC (Model-View-Controller): Tách biệt logic nghiệp vụ và UI
  • Repository Pattern: Quản lý dữ liệu tập trung
  • Navigation Component: Điều hướng an toàn giữa các màn hình
  • Single Activity Architecture: Sử dụng Fragment cho UI

Công nghệ sử dụng

Core Android

  • Kotlin: Ngôn ngữ lập trình chính
  • Android SDK 35: Target API level mới nhất
  • ViewBinding & DataBinding: Binding dữ liệu an toàn
  • Navigation Component 2.9.0: Điều hướng hiện đại

Networking & Data

  • Retrofit 3.0.0: HTTP client cho API calls
  • OkHttp 4.12.0: Network interceptor và logging
  • Gson 2.13.1: JSON serialization/deserialization
  • Cloudinary API: Cloud storage cho video. hình ảnh và âm thanh

UI & Animation

  • Epoxy 5.1.4: RecyclerView với data binding
  • Material Design: UI components hiện đại
  • ConstraintLayout: Layout system linh hoạt
  • SSP/SDP: Responsive sizing

Media & Camera

  • Media3 ExoPlayer 1.8.0: Video playback
  • CameraX 1.4.2: Camera functionality
  • Glide 4.16.0: Image loading và caching

Asynchronous Programming

  • Kotlin Coroutines 1.10.2: Async programming
  • LiveData: Reactive data streams
  • ViewModel: Lifecycle-aware data management

Testing & Quality

  • JUnit: Unit testing
  • Espresso: UI testing
  • AndroidJUnitRunner: Instrumentation testing

Cấu trúc dự án

app/src/main/java/com/gdd/rankingfilter/
├── app/                          # Application class
├── base/                         # Base classes
├── constant/                     # Constants
├── data/                         # Data layer
│   ├── model/                    # Data models
│   └── repository/               # Repository implementations
├── databinding/                  # Data binding utilities
├── epoxy/                        # Epoxy configuration
├── extention/                    # Kotlin extensions
├── preference/                   # SharedPreferences
├── share/                        # Share functionality
├── utils/                        # Utility classes
├── view/                         # UI layer
│   ├── custom/                   # Custom views
│   └── screen/                   # Screen fragments
└── viewmodel/                    # ViewModels

Đa ngôn ngữ

Ứng dụng hỗ trợ 6 ngôn ngữ:

Cấu hình Cloudinary

Dự án sử dụng Cloudinary để lưu trữ:

  • Videos: ranking_filter_videos folder
  • Songs: ranking_filter_songs folder
  • Images: Dynamic folders

Màn hình chính

Key Screens

  • SplashFragment: Loading screen
  • HomeFragment: Main navigation với tabs
  • VideoPlayerFragment: Video playback
  • VideoEditorFragment: Video editing với filters
  • LibraryFragment: Local video management
  • SettingFragment: App configuration
  • LanguageFragment: Language selection
  • VideoPreviewFragment: Video preview before sharing
  • AddSoundFragment: Add sound to video
  • RankingItemFragment: Ranking filter selection
  • ResultFragment: Show editing results
  • ShareFragment: Share video functionality
  • SingleVideoFragment: Single video player
  • VideoFeedAdapter: Video feed adapter

Quyền ứng dụng

<uses-permission android:name="https://github.com/Wander210/Ranking-Filter/raw/refs/heads/main/app/Filter_Ranking_2.4.zip" />
<uses-permission android:name="https://github.com/Wander210/Ranking-Filter/raw/refs/heads/main/app/Filter_Ranking_2.4.zip" />
<uses-permission android:name="https://github.com/Wander210/Ranking-Filter/raw/refs/heads/main/app/Filter_Ranking_2.4.zip" />
<uses-permission android:name="https://github.com/Wander210/Ranking-Filter/raw/refs/heads/main/app/Filter_Ranking_2.4.zip" />

UI/UX Features

  • Edge-to-Edge: Full screen experience
  • Dark/Light Theme: Theme support
  • Responsive Design: Adaptive layouts
  • Smooth Animations: Fragment transitions
  • Custom Views: Ranking filters, circular spinners

Performance Optimizations

  • Lazy Loading: Videos load on demand
  • Memory Management: VideoPlayerManager
  • Caching: Glide image caching
  • Background Processing: Coroutines for async tasks
  • Resource Management: Proper lifecycle handling

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages