[TOOL] Google Play DPI Fix (Custom DPI, Modded GSF, GB, ICS, JB) - v1.4b (20/5/13)
I know I should be working more on APK Batch Installer Tool, but I needed a break from it for a while (got myself stuck in some nasty code), and I decided to make an app for something that has been bothering me for a while now:
A lot of us at XDA know about build.prop modification to change our device's DPI to something else, so that we have more real estate. It is just awesome, simply put. The problem with doing that is that some apps in Play Store don't show up, and you can only get around this by manually downloading installing a modded Play Store, and even then, the settings won't stick without a modded Google Service Framework along with that.
It's a tiring and tedious process, and one that many people give up on, and that's why I made this tool. Now, What's so different about this tool than the rest? I'll shortly explain. The difference comes in the fact that it does not require you to download any modded files into your device. It takes existing Play Store and Google Service Framework APKs on your device, decompiles them, mods them, compiles them back, signs them, zipaligns them and certifies them... ALL AUTOMATICALLY!
I could go on all day, but all I'll have to say is that, if you like running a Custom DPI on your device, I highly recommend you give this a shot, and give me your feedback
Tested to be working on Gingerbread, Ice Cream Sandwich and Jellybean (up to 4.2.1 on my HTC Sensation)
Make sure you're using unaltered stock versions of Google Play Store and Google Service Framework to avoid problems
Why Custom DPI? Well, here's why
More real estate, smaller fonts, more on screen at any given time.
-= Requirements =-
- A PC obviously :P
- A Rooted Device
- Micro USB cable to hook your device into your PC
- USB drivers for your device (required for ADB installing)
- USB Debug Mode enabled on your device
- Java Runtime Environment installed on your PC (x86 aka 32-bit as this is a 32-bit application)
- Busybox Installed
- Root Access set to 'Apps and ADB' in Developer Options on certain devices
-= Limitations =-
- Requires that Market be named Phonesky.apk and GSF as GoogleServiceFramework.apk
- Works best if not only with untouched/ unaltered originals of Phonesky.apk and GoogleServiceFramework.apk
- Currently does not work with Odexed files
v1.4b - May 20, 2013
: Application now detects Vending.apk, and renames it to Phonesky.apk.
: Added detection for Busybox not installed
: Added detection for multiple Play Store updates (com.android.vending-2, 5, 8 etc)
: Updated aapt and adb up to 20th May 2013
: Changed Java Error Message to be more descriptive.
: Bug where pressing 'OK' when Error message that Phonesky or GoogleServicesFramework couldn't be found doesn't stop the program, should be fixed now
v1.4a - April 1, 2013
: Silly mistake of mine caused the program to halt :| oops. Fixed.
v1.4 - April 1, 2013
: Restore to originals
: Makes /data/local/tmp if non existant.
: Prevented some application stoppages when pulling files
: Fixed Bug with wiping Play Store Data
: Removed some extra unrequired commands that may have been causing FC's on some devices
: 'Cancel' button not really cancelling fixed
Thanks to darkguy2008 and corkythetard for their help and support
v1.3c - March 25, 2013
: Added removal of original files to prevent dummy file errors (fixes some compatibility errors)
: Cancelling doesn't stop on some cases.
: Moved Adb Kill to exit of app
Many thanks to xda user dt192 for helping me with this new version, and the past version.
v1.3b - March 20, 2013
: Fixed error of not finding updated files on some devices, hopefully helps to fix even more "non-compatible" problems
: Added more error handlers for missing files/ insufficient write permissions, more detailed errors
v1.3a - March 16, 2013
: More reliable process killing and locating files
: Updated Apktool to 1.5.2 (Smaller Filesize)
: New method for pulling files off system (should fix some pull errors)
v1.3 - March 6, 2013
: App now checks for Play Store/ Framework updates. These are turned into system apps. This also fixes compatibility issues with 3.10.14
: Added process killing for play store and framework
: Added bit of code to target only USB devices and not emulated ones (Thanks for scar45 for the tip and reminder)
: Changed Temp Dir to /data/local/tmp for hopefully better compatibility (some devices don't seem to have /sdcard)
v1.2b - March 6, 2013
: Moved section that mounts system as RW up before apk pulling. Should help with some devices getting apk not found pull errors
v1.2a - February 7, 2013
: More descriptive messages when pulling files from device. Installation will abort if files are not found.
v1.2 - February 5, 2013
: New Error Handler should now give descriptive information to the problem, as well as an option to retry.
: Added permissions settings for APK, to hopefully solve more force closes.
: Changed Root Access technique to increase device compatibility
v1.1 - February 4, 2013
: NEW TECHNIQUE IN BUILDING THE APKS SHOULD NOW MEAN NO MORE FORCE CLOSES! (Also it's 7:18am and I haven't slept yet)
v1.0a - February 3, 2013
: Removed need for framework-res.apk and installation of framework.
: Fixed possible error that caused the system to hit Force Closes
-= To Do=-
-More descriptive Errors.
Is Packed with:
7z Command line
Apktool (credits to iBotPeaches and brut.all for their excellent work on this)
The usual Android SDK Stuff :P
-= Note =-
-First run of Play Store after using the application gives failures or connection retries, just hit retry and it should work fine.
-Make sure you turn off anything else that might use ADB (Samsung Kies, HTC Sync, ASUS Sync, BlueStacks, etc etc)
-IF YOU RUN INTO FORCE CLOSES AFTER RUNNING MY APP, REBOOT INTO RECOVERY AND RUN 'FIX PERMISSIONS' UNDER 'ADVANCED'
I DO NOT TAKE RESPONSIBILITY FOR ANY DAMAGES THAT MAY COME TO YOUR DEVICE FROM USING THIS TOOL (I have no idea how it would damage it, but stranger things have happened). YOU UNDERSTAND THAT BY USING IT, YOU ARE TAKING THIS RISK YOURSELF :|
YOU HATH BEEN WAARRRNNNEEEDDD D: