Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,777,785 Members 46,798 Now Online
XDA Developers Android and Mobile Development Forum

[APP] Android Market patched to skip self-update and remove device restrictions

Tip us?
 
Tsjoklat
Old
(Last edited by Tsjoklat; 7th August 2013 at 11:30 PM.)
#1  
Tsjoklat's Avatar
Senior Member - OP
Thanks Meter 2180
Posts: 1,596
Join Date: Apr 2010
Default [APP] Android Market patched to skip self-update and remove device restrictions

All versions of the Android Market (Play Store) above version 3.0 will self-update automatically (even if you freeze/rename/delete the Market Updater application). The following version of the Android Market has been patched to ignore the self-update check.

Note: Android Market (Google Play Store) v3.4.7 is the last available version that allows Titanium Backup to control the Market links in the application.

Note: Using the command "pm disable com.android.vending.updater" does NOT stop the Android Market 3.0+ from self-updating. Other methods of preventing the market from self-updating, such as creating a read-only file that blocks the installation procedure, are also not recommended because the market will still download market updates and use up precious internal memory and extra cpu cycles.

Code:
diff -ru Vending.3.4.7/smali/com/google/android/finsky/utils/SelfUpdateScheduler.smali Vending.3.4.7-noupdate/smali/com/google/android/finsky/utils/SelfUpdateScheduler.smali
--- Vending.3.4.7/smali/com/google/android/finsky/utils/SelfUpdateScheduler.smali	2012-04-04 02:21:11.729877751 +0200
+++ Vending.3.4.7-noupdate/smali/com/google/android/finsky/utils/SelfUpdateScheduler.smali	2012-04-04 02:33:51.870385096 +0200
@@ -29,7 +29,7 @@
     invoke-direct {p0}, Ljava/lang/Object;-><init>()V
 
     .line 42
-    const/4 v0, 0x0
+    const/4 v0, 0x1
 
     iput-boolean v0, p0, Lcom/google/android/finsky/utils/SelfUpdateScheduler;->mUpdateInProgress:Z

Logcat of Android Market with "noupdate" patch applied:

Code:
D/Finsky  ( 4890): [1] SelfUpdateScheduler.checkForSelfUpdate: Skipping self-update check as there is an update already queued.
Note: Also provided below is an additional variation of the Android Market that includes an additional "no restrictions" patch applied. The additional patch removes restrictions on certain applications in the market placed by specific countries. If the country you live in has blocked the application you are looking for, this patch will allow you to see it in the market. There are still server side restrictions in place when you download an application that is blocked within your country and the use of a proxy or VPN might also be necessary. The "no restrictions" patch also removes the device application compatibility check, so every application should be visible in the Android Market (even if they "say" it is not compatible with your device). Credits to L.D.B. for the "no restrictions" patch.

Code:
diff -ru Vending.3.4.7/smali/com/google/android/finsky/api/model/Document.smali Vending.3.4.7.mod/smali/com/google/android/finsky/api/model/Document.smali
--- Vending.3.4.7/smali/com/google/android/finsky/api/model/Document.smali	2012-04-05 21:49:58.647890272 +0200
+++ Vending.3.4.7.mod/smali/com/google/android/finsky/api/model/Document.smali	2012-04-05 21:49:20.751889471 +0200
@@ -3236,6 +3236,8 @@
     .line 674
     :cond_0
     :goto_0
+    const/4 v2, 0x1
+
     return v2
 
     .line 662
Note: A third patch for the Android Market is the "DPI 160" patch. If you change the default DPI settings on your device, the Android Market might not detect the required DPI settings and specific applications will then not be visible in the Android Market. The "DPI 160" patch forces the Android Market to think you are using a DPI of 160, which makes specific applications in the Android Market visible.

Code:
diff -ru Vending.3.4.7.orig/smali/com/google/android/finsky/utils/DeviceConfigurationHelper.smali Vending.3.4.7/smali/com/google/android/finsky/utils/DeviceConfigurationHelper.smali
--- Vending.3.4.7.orig/smali/com/google/android/finsky/utils/DeviceConfigurationHelper.smali	2012-04-10 23:06:45.156379816 +0200
+++ Vending.3.4.7/smali/com/google/android/finsky/utils/DeviceConfigurationHelper.smali	2012-04-10 23:06:55.795879255 +0200
@@ -257,7 +257,7 @@
 
     move-result-object v15
 
-    iget v0, v12, Landroid/util/DisplayMetrics;->densityDpi:I
+    const/16 v0, 0xa0
 
     move/from16 v17, v0
Note: A "DPI 240" patch is also posted below. Some high resolution devices (ie; HTC Desire and Samsung Galaxy SII) require a 240 DPI in order for certain applications to be visible in the Android Market. The "DPI 240" patch forces the Android Market to think the device is using a DPI of 240.

