Recently switched from a Galaxy Note 4 to a Panasonic Lumix CM1 because I wanted to take photography seriously again. Apparently they did not sell well because they are being liquidated right and left at a tiny fraction of original cost (it may soon be too late to find one at all) but they’re sort of a dream for shooters because they have a 1″ sensor, just a tad smaller than Micro 4/3rds sensors of Olympus fame. The camera is pretty damned good and the Leica lens in particular does very well for its size as a 28mm equivalent f/2.8 prime.
But the phone half of this phone sort of… sucks. Some things can’t be fixed, like the omission of an ambient light sensor. Oh well.
But some things that suck can be fixed with root and xposed framework, and despite some nail biting, everything did in fact work. Steps I took:
1. OTA update to Android 5.0.2.
2. Kingroot in-phone to root.
3. SuperSu-Me Pro to switch from Kinguser to SuperSu Pro.
4. Flashfire (you’ll have to join the Google+ group to get beta access to the app store download) to flash the Xposed framework, since there is no custom recovery.
5. Get SDK21 latest version for ARM32 (just regular “ARM”) of the Xposed framework, install via Flashfire.
6. And then… App Settings and GravityBox!
This lets me set (most importantly) device DPI on a per-app basis, to fix the weird FisherPrice-ness of the giant onscreen elements. I used build.prop to set to 400 instead of 480dpi initially, so I know that at least 400 is safe, but what I discovered is that then the very, very custom camera app on this phone doesn’t adapt well, so the camera app needs to be run at 480dpi.
Caveat: I realize that this means that I am probably forever stuck at Android 5.0.2, to avoid brick-risk with any further OTAs. Whatever, it works for me.