Android Pay and Custom ROM

Status
Not open for further replies.
Search This thread

luigidk

Senior Member
Dec 6, 2011
718
274
0
Anyone get Android Pay and Custom ROM working on their rooted and customized Nexus 5 ?

Here are the steps I took in order to add cards and get Android Pay functioning on my phone:

- Get the Google Pay APK from here: http://www.apkmirror.com/apk/google-inc/android-pay/android-pay-1-0-102576552-android-apk-download/
- You'll also need an upgrade for Google Play Services, I was not able to get it through Apple Pay, I had to get it from here:
http://www.apkmirror.com/apk/google-inc/google-play-services/google-play-services-8-1-14-2244331-238-android-apk-download/
NOTE: have to install Google Play Services that ends in 238 for the N5

Then do the following steps:
- Install Android Pay
- Install Google Play Services
- Clear Data for Android Pay
- Go into SuperSU and unroot
- setup Android Pay
- re-root using SuperSU

So this allowed me to add/manage cards in Android Pay - but some users are getting an error such as:
"MASTERCARD-XXXX can't be used with Android Pay right now " when trying to pay with their phone.

The other item I noted is that after verifying my credit card with the issuing bank - it took several hours (>8) before I received official confirmation that the card was made available for mobile payment.
I'm guessing that it may take a while before the cards are 'activated for mobile payment?

Anyone able to use Android Pay to make a payment on their N5 (rooted, Custom ROM) ?

Note: I'm running on Cataclysm and HellsCore Kernel.
 
Last edited by a moderator:

WillJitsu

Senior Member
Jun 7, 2010
270
97
0
39
Memphis
I just received email confirmation from my bank that my card had been added. I did receive verbal confirmation the day I added it, but maybe it takes a few days. The problem now is that I had removed my card and re-added it this morning, before that initial email confirmation came through. Now I don't know if I need to wait for another email confirmation before trying again.
 

Empty Hand

Senior Member
Jul 26, 2012
249
118
0
The process worked for me, but I haven't yet tried to make a payment. One note on the steps (although this is probably understood by most who would be going through the process): For re-rooting SuperSU, you may want to clarify this is done by re-installing SuperSU in recovery.
 

luigidk

Senior Member
Dec 6, 2011
718
274
0
The process worked for me, but I haven't yet tried to make a payment. One note on the steps (although this is probably understood by most who would be going through the process): For re-rooting SuperSU, you may want to clarify this is done by re-installing SuperSU in recovery.

All I did was turn back on "Enable Superuser" in SuperSU Free - I did not re-install SuperSu in recovery...
 

Attachments

  • Screenshot_2015-09-12-17-22-27.png
    Screenshot_2015-09-12-17-22-27.png
    186.3 KB · Views: 3,083

Joshmccullough

Senior Member
Apr 24, 2011
1,214
477
103
Anyone get Android Pay and Custom ROM working on their rooted and customized Nexus 5 ?

Here are the steps I took in order to add cards and get Android Pay functioning on my phone:

- Get the Google Pay APK from here: http://www.apkmirror.com/apk/google-...-apk-download/
- You'll also need an upgrade for Google Play Services, I was not able to get it through Apple Pay, I had to get it from here:
http://www.apkmirror.com/apk/google-...-apk-download/

NOTE: have to install Google Play Services that ends in 238 for the N5

Then do the following steps:
- Install Android Pay
- Install Google Play Services
- Clear Data for Android Pay
- Go into SuperSU and unroot
- setup Android Pay
- re-root using SuperSU

So this allowed me to add/manage cards in Android Pay - but some users are getting an error such as:
"MASTERCARD-XXXX can't be used with Android Pay right now " when trying to pay with their phone.

The other item I noted is that after verifying my credit card with the issuing bank - it took several hours (>8) before I received official confirmation that the card was made available for mobile payment.
I'm guessing that it may take a while before the cards are 'activated for mobile payment?

Anyone able to use Android Pay to make a payment on their N5 (rooted, Custom ROM) ?

Note: I'm running on Cataclysm and HellsCore Kernel.

I'm getting that those links are broken/don't work.......

EDIT: I've had the 'Unfortunately, Google Play services has stopped' constantly with any iteration of the Google Play Services update I've downloaded. I just dl'd the 'universal' version 240 from the XDA Developers posting , everything else has worked fine but I'm still getting the service stop error. Anyone have any suggestions on how to get this message to stop? When I go to Manage Apps, there's no option to clear data/uninstall updates, only clear cache and disable (and I don't want to disable it, for sure.)
 
Last edited:

silvertrain78

Senior Member
May 31, 2014
382
170
0
I'm getting that those links are broken/don't work.......

EDIT: I've had the 'Unfortunately, Google Play services has stopped' constantly with any iteration of the Google Play Services update I've downloaded. I just dl'd the 'universal' version 240 from the XDA Developers posting , everything else has worked fine but I'm still getting the service stop error. Anyone have any suggestions on how to get this message to stop? When I go to Manage Apps, there's no option to clear data/uninstall updates, only clear cache and disable (and I don't want to disable it, for sure.)
What device?

Nexus 5 requires either Play services -230 or -238, not -240

Sent from my Nexus 5 using Tapatalk
 

RoyJ

Senior Member
Apr 23, 2012
4,021
2,553
0
41e61177e4094bbf075ceaabc88c047f.jpg


Pure Nexus Project, tried the steps in OP as well as trying exposed modules to hide root. I also tried using bootunlocker to lock the BL and change the tamper flag to stock. Still no luck.
 

silvertrain78

Senior Member
May 31, 2014
382
170
0
41e61177e4094bbf075ceaabc88c047f.jpg


Pure Nexus Project, tried the steps in OP as well as trying exposed modules to hide root. I also tried using bootunlocker to lock the BL and change the tamper flag to stock. Still no luck.
Supposedly this Xposed module goes the extra mile, and addresses the real obstacle to Android Pay activation: the new SafetyNet API

http://repo.xposed.info/module/com.pyler.nodevicecheck

Sent from my Nexus 5 using Tapatalk
 
  • Like
Reactions: Shaftamle and RoyJ

Joshmccullough

Senior Member
Apr 24, 2011
1,214
477
103
What device?

Nexus 5 requires either Play services -230 or -238, not -240

Sent from my Nexus 5 using Tapatalk

Yeah, Nexus 5. I'll have to try 230, nothing else has worked so far. 240 was supposed to be a 'universal' GPServices.....I see a commenter above posted something about a new Xposed module, maybe have to give that a shot, too.

EDIT: Looks like v.238 was the trick, no Google Play Services errors so far. Now I just have to test out Android Pay somewhere.

Does anyone know if you have to somehow choose between Android Pay and Google Wallet when using NFC payment at a terminal?
 
Last edited:

silvertrain78

Senior Member
May 31, 2014
382
170
0
Yeah, Nexus 5. I'll have to try 230, nothing else has worked so far. 240 was supposed to be a 'universal' GPServices.....I see a commenter above posted something about a new Xposed module, maybe have to give that a shot, too.

EDIT: Looks like v.238 was the trick, no Google Play Services errors so far. Now I just have to test out Android Pay somewhere.

Does anyone know if you have to somehow choose between Android Pay and Google Wallet when using NFC payment at a terminal?
Glad you got it set. FYI, for Nexus 5 the -230 Play services is universal DPI.

I'm pretty sure at the pos terminal you'll only be able to use Android Pay. It has completely assumed all duties of the old Wallet. If you have a Google Wallet physical card you can add it as an option for Pay, but otherwise Wallet is now just for p2p transactions (like PayPal).

Sent from my Nexus 5 using Tapatalk
 

luigidk

Senior Member
Dec 6, 2011
718
274
0
Glad you got it set. FYI, for Nexus 5 the -230 Play services is universal DPI.

I'm pretty sure at the pos terminal you'll only be able to use Android Pay. It has completely assumed all duties of the old Wallet. If you have a Google Wallet physical card you can add it as an option for Pay, but otherwise Wallet is now just for p2p transactions (like PayPal).

Sent from my Nexus 5 using Tapatalk
Has any one been able to get Android pay to work at a pos?


Sent from my LG-V510 using Tapatalk
 

Joshmccullough

Senior Member
Apr 24, 2011
1,214
477
103
What device?

Nexus 5 requires either Play services -230 or -238, not -240

Sent from my Nexus 5 using Tapatalk

Yeah, Nexus 5. Got it fixed and working as noted above, just needed the right Google Play Services update and then the instructions in the OP worked like a charm.

---------- Post added at 06:03 PM ---------- Previous post was at 06:01 PM ----------

Glad you got it set. FYI, for Nexus 5 the -230 Play services is universal DPI.

I'm pretty sure at the pos terminal you'll only be able to use Android Pay. It has completely assumed all duties of the old Wallet. If you have a Google Wallet physical card you can add it as an option for Pay, but otherwise Wallet is now just for p2p transactions (like PayPal).