Code:
diff -ru Vending.3.4.7.orig/smali/com/google/android/finsky/utils/DeviceConfigurationHelper.smali Vending.3.4.7/smali/com/google/android/finsky/utils/DeviceConfigurationHelper.smali
--- Vending.3.4.7.orig/smali/com/google/android/finsky/utils/DeviceConfigurationHelper.smali	2012-04-10 23:06:45.156379816 +0200
+++ Vending.3.4.7/smali/com/google/android/finsky/utils/DeviceConfigurationHelper.smali	2012-04-10 23:06:55.795879255 +0200
@@ -257,7 +257,7 @@
 
     move-result-object v15
 
-    iget v0, v12, Landroid/util/DisplayMetrics;->densityDpi:I
+    const/16 v0, 0xf0
 
     move/from16 v17, v0
Note: Similar to the previous DPI patches, a "DPI 320" patch is also posted below. Some of the higher WXGA resolution devices (ie; Galaxy Nexus) require a 320 DPI in order for certain applications to be visible in the Android Market. The "DPI 320" patch forces the Android Market to think the device is using a DPI of 320.

Code:
diff -ru Vending.3.4.7.orig/smali/com/google/android/finsky/utils/DeviceConfigurationHelper.smali Vending.3.4.7/smali/com/google/android/finsky/utils/DeviceConfigurationHelper.smali
--- Vending.3.4.7.orig/smali/com/google/android/finsky/utils/DeviceConfigurationHelper.smali	2012-04-10 23:06:45.156379816 +0200
+++ Vending.3.4.7/smali/com/google/android/finsky/utils/DeviceConfigurationHelper.smali	2012-04-10 23:06:55.795879255 +0200
@@ -257,7 +257,7 @@
 
     move-result-object v15
 
-    iget v0, v12, Landroid/util/DisplayMetrics;->densityDpi:I
+    const/16 v0, 0x140
 
     move/from16 v17, v0
If your device is using a custom DPI setting, then you will need a version of the Android Market that includes one of the three "DPI Hacks" mentioned above (dpi160, dpi240, or dpi320). Without the "DPI Hack" applied, updates might not be visible in the Market.

The default DPI value for your device can be determined by looking it up in it's device specifications. When you change the default DPI setting on your device, it may cause compatibility problems for the Android Market. Therefore, we want the Android Market to think we are still using the same default value that is found in the specs.

For example, the Samsung Galaxy SII has a default DPI of 240 in it's device specifications, so we want to make the Android Market think we are still using that setting (if the default value has been modified).

For most devices, the standard default DPI values are 160, 240, and 320.

All modified versions of the Android Market that are signed by another key are unable to make purchases from within the Android Market application itself because the signing key does not match Google's signing key. Because the new signing key of the modified Android Market no longer matches with Google's signing key, the modified version of the Android Market is unable to connect with GoogleServicesFramework. There are also modified versions of the Android Market available (in post #132 of this thread) that are made using the original Google signature which makes it possible to purchase applications again within the modified Android Market.
http://forum.xda-developers.com/show...&postcount=132

All applications can still be purchased via the web browser.

How to install:

Rename file to "Vending.apk" and copy to /system/app/Vending.apk. Make sure to uninstall any updates of previous versions first. Root Required. If you are running ICS 4.0.4, "Vending.apk" might be substituted for "Phonesky.apk".

NOTE: If you are testing a "DPI Hacked" version of the Android Market and you are still experiencing incompatibilities with certain applications or the changes are not "sticking", see post #92 in this thread for further solutions. The following link explains what additional patches may be needed: http://forum.xda-developers.com/show...9&postcount=92

Additionally, the following links contain modified versions of GSF uploaded to this thread:
http://forum.xda-developers.com/show...&postcount=334
http://forum.xda-developers.com/show...&postcount=390
http://forum.xda-developers.com/show....php?t=1631070
http://forum.xda-developers.com/show...&postcount=161

** Google Play 3.4.4 with "market purchase fix and dpi120" has been added to the following link: http://forum.xda-developers.com/show...&postcount=460

** Google Play 3.4.7/3.5.19 with "market purchase fix" has been added to the following link:: http://forum.xda-developers.com/show...&postcount=132

** Google Play 3.7.11 has been added to the following link: http://forum.xda-developers.com/show...&postcount=222

** Google Play 3.7.13 has been added to the following link: http://forum.xda-developers.com/show...&postcount=243

** Google Play 3.7.15 has been added to the following link: http://forum.xda-developers.com/show...&postcount=344

** Google Play 3.8.15 has been added to the following link: http://forum.xda-developers.com/show...&postcount=399

** Google Play 3.8.16 has been added to the following link: http://forum.xda-developers.com/show...&postcount=409

** Google Play 3.8.17 has been added to the following link: http://forum.xda-developers.com/show...&postcount=436

** Google Play 3.9.16 has been added to the following link: http://forum.xda-developers.com/show...&postcount=505

** Google Play 3.9.17 has been added to the following link: http://forum.xda-developers.com/show...&postcount=544

** Google Play 3.10.9 has been added to the following link: http://forum.xda-developers.com/show...&postcount=566

** Google Play 3.10.10 has been added to the following link: http://forum.xda-developers.com/show...&postcount=599

** Google Play 3.10.14 has been added to the following link: http://forum.xda-developers.com/show...&postcount=660

** Google Play 4.0.25 has been added to the following link: http://forum.xda-developers.com/show...&postcount=694

** Google Play 4.0.26 has been added to the following link: http://forum.xda-developers.com/show...&postcount=705

** Google Play 4.0.27 has been added to the following link: http://forum.xda-developers.com/show...&postcount=706

** Google Play 4.3.10 has been added to the following link: http://forum.xda-developers.com/show...&postcount=769
The Following 180 Users Say Thank You to Tsjoklat For This Useful Post: [ Click to Expand ]
 
fitz420
Old
#2  
fitz420's Avatar
Senior Member
Thanks Meter 317
Posts: 970
Join Date: May 2011
Location: Pittsburgh
Not working for me. Getting a parsing error
 
quorn23
Old
#3  
Senior Member
Thanks Meter 35
Posts: 195
Join Date: Jan 2012
Parsing error? Where? Did you follow the installation steps?
Private Samsung Galaxy S4 - Google Edition Rom (Stock Kernel)
Galaxy Gear - TizenMod Rom (Stock Kernel)
Work Motorola Moto G - Stock Rom (For now)
Sony Xperia Z 2 Tab (4G Model) - Stock Rom


Old:
Work SGS2 - CM10.1 Nightly (Stock Kernel)
Personal SGS2 - Pacman AOKP-MR1/CM10.1RC5 (Stock Kernel)
Just for fun SGS2 - Original Stock/CM9 Siyah Kernel
SG Tab 10.1 - CM10.1 Nightly (Stock Kernel)
SG Tab 10.1 - Infamous AOKP (Stock Kernel)
 
fitz420
Old
#4  
fitz420's Avatar
Senior Member
Thanks Meter 317
Posts: 970
Join Date: May 2011
Location: Pittsburgh
Quote:
Originally Posted by quorn23 View Post
Parsing error? Where? Did you follow the installation steps?
Yes, but I used root explorer. Should I use adb
 
fitz420
Old
#5  
fitz420's Avatar
Senior Member
Thanks Meter 317
Posts: 970
Join Date: May 2011
Location: Pittsburgh
I downloaded using tapatalk numerous times. The apk is only 554 bytes. Obviously that's the problem. I will jump on a PC and see...
 
quorn23
Old
#6  
Senior Member
Thanks Meter 35
Posts: 195
Join Date: Jan 2012
Quote:
Originally Posted by fitz420 View Post
Yes, but I used root explorer. Should I use adb

Well yes and no, to answer your question you can use root explorer. just make sure you set it to read/write and set the permissions right.
Private Samsung Galaxy S4 - Google Edition Rom (Stock Kernel)
Galaxy Gear - TizenMod Rom (Stock Kernel)
Work Motorola Moto G - Stock Rom (For now)
Sony Xperia Z 2 Tab (4G Model) - Stock Rom


Old:
Work SGS2 - CM10.1 Nightly (Stock Kernel)
Personal SGS2 - Pacman AOKP-MR1/CM10.1RC5 (Stock Kernel)
Just for fun SGS2 - Original Stock/CM9 Siyah Kernel
SG Tab 10.1 - CM10.1 Nightly (Stock Kernel)
SG Tab 10.1 - Infamous AOKP (Stock Kernel)
 
fitz420
Old
#7  
fitz420's Avatar
Senior Member
Thanks Meter 317
Posts: 970
Join Date: May 2011
Location: Pittsburgh
Quote:
Originally Posted by fitz420 View Post
I downloaded using tapatalk numerous times. The apk is only 554 bytes. Obviously that's the problem. I will jump on a PC and see...
Still 554 bytes when downloaded from browser
 
Tsjoklat
Old
(Last edited by Tsjoklat; 4th April 2012 at 08:55 PM.)
#8  
Tsjoklat's Avatar
Senior Member - OP
Thanks Meter 2180
Posts: 1,596
Join Date: Apr 2010
I think my browser did not upload the file properly the first time. I have re-uploaded it and verified it this time. Thanks for letting me know.
The Following User Says Thank You to Tsjoklat For This Useful Post: [ Click to Expand ]
 
haggardh
Old
#9  
haggardh's Avatar
Senior Member
Thanks Meter 11
Posts: 122
Join Date: Feb 2011
Location: Memphis, TN
What browser are you using? Chrome on the phone has problems with downloading apks

Sent from my HTC PH39100 using xda premium
 
Tsjoklat
Old
(Last edited by Tsjoklat; 5th April 2012 at 09:54 PM.)
#10  
Tsjoklat's Avatar
Senior Member - OP
Thanks Meter 2180
Posts: 1,596
Join Date: Apr 2010
I added an additional version of the market that includes a patch to remove restrictions placed on applications by the market.

1) Removes device compatibility check so all applications are visible to your device
2) Removes restrictions places on certain applications by specific countries. If the country you live in blocks a specific application in your market, then it should now be visible.

Credits to L.D.B. for the "no restrictions" patch.

The Following 2 Users Say Thank You to Tsjoklat For This Useful Post: [ Click to Expand ]
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes