Android header

Air Playit and IPv6

Air PlayitI was looking for a way to stream my desktop videos to my N7 when I discovered Air Playit.

Despite it well well finished website, the Android application is really painful. From the first steps, the app forces close. Don’t think to use auto discovery to find your airplay server without crash. And add manually a server ? Crash also.

I grabbed an USB plug to check logcat and I saw NullPointerException on String manipulation. A NPE causing app crash ? The start of pain… A quick look into smali code confirmed my thoughts: the app tried to split an IPv6 with  « . » (dot) separator… Quick fixing (in smali), recompilating and packing to skip IPv6 allowed me to add manually a server. I have at last listed my movies on my N7.

Hopeful, I tried to read a stream a content. No way. Still blank screen with audio. And without app source, I don’t have the courage to fix the software decoder… (and why the app does not use Intent to use my media reader instead of the crappy embedded one ?). Damn.

The pain continues with the ugly GUI (why use so many resources to get iOS look and feel on Android ?), the crash when failing the SD card detection (whereas Google discourage manufactors to add them to new device) and the developer team which does not answer to the fourteen pages of users complaining about app crash.

Finally, I use Windows sharings, Solid Explorer (with Samba) and MX player (with hardware stream decoder). It works, does not load my computer with encoding and save my batery. What else ?