Support for Android 4.4

Материал из SmartPlayer
Это перевод страницы Android 4.4, он готов на 100%.

Description of the Situation

Previously, client applications on the SmartPlayer platform were developed for API versions starting from 21. Earlier versions were not supported. However, a task emerged to adapt the client application for Android version 4.4 and to create a solution on it that allows stable playback of simple types of broadcasts. This solution was developed and implemented in practice.

It is recommended to use newer devices that meet the minimum requirements for client applications (Android 7.0)

Operation Logic

For implementation, a scenario was considered that included:

  • playback of video and graphical content;
  • launching a broadcast in a single zone.

During the preparation of the client application on a device with Android 4.4 OS, client application version 1.67 was used. This version included many functions that overloaded the hardware of the old device.

Implementation Challenges

  1. Version 4.4 has decoding issues. During refinement, the decoder and the decoding process were modified for low-level interaction.
  2. Network interaction and certificate handling issues were addressed during development. To ensure correct operation of security protocols, a separate library was used that added the necessary certificates.
  3. Memory leak issue. Due to the technical characteristics of the device, there were persistent memory overflow problems. The connection handling was kept via rxJava, while playback was implemented using coroutines.

Limitations

Android 4.4 KitKat is quite an old OS, and the implementation of the client application comes with many limitations. Known limitations at this time:

  • the device can play only one content item in one zone;
  • supports playback of graphical and video content;
  • does not operate in multi-zone mode;
  • working with audio content is not recommended due to excessive load on the device.