Ik ben eigenlijk nieuwsgierig geworden. Heb 3 Android devices. Op 2 devices werkt de app niet (crashed). Op 1 device wel. Alle 3 de devices zijn geroot, bootloader unlocked en draaien op dezelfde custom rom.
Kun jij eens in de logcat kijken wat je ziet wanneer de app crashed?
Ik zie namelijk in de log ASSERT(mData != NULL) als oorzaak van de crash op mijn devices. Ben benieuwd of jij hetzelfde probleem hebt. Helaas gebeurd de crash in een Library welke een onderdeel is vande horizon app.
Deze ASSERT controleert of de inhoud van mData niet leeg is. Als de inhoud van mData wel leeg is, ontstaat er een assertion failed situatie en ontstaat er een door de applicatie gegenereerde crash.
Mijn vermoeden is dat dit te maken heeft met DRM gerelateerde zaken. Het hangt een beetje ervan af op welk niveau DRM op een device is geïmplementeerd. Op Nexus devices de implementatie is op systeem niveau (en heb daar geen problemen met de horizon app). Maar op devices welke DRM hebben geïmplementeerd op bootloader niveau (i.e. DRM sleutels zijn op bootloader niveau geïmplementeerd ) hebben problemen wanneer de bootloader is ge-unlocked. De DRM sleutels worden dan namelijk gewist.
Blijkbaar maakt de Horizon App gebruik van deze DRM sleutels. Persoonlijk vind ik dit een ZEER kwalijke zaak. Waarom moet een device beschikken over unieke sleutels om de content af te spelen

Daar zijn ook andere methoden voor. Andere DRM producten maken hier geen gebruik van (Google Play Music, etc).
Ik heb hier helaas nog geen concreet bewijs van, alleen maar een vermoeden in documentatie van Google over de diverse DRM niveaus .