Monday, August 3, 2015

Change default launcher on Letv S1

I recently acquired a Letv S1 (Letv One, Letv X600). It's a great device with the beefy Mediatek X10 SoC, and generally great hardware.

The custom Android version is also quite good, but my interest in watching TV and movies on my phone is limited so I don't need a launcher that reserves a lot of space for this.

But for some reason they lock down the selection of application for activities. Making it impossible to select launcher and browser the normal Android way. Luckily is rather easy to solve this.

These modifications requires a rooted device, but there are plenty instructions on the net describing how to root the device.

In the "etc" folder there is a file called "preferred_activity.xml". This file defines what applications should be used for the different operations. To allow normal selection of application you just remove the items from this file. A reboot might be required afterwards, but thats it.

Unless you know what you are doing, you probably shouldn't delete text from random files in the etc folder, so consider yourself warned.

This is roughly how I would do it manually:
  1. adb pull /etc/preferred_activity.xml
  2. Edit the file and remove default activities you don't want.
  3. Start adbd insecure
  4. Remount system
  5. adb push preferred_activity.xml /etc
  6. Reboot phone
I'm uncertain of wither the file can just be deleted or not. But removing elements should at least be safe enough.

You could use this technique to enable 3rd party handling of PDF, media, sms, office documents. etc. As they seem to define quite a lot of action handling there.

Update:
As a side note, it is probably easier to just change the default applications from the application configuration view. I just noticed there is a "Default apps" option on the bottom left of the view. From there it's possibe to change default applications. The option might have been there all along without me ever noticing it, and just expecting to find everything in the normal place.

But then again, it's more fun deleting system files (I verified in code that it's safe to do so).