Sent from my Nexus 5 using Tapatalk

I just noticed that the old Google Wallet app was auto-removed at some point from my phone (I had both for a while), now I've just got Android Pay and Google Wallet, so that makes complete sense.

FWIW, when I tried adding my Google Wallet card to Android Pay, I initially got the 'you can't use this on your phone'/root error; just unrooted through SU, added the card, re-rooted, no message. I just have to test it out on a POS terminal somewhere and see how it flies.
 

silvertrain78

Senior Member
May 31, 2014
382
170
0
Yeah, Nexus 5. Got it fixed and working as noted above, just needed the right Google Play Services update and then the instructions in the OP worked like a charm.

---------- Post added at 06:03 PM ---------- Previous post was at 06:01 PM ----------



I just noticed that the old Google Wallet app was auto-removed at some point from my phone (I had both for a while), now I've just got Android Pay and Google Wallet, so that makes complete sense.

FWIW, when I tried adding my Google Wallet card to Android Pay, I initially got the 'you can't use this on your phone'/root error; just unrooted through SU, added the card, re-rooted, no message. I just have to test it out on a POS terminal somewhere and see how it flies.
What ROM are you using?

Sent from my Nexus 5 using Tapatalk
 

luigidk

Senior Member
Dec 6, 2011
718
274
0
Not working at POS

Finally had an opportunity to use Android Pay at a Whole Foods POS.

Touched my phone to the card reader - and Android Pay popped up - with my default credit card.

Then - I got the dreaded: "Visa-xxxx can't work with Android Pay right now" message.

Seems this is a common issue - so it looks like we'll have to wait a bit for this to work.

I'll continue to try it at places that accept Android Pay - and will update accordingly.

NOTE: one thing was apparent... for me the experience of using my phone to pay - is no better an experience (probably more clunky) - than merely swiping my credit card - which I can probably get out of my pocket and swipe, faster than getting out my phone, unlocking it and positioning it on the reader.

Perhaps the security promises with Android Pay will trump a mag stripe card... but from a user experience standpoint... not that great.
 

Joshmccullough

Senior Member
Apr 24, 2011
1,214
477
103
What ROM are you using?

Sent from my Nexus 5 using Tapatalk

Cataclysm ROM, most recent version.

---------- Post added at 04:40 PM ---------- Previous post was at 04:37 PM ----------

Finally had an opportunity to use Android Pay at a Whole Foods POS.

Touched my phone to the card reader - and Android Pay popped up - with my default credit card.

Then - I got the dreaded: "Visa-xxxx can't work with Android Pay right now" message.

Seems this is a common issue - so it looks like we'll have to wait a bit for this to work.

I'll continue to try it at places that accept Android Pay - and will update accordingly.

NOTE: one thing was apparent... for me the experience of using my phone to pay - is no better an experience (probably more clunky) - than merely swiping my credit card - which I can probably get out of my pocket and swipe, faster than getting out my phone, unlocking it and positioning it on the reader.

Perhaps the security promises with Android Pay will trump a mag stripe card... but from a user experience standpoint... not that great.

Are you rooted, hence the 'didn't work' problem, or it's just plain not working right now?

Yeah, I've putzed around with the original Google Wallet/NFC payment a few times and I found the same thing was true: it's about as much hassle, maybe even more, as using a regular credit or debit card. At least with the cards you know they're going to work, barring some major snafu; with Google Wallet/Android Pay, maybe the place you're at doesn't accept it as payment, maybe the card vendor isn't on-board with Android Pay yet, maybe your phone's rooted and it doesn't work to begin with, etc. I like the idea of having multiple cards available to use with Google Pay, so I can choose which one I want to use at any given time, but I think there's also a lot of barriers to making phone-based payment the default method of payment for people.

EDIT: Well, initial swing and a miss; I had my Google Wallet card set as the default card to use with Android Pay, and got a message saying that the Google Wallet card wasn't able to be used with Android Pay at this time. I was at McDonald's for lunch and if there wasn't a big line behind me I'd have taken time to switch cards and try again, but as it was I froze up and just went with a physical card. I didn't get a 'you're using a rooted phone, you hAxx0rZ!!!! Stop trying to overthrow capitalism and steal Bitcoins, anarchist!!!' error message, at least, so that's a good thing.
 
Last edited:
  • Like
Reactions: T_O_N_Y_

luigidk

Senior Member
Dec 6, 2011
718
274
0
Doing more research on this - there seems to be strong evidence that Android Pay won't work on a rooted/custom rom phone.

Lots of speculation as to whether it is related to an unlocked bootloader, root, custom rom, or some combination...

Has anyone tried this on vanilla N5 ?
 
  • Like
Reactions: adeptustech

silvertrain78

Senior Member
May 31, 2014
382
170
0
Here's a thought: maybe it's a server-side activation, and that's why it doesn't work for rooted users who temporarily disable superuser when attempting to add a card?

That's the only thing I can think to explain why some users are able to unroot and flip the switch, while others can't

Sent from my Nexus 5 using Tapatalk
 
Status
Not open for further replies.

Top Liked Posts

  • There are no posts matching your filters.
  • 149
    Agreed. If they want adoption to take off, maybe making it accessible to the earliest of adopters would be a good idea.

    Hey Josh,

    Android users who root their devices are among our most ardent fans and when this group speaks, we listen. A few of us around Google have been listening to threads like this one and we know that you're disappointed in us. I'm a security engineer who works on Android Pay and so this thread struck me particularly hard. I wanted to reach out to you all and tell you that we hear you.

    Google is absolutely committed to keeping Android open and that means encouraging developer builds. While the platform can and should continue to thrive as a developer-friendly environment, there are a handful of applications (that are not part of the platform) where we have to ensure that the security model of Android is intact.

    That "ensuring" is done by Android Pay and even third-party applications through the SafetyNet API. As you all might imagine, when payment credentials and--by proxy--real money are involved, security people like me get extra nervous. I and my counterparts in the payments industry took a long, hard look at how to make sure that Android Pay is running on a device that has a well documented set of API’s and a well understood security model. We concluded that the only way to do this for Android Pay was to ensure that the Android device passes the compatibility test suite--which includes checks for the security model.

    The earlier Google Wallet tap-and-pay service was structured differently and gave Wallet the ability to independently evaluate the risk of every transaction before payment authorization. In contrast, in Android Pay, we work with payment networks and banks to tokenize your actual card information and only pass this token info to the merchant. The merchant then clears these transactions like traditional card purchases. I know that many of you are experts and power users but it is important to note that we don’t really have a good way to articulate the security nuances of a particular developer device to the entire payments ecosystem or to determine whether you personally might have taken particular countermeasures against attacks--indeed many would not have.

    Let's keep the dialogue open: I'll be monitoring this and other threads for constructive ideas. I won't be able to reply to all messages but we will keep listening. We love our community and we want you to keep challenging us.
    30
    This thread is so embarrassing. We had the chance to work with Google, instead people decided to have a pissing match and use this thread as a forum to vent their frustrations with the "limited" ability of root. Then many go on to site their experience in the Linux or security research community only to provide credibility to their opinion....

    All while no one actually tried to discuss how the security checks take place, what they do, and why they fail, what widevine is, how oemcrypto works to check system properties, or even how through all of this a scm call is made in secure context to the trustzone.

    Also these petty differences on semantics just make us look like more of a idiotic crowd. I know I can't request for a thread to be closed, but if I had one "close this thread because it's embarrassing" card, this thread would hands down be what I'd use it for.
    23
    This thread is so embarrassing. We had the chance to work with Google, instead people decided to have a pissing match and use this thread as a forum to vent their frustrations with the "limited" ability of root. Then many go on to site their experience in the Linux or security research community only to provide credibility to their opinion....

    All while no one actually tried to discuss how the security checks take place, what they do, and why they fail, what widevine is, how oemcrypto works to check system properties, or even how through all of this a scm call is made in secure context to the trustzone.

    Also these petty differences on semantics just make us look like more of a idiotic crowd. I know I can't request for a thread to be closed, but if I had one "close this thread because it's embarrassing" card, this thread would hands down be what I'd use it for.

    Agreed. Wish Granted.
    21
    So what does that mean though? You're still open the possibility of allowing Android Pay to work on a rooted device?

    I don't want to falsely get your hopes up, so to be completely honest: I don't know of any way to currently or in the near future make an assertion that a particular app's datastore is secure on a non-CTS compatible device. As such, for now, the answer is "no". I could speculate about the future but I'm just one engineer.

    I understand that rooting my device makes me more vulnerable, though I feel the the benefits outweigh the risks. I also know that when I choose to root my device I'm taking the responsibility upon myself to ensure that my phone remains secure. If there were some sort of breech, I would have no one to blame but myself. Could a disclaimer of some sort be added into the user agreement? Something that makes it clear that users with rooted devices are taking all the liability upon themselves?

    I think what you are asking for is a "power user" bit that we would pass along when you set up Android Pay with a card. Something like, "I'm an Android Pay user who understands the risks but I want to root anyway." I think that this would be too hard to build a risk model for: every financial institution in the world would need to build a risk model that incorporates this signal and weigh it against all of the other signals that go in to approving or declining a transaction.

    Frankly, I just don't understand the reason for changing the model. I have been an avid user of Google Wallet for several years. I love the tech. Why make the change to tokenization? I understand that it's more of a standard and more secure. But the virtual cards seemed to work just fine. I've never had an issue with them. Better yet, why not let the user choose whether or not they use the tokens.

    I can't speak for Google but I think that the virtual card didn't work particularly well for my use-case: I didn't get the full name of the merchant on my credit card statements and I didn't get all of the reward points that I was supposed to be getting. I also found chargebacks to challenging. With tokenization--which I've been using for months--my relationship with my credit card company is much better.

    Simply put, rooting is more important to me. So if that means forfeiting the ability to use Android Pay, so be it. I just don't see why it has to be that way.

    Yea, I don't blame you: I completely understand that you are disappointed. I wish that you could get the benefits of rooting without the root.

    ---------- Post added at 09:45 PM ---------- Previous post was at 09:41 PM ----------

    Wow, never expected this :)

    I greatly appreciate the response, like the commenter above, if I had to make a choice between having a rooted phone that I can make my own and being able to use Android Pay, the rooted phone would win out. However, I'm hopeful that the security concerns of moving money using phones and customers' ability to use their phones as they see fit can co-exist.

    I'm glad to see that Google's taking active steps to see what the power user/dev community is doing and thinks about advances in Android and its various related applications. Thanks for reaching out to us, it's a cool thing, and make sure to say hi to Eric/Sergei/Larry/et. al. for me ;)

    Glad to reach out and completely understand why you find root valuable.

    Actually, I'm just a lowly engineer so I think you're about as likely as I am to ever casually say hello to the founders. ;)
    18
    Hey Josh,

    Android users who root their devices are among our most ardent fans and when this group speaks, we listen. A few of us around Google have been listening to threads like this one and we know that you're disappointed in us. I'm a security engineer who works on Android Pay and so this thread struck me particularly hard. I wanted to reach out to you all and tell you that we hear you.

    Google is absolutely committed to keeping Android open and that means encouraging developer builds. While the platform can and should continue to thrive as a developer-friendly environment, there are a handful of applications (that are not part of the platform) where we have to ensure that the security model of Android is intact.

    That "ensuring" is done by Android Pay and even third-party applications through the SafetyNet API. As you all might imagine, when payment credentials and--by proxy--real money are involved, security people like me get extra nervous. I and my counterparts in the payments industry took a long, hard look at how to make sure that Android Pay is running on a device that has a well documented set of API’s and a well understood security model. We concluded that the only way to do this for Android Pay was to ensure that the Android device passes the compatibility test suite--which includes checks for the security model.

    The earlier Google Wallet tap-and-pay service was structured differently and gave Wallet the ability to independently evaluate the risk of every transaction before payment authorization. In contrast, in Android Pay, we work with payment networks and banks to tokenize your actual card information and only pass this token info to the merchant. The merchant then clears these transactions like traditional card purchases. I know that many of you are experts and power users but it is important to note that we don’t really have a good way to articulate the security nuances of a particular developer device to the entire payments ecosystem or to determine whether you personally might have taken particular countermeasures against attacks--indeed many would not have.

    Let's keep the dialogue open: I'll be monitoring this and other threads for constructive ideas. I won't be able to reply to all messages but we will keep listening. We love our community and we want you to keep challenging us.

    So what does that mean though? You're still open the possibility of allowing Android Pay to work on a rooted device?

    I understand that rooting my device makes me more vulnerable, though I feel the the benefits outweigh the risks. I also know that when I choose to root my device I'm taking the responsibility upon myself to ensure that my phone remains secure. If there were some sort of breech, I would have no one to blame but myself. Could a disclaimer of some sort be added into the user agreement? Something that makes it clear that users with rooted devices are taking all the liability upon themselves?

    Frankly, I just don't understand the reason for changing the model. I have been an avid user of Google Wallet for several years. I love the tech. Why make the change to tokenization? I understand that it's more of a standard and more secure. But the virtual cards seemed to work just fine. I've never had an issue with them. Better yet, why not let the user choose whether or not they use the tokens.

    Simply put, rooting is more important to me. So if that means forfeiting the ability to use Android Pay, so be it. I just don't see why it has to be that way.
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone