The developer of the Anipocket application for Android has eliminated the need for a server-side video proxy. By utilizing the Flutter framework and the ExoPlayer-based video_player package, the app can now handle custom HTTP headers directly, bypassing browser-based restrictions that previously required server-side intervention.
The application includes a custom downloader that manages video files without relying on ffmpeg. It supports range-based downloads for MP4 files and segment-based assembly for HLS streams. To ensure reliability, the app stores metadata rather than direct URLs, allowing it to refresh links automatically before each download attempt or session.
The project uses a robust testing suite based on real-world fixtures from various streaming services like Aniboom, Kodik, and Sibnet. This setup allows for quick identification of issues caused by changes in website layouts. The app also features a local SQLite database for tracking progress and ratings, operating entirely without user accounts.
For security and distribution, the project uses GitHub Actions to automate the build process. Each APK release is signed with a release key, verified by apksigner, and includes a Sigstore provenance attestation. This ensures that the distributed binaries are authentic and linked directly to the source code repository.
The developer noted that the application does not support encrypted HLS playlists or streams with separate audio tracks, opting for a clean failure rather than producing unplayable files. Additionally, the app lacks background download services, meaning tasks resume only when the application is actively opened by the user.






