This is no longer supported as Google has removed support for everything except 4.4+.
If you still need this for 4.4+ let me know and I will open support again.
I modified the new Google Wallet to allow tap and pay on any device. This modified version has hard coded device information instead of the app looking at your build.prop. So the app and even the Google Wallet website will report that you're using a Galaxy Nexus instead of your actual device.
Install Instructions:
Pre Install
New Install
Upgrading from 1.x+
Upgrading from 2.0-R151-v8 and older
Upgrading from 2.0-R151-v8-update and newer
Fixing NFC:
How-To(Devs):
FAQ:
Why use this instead of the Play Store version? That one works on all devices.
Yes, but tap and pay does not! Carriers (AT&T & Verizon) have restricted Google Wallet on their devices to get you to use their proprietary (ISIS) service.
I don't trust a modified app that I use with my bank account and credit cards.
I don't either. But I'm sure if you're reading this, you've already been running a modified version of 1.6.
Either way, I have no interest in anybody's bank account/credit card information. The only lines of code I modified were the ones that look at the build.prop for device information and I added "modded by loserskater" to the nav drawer. There are no other servers/proxies that your information is going to.
I found out my device doesn't have the Secure Element, how can I fix that?
Get a new phone. There is no amount of software hacking that will enable a hardware specific feature. There are some carriers that have SIM cards with the Secure Element, but I'm not knowledgeable enough in that to know if those will work.
I tried to make a transaction but the screen said "Reader detected. Your last tap may not have been successful"
This seems to be happening to an odd variety of users. It may be a Rom issue but there isn't enough info to be sure. It's reported that 1.6 was working fine but this issue is happening in 2.0. The only thing I can suggest to try is going back to a stock Rom and attempting again. It could be that there needs to be a few more files that the 2.0 wallet is relying on that need to be replaced in the nfc fix.
NfcPaymentSetupFailure Error Codes:
UNKNOWN_FAILURE = new NfcPaymentSetupFailure(1);
LOW_BATTERY = new NfcPaymentSetupFailure(2);
NETWORK_FAILURE = new NfcPaymentSetupFailure(3);
NETWORK_ACCESS_REQUIRED = new NfcPaymentSetupFailure(4);
NFC_NOT_ENABLED = new NfcPaymentSetupFailure(5);
TSA_INIT_FAILURE = new NfcPaymentSetupFailure(6);
REBOOT_REQUIRED = new NfcPaymentSetupFailure(7);
INTERRUPTED = new NfcPaymentSetupFailure(8);
SECURE_ELEMENT_ACCESS_REQUIRED = new NfcPaymentSetupFailure(9);
MIFARE_MANAGER_INSTALL_REQUIRED = new NfcPaymentSetupFailure(10);
PROVISIONING_FAILED = new NfcPaymentSetupFailure(11);
FRONTING_INSTRUMENT_SUSPENDED = new NfcPaymentSetupFailure(12);
RPC_METADATA_REJECTION = new NfcPaymentSetupFailure(13);
SECURE_ELEMENT_BRICKED = new NfcPaymentSetupFailure(101);
APPLET_LOCKED = new NfcPaymentSetupFailure(102);
NFC_EE_SECURITY_EXCEPTION = new NfcPaymentSetupFailure(103);
SECURE_ELEMENT_ID_CHANGED = new NfcPaymentSetupFailure(104);
SECURE_ELEMENT_ID_UNAVAILABLE = new NfcPaymentSetupFailure(105);
UNSUPPORTED_SECURE_ELEMENT = new NfcPaymentSetupFailure(106);
NO_SECURE_ELEMENT = new NfcPaymentSetupFailure(107);
Troubleshooting:
If tap and pay still isn't working for you, try from a fresh STOCK rom install. Do not use this apk, but instead make a backup of your build.prop and then change the following information:
Now install Google Wallet from the Play Store. If your device needs an NFC fix, then apply that. If you are still having issues then there is something else wrong and the version in this post is not to blame.
Reporting Issues:
Please report the device, carrier, rom, android version, if you applied an nfc fix and where you got it from, the EXACT steps you used to install.
Updates:
R151-v8: Now reports device as Nexus 4.
R151-v8-update: Big changes! New install process. For some reason adding loyalty cards with the camera would not work as a system app. So I had to re-sign the apk with my own private key, that way it can be installed as a user app. But because of the new signature, it had to be added to nfcee_access.xml so make sure you update that as well!
.
Issues:
R151-v8: Adding loyalty cards causes a FC. To get around this you can install the stock app, add the loyalty cards and then install this modified version.
Install the udpate!
R151-v8+: When opening the app you'll get a notification that there was a sign in error, it doesn't affect anything and I haven't figure out a way to get rid of it. Just dismiss this notification and you'll be fine.
Downloads:
com.google.android.apps.walletnfcrel-2.0-R133-v9-MODDED.apk
com.google.android.apps.walletnfcrel-2.0-R133-V14-MODDED.apk
com.google.android.apps.walletnfcrel-2.0-R141-V14-MODDED.apk
com.google.android.apps.walletnfcrel-2.0-R151-v8-MODDED.apk(Note: this one breaks adding loyalty cards)
New install method!!!
nfcee_access.xml
com.google.android.apps.walletnfcrel-2.0-R151-v8-MODDED-update.apk
com.google.android.apps.walletnfcrel-2.0-R155-v14-MODDED.apk
If you still need this for 4.4+ let me know and I will open support again.
I modified the new Google Wallet to allow tap and pay on any device. This modified version has hard coded device information instead of the app looking at your build.prop. So the app and even the Google Wallet website will report that you're using a Galaxy Nexus instead of your actual device.
Install Instructions:
Pre Install
- Push/copy the modified nfcee_access.xml attached to this post to /system/etc
- Make sure permissions are set correctly (644, rw-r--r--)
- Reboot
- Open nfcee_access.xml and add the following line:
Code:<!-- Modded Google wallet signature --> <signer android:signature="308203733082025ba00302010202044f796622300d06092a864886f70d01010b0500306a3110300e06035504061307556e6b6e6f776e3110300e06035504081307556e6b6e6f776e3110300e06035504071307556e6b6e6f776e3110300e060355040a1307556e6b6e6f776e3110300e060355040b1307556e6b6e6f776e310e300c060355040313056c6f736572301e170d3134303230353039333732325a170d3431303632333039333732325a306a3110300e06035504061307556e6b6e6f776e3110300e06035504081307556e6b6e6f776e3110300e06035504071307556e6b6e6f776e3110300e060355040a1307556e6b6e6f776e3110300e060355040b1307556e6b6e6f776e310e300c060355040313056c6f73657230820122300d06092a864886f70d01010105000382010f003082010a02820101009bbae4a25116cdca302b9e58458d7c1bd25eb3f51ab3dff00304ad8f86d7161564f1cbcfbef059831596c343f4df238471341abdfcdc5ae285744d7fee5b65969f10048a3947c8cc1c0000ef5e9b6aa74fc31898e99f2efcd9a66920208eed80f6b82fd6844ab2ec4484f26ccb2398ed86bf0d1c1a4a2728f0ee0a1a2ca9695b42450ab2cd5773daa070b653793f886dad0387b51c507e9e9ff1d2e4cb977f5ee252bae5e6a5a38c4a77b2383d3acffc817b6f325feb8fe0740345a3aa7b3caa37d553f206bbb2a9966323330b2988287093dffc9d5a0345827b38dfedf44b9b79453b74616ee26646698fd342943f6ab49f3b39c4bb11698a34b73320abb1a50203010001a321301f301d0603551d0e04160414b7b1f25001279dcbcad0dbdc11d3fa8dca86f4da300d06092a864886f70d01010b0500038201010005cb2e5d34af75768814275349dc9cf02442ae00032fb91455d41d947dfdd6909194504162485fa35db9781ee34419d5ad1db26bbe5760c7c73dea78134634fd75b62d7dbeb96b140716f4ef5a9b1ffe2c6b0695389273d54dd652dd63ad742bcb57a31899fe29b76d913d14e7bea516be7945b521552033e4285a53e27d13f6b26e587af55d9fbae63b809f187b571e3987d9e4838dac61ae54d123ea0249c47af71bd90278e7a5438ba13af958eaf21d21a4bb827a87f6eec50d2da2c2e418b153e6028fd35588b7ab6053733ea34419ca3a1ac33e83abe0e88acf83971c9e41834e61d940dc2fac9b7bb16bd4e1455a1ab6990becf5e8e8dee0910a20b3d3" />
- Reboot
New Install
- Install the wallet apk like any other app. Do NOT push to /system/app
Upgrading from 1.x+
- If you already have Wallet installed reset it (open Wallet>menu>Settings>Reset Google wallet)
- Go to Wallet app settings (Settings>Application Manager>Wallet)
- Force stop and Clear data
- Using a file explorer with root access (Root Exlporer, Solid Explorer, etc.) go to /system/app
- Remove all instances of wallet you may have (Wallet.apk, com.google.android.apps.walletnfcrel*.apk)
- Repeat steps 4 & 5 but go to /data/app
- Reboot
- Install the wallet apk like any other app. Do NOT push to /system/app
Upgrading from 2.0-R151-v8 and older
- Go to Wallet app settings (Settings>Application Manager>Wallet)
- Uninstall updates
- Using a file explorer with root access (Root Exlporer, Solid Explorer, etc.) go to /system/app
- Remove all instances of wallet you may have (Wallet.apk, com.google.android.apps.walletnfcrel*.apk)
- Reboot
- Install the wallet apk like any other app. Do NOT push to /system/app
Upgrading from 2.0-R151-v8-update and newer
- Install the wallet apk like any other app. Do NOT push to /system/app
Fixing NFC:
Most AOSP based Roms do not need any kind of nfc fix as the files included are already built correctly. Touchwiz, and other non AOSP Roms more than likely do not have the files built correctly. Some devices already have threads that have an nfc fix.
Here's for the Galaxy S3: http://xdaforums.com/showthread.php?t=2555612
Here's for the Galaxy S4: http://xdaforums.com/showthread.php?t=2454971
If you need to fix your nfc, here's how it was done for the S3:
Here's for the Galaxy S3: http://xdaforums.com/showthread.php?t=2555612
Here's for the Galaxy S4: http://xdaforums.com/showthread.php?t=2454971
If you need to fix your nfc, here's how it was done for the S3:
- Go to https://support.google.com/wallet/answer/1347934
- Find a device similar to yours, as in same device but different carrier.
- Find the forums for that device here on xda and download a Rom for that device.
- Alternatively: go to http://get.cm and download a CM build for that device. Will probably be a smaller download.
- Pull the following files:
NOTE: The device you're pulling from may be different from this as this was for the Galaxy S3. You might need to get some help/input on which files you'll actually need.
Code:/system/app/Nfc.apk /system/etc/nfcee_access.xml /system/lib/libnfc.so /system/lib/libnfc_jni.so /system/lib/libnfc_ndef.so /system/lib/hw/nfc.MSM8960.so (Yours will most likely be called something different)
- Push/copy those files to their respective locations.
- Make sure permissions are set correctly (644, rw-r--r--)
How-To(Devs):
I grep'd the smali folder looking for Landroid/os/Build and replaced every model, product, device, fingerprint with a string of what it would return from a Nexus 4 build.prop.
So this:
was replaced with this:
So this:
Code:
sget-object v0, Landroid/os/Build;->MODEL:Ljava/lang/String;
Code:
const-string v0, "Nexus 4"
FAQ:
Why use this instead of the Play Store version? That one works on all devices.
Yes, but tap and pay does not! Carriers (AT&T & Verizon) have restricted Google Wallet on their devices to get you to use their proprietary (ISIS) service.
I don't trust a modified app that I use with my bank account and credit cards.
I don't either. But I'm sure if you're reading this, you've already been running a modified version of 1.6.
Either way, I have no interest in anybody's bank account/credit card information. The only lines of code I modified were the ones that look at the build.prop for device information and I added "modded by loserskater" to the nav drawer. There are no other servers/proxies that your information is going to.
I found out my device doesn't have the Secure Element, how can I fix that?
Get a new phone. There is no amount of software hacking that will enable a hardware specific feature. There are some carriers that have SIM cards with the Secure Element, but I'm not knowledgeable enough in that to know if those will work.
I tried to make a transaction but the screen said "Reader detected. Your last tap may not have been successful"
This seems to be happening to an odd variety of users. It may be a Rom issue but there isn't enough info to be sure. It's reported that 1.6 was working fine but this issue is happening in 2.0. The only thing I can suggest to try is going back to a stock Rom and attempting again. It could be that there needs to be a few more files that the 2.0 wallet is relying on that need to be replaced in the nfc fix.
NfcPaymentSetupFailure Error Codes:
UNKNOWN_FAILURE = new NfcPaymentSetupFailure(1);
LOW_BATTERY = new NfcPaymentSetupFailure(2);
NETWORK_FAILURE = new NfcPaymentSetupFailure(3);
NETWORK_ACCESS_REQUIRED = new NfcPaymentSetupFailure(4);
NFC_NOT_ENABLED = new NfcPaymentSetupFailure(5);
TSA_INIT_FAILURE = new NfcPaymentSetupFailure(6);
REBOOT_REQUIRED = new NfcPaymentSetupFailure(7);
INTERRUPTED = new NfcPaymentSetupFailure(8);
SECURE_ELEMENT_ACCESS_REQUIRED = new NfcPaymentSetupFailure(9);
MIFARE_MANAGER_INSTALL_REQUIRED = new NfcPaymentSetupFailure(10);
PROVISIONING_FAILED = new NfcPaymentSetupFailure(11);
FRONTING_INSTRUMENT_SUSPENDED = new NfcPaymentSetupFailure(12);
RPC_METADATA_REJECTION = new NfcPaymentSetupFailure(13);
SECURE_ELEMENT_BRICKED = new NfcPaymentSetupFailure(101);
APPLET_LOCKED = new NfcPaymentSetupFailure(102);
NFC_EE_SECURITY_EXCEPTION = new NfcPaymentSetupFailure(103);
SECURE_ELEMENT_ID_CHANGED = new NfcPaymentSetupFailure(104);
SECURE_ELEMENT_ID_UNAVAILABLE = new NfcPaymentSetupFailure(105);
UNSUPPORTED_SECURE_ELEMENT = new NfcPaymentSetupFailure(106);
NO_SECURE_ELEMENT = new NfcPaymentSetupFailure(107);
Troubleshooting:
- Menu>Settings>Change account. Don't actually add another account, just press back or home.
- Settings>App Manager>Wallet and Force Stop and Clear Data.
- Reboot
- Try adding your account again.
If tap and pay still isn't working for you, try from a fresh STOCK rom install. Do not use this apk, but instead make a backup of your build.prop and then change the following information:
Code:
ro.product.model=Galaxy Nexus
ro.product.name=yakju
ro.product.device=maguro
Reporting Issues:
Please report the device, carrier, rom, android version, if you applied an nfc fix and where you got it from, the EXACT steps you used to install.
Updates:
R151-v8: Now reports device as Nexus 4.
R151-v8-update: Big changes! New install process. For some reason adding loyalty cards with the camera would not work as a system app. So I had to re-sign the apk with my own private key, that way it can be installed as a user app. But because of the new signature, it had to be added to nfcee_access.xml so make sure you update that as well!
.
Issues:
Install the udpate!
R151-v8+: When opening the app you'll get a notification that there was a sign in error, it doesn't affect anything and I haven't figure out a way to get rid of it. Just dismiss this notification and you'll be fine.
Downloads:
com.google.android.apps.walletnfcrel-2.0-R133-v9-MODDED.apk
com.google.android.apps.walletnfcrel-2.0-R133-V14-MODDED.apk
com.google.android.apps.walletnfcrel-2.0-R141-V14-MODDED.apk
com.google.android.apps.walletnfcrel-2.0-R151-v8-MODDED.apk(Note: this one breaks adding loyalty cards)
New install method!!!
nfcee_access.xml
com.google.android.apps.walletnfcrel-2.0-R151-v8-MODDED-update.apk
com.google.android.apps.walletnfcrel-2.0-R155-v14-MODDED.apk
Last edited: