Trying to get Google Wallet working on unrooted Galaxy S3

So you can grab a copy of the latest wallet apk (using that nifty chrome extension) and save it to your computer.

Then using apktool you can decoded the APK to get a look at some of the source code:

apktool d com.google.android.apps.walletnfcrel.apk wallet-code

Then you can jump into this file:

wallet-code/smali/com/google/android/apps/wallet/config/GservicesKey.smali

and located the regex used by wallet to determine if this device is supported, which is here:

const-string v1, "<<Sprint><310120><sojus><Nexus S 4G><.*>><<.*><(310|311).+><mysid|yakju><.*><.*@google.com(,.*)?>><<.*><.*><m3s_sprint_us><.*><.*>><<.*><.*><m3s_virgin_us><.*><.*>><<.*><.*><cayman_sprint_us><.*><.*>><<.*><.*><goghspr><.*><.*>><<.*><.*><d2spr><.*><.*>><<.*><.*><mantaray><.*><.*>><<.*><(310|311).+><occam><.*><.*>><<.*><.*><infiniteusc><.*><.*>><<.*><.*><d2mtr><.*><.*>><<.*><.*><d2usc><.*><.*>><<.*><.*><nakasi><.*><.*>><<.*><(310|311).+><jewel><.*><.*>><<.*><.*><mysidspr><.*><.*>><<.*><(310|311).+><mictacea><.*><.*>><<.*><(310|311).+><takju><.*><.*>><<.*><(310|311).+><nakasig><.*><.*>><<.*><.*><goghvmu><.*><.*>>"

you could replace it with something like this:

const-string v1, "<<.*><.*><.*><.*><.*>>"

then save the file and rebuild the apk again:

apktool b wallet-code/ com.google.android.apps.walletnfcrel.custom.apk

and then sign the apk:

java -jar /path/to/signapk.jar /path/to/testkey.x509.pem /path/to/testkey.pk8 com.google.android.apps.walletnfcrel.custom.apk com.google.android.apps.walletnfcrel.custom-signed.apk

then push it to your phone via usb adb

 adb install com.google.android.apps.walletnfcrel.custom-signed.apk

of course, it didn’t work, but was worth a try 🙂 got this error:
“Insufficient secure element privileges for this system image (release-keys)”

Leave a Reply

Your email address will not be published. Required fields are marked *