FORUMS
Remove All Ads from XDA

Let's get Tap to Pay working on Tmobile/AT&T 4.4

401 posts
Thanks Meter: 41
 
By derekedw, Senior Member on 28th February 2014, 08:43 PM
Post Reply Subscribe to Thread Email Thread
I would like this thread dedicated to simply working through suggestions and trials to get this working. I went ahead and reverted to 4.2, rooted, and then upgraded to 4.4 again, so I'm rooted on KK now. I did some digging, compared to CM11 and some research from the android development site.

Here's what I've done and the results:

1)
Found the system\etc\nfc folder on the d800 ROM 4.4
Here's what's in the config:


<?xml version="1.0" encoding="EUC-KR" standalone="no" ?>
<Configure>
<Config operator="" country="" device="">
<!-- INITVALUE, three_toggleV1L, three_toggleV2L, three_toggleV2C, two_toggleN, two_toggleL -->
<!-- three_toggleV1L_tonedown, three_toggleV2L_tonedown, three_toggleV2C_tonedown, two_toggleN_tonedown, two_toggleL_tonedown -->
<IndicatorType> two_toggleN </IndicatorType>
<IndicatorType TargetModel="zee"> two_toggleN_tonedown </IndicatorType>

<!-- INITVALUE, usevibrate, onlyndefdiscovered -->
<RingSoundScenarioType> INITVALUE </RingSoundScenarioType>

<!-- INITVALUE, stay, update -->
<WCScenarioEnable> INITVALUE </WCScenarioEnable>

<!-- INITVALUE, icsjb -->
<OSComparabilityType> INITVALUE </OSComparabilityType>

<!-- INITVALUE, uicc, ese -->
<SecureElementType> uicc </SecureElementType>

<!--INITVALUE, googlenative, directbeam, directbeam_mtkbt, mtkbt, WPSHandover, autoapplaunch (overlap possible (divide "," sign)) -->
<HandoverSupportType> googlenative </HandoverSupportType>

<!-- INITVALUE, off, offp2p, oncardrwp2p, oncard, oncardrw, oncardp2p, onrwp2p, open -->
<DefaultOnOffType> oncardrwp2p </DefaultOnOffType>

<!-- INITVALUE, vzw, gsma -->
<PopupDialogType> gsma </PopupDialogType>

<!-- INITVALUE, all, rwp2p -->
<PowerSaveType> INITVALUE </PowerSaveType>

<!-- INITVALUE, egw, gw, st, egwst, gwst -->
<SupportWalletType> INITVALUE </SupportWalletType>

<!--apply Access Control routine, verifying access right to the apk through Access Control Manager-->
<AccessControlEnable> true </AccessControlEnable> <!-- default value is true -->
<TransactionAIDEnable> false </TransactionAIDEnable>

<!--apply Execution Environment routing according to screen state
in SCREEN_LOCK/SCREEN_OFF, card mode is disabled.
this feature has dependency with isis/sequent wallet.-->
<NfcEERoutingEnable> false </NfcEERoutingEnable>

<DisableInPowerOffEnable> false </DisableInPowerOffEnable>

<!--control feasibility of CE mode in Low power mode (after power-off)
if 'true', card emulation mode is still available even after the phone is powered-off.
if 'false', card emulation doesn't work anymore until the phone is powered-up again.-->
<CardEnableInPowerOff> true </CardEnableInPowerOff> <!-- default value is true -->

<!--extracts card mode activation process from initialization process during init/de-init process,
card mode is not controlled separately. card mode enabler looses card mode control.
so far, google wallet only needs this feature-->
<AsyncCardControlEnable> true </AsyncCardControlEnable>

<!--MUST BE APPLIED to all LGE NFC devices-->
<VendorStablePatch> true </VendorStablePatch> <!-- default value is true -->

<!--P2P receive function enabled/disabled together with RW enabled/disabled
google scenario is, NDEF push and get are controlled seperately.
so, "true" shoud be strongly recommended except for specific scenario-->
<RwP2pServerSyncEnable> true </RwP2pServerSyncEnable> <!-- default value is true -->

<!--this feature is for beam ui finish when alart UI(Calling, Alarm etc..)-->
<BeamUIFinishwhenAlertUIView> true </BeamUIFinishwhenAlertUIView> <!-- default value is true -->

<!--enable se-broadcasting only for NFC-permitted(NFC_PERM) applications
this feature came from ISIS requirement. so, the model requiring ISIS certi, should apply this feature-->
<PermittedSeBroadcastEnable> true </PermittedSeBroadcastEnable> <!-- default value is true -->

<!--NFC Empty Tag popup Dialog Scenario for ORG when Positve/Negative Detection,
PopupDialog will be display and offer link to play store-->
<EmptyPopupSupport> false </EmptyPopupSupport>

<!--Lock Screen Polling Enable Feature.-->
<LockScreenPollingEnable> false </LockScreenPollingEnable>

<NotifyonlyValidTag> true </NotifyonlyValidTag> <!-- default value is true -->

<SePatchEnabled> false </SePatchEnabled>

<TagLongTimePopupSupport> false </TagLongTimePopupSupport>

<!-- feature for nxp stack library -->
<!-- determine which HCI event type is supported INITVALUE, rffieldoff (EVT_FIELD_ON/OFF events not supported) -->
<HCIEventConfig> INITVALUE </HCIEventConfig>

<!-- apply volatile card configuration -->
<VolatileCardModeEnable> false </VolatileCardModeEnable>

<!-- B' type among UICC CE types is enable/disable -->
<UICCBPrimeEnable> false </UICCBPrimeEnable>
</Config>
</Configure>


I changed this from false to true

<AsyncCardControlEnable> true </AsyncCardControlEnable>

I rebooted, and nothing, Google wallet still said it wasn't supported.

2)
On the android dev site, I found that android.hardware.nfc.hce.xml is required for tap to pay to work, so I checked a CM11 ROM and found it, but it was missing from the LG ROM so I then copied it to the system\etc\permissions folder, set proper permissions and rebooted.


Checked Wallet and BOOM, Tap and Pay available, so I activated it. When I went to lunch, I stopped by a store and tried it and NOTHING. Very sad There's also no settings GUI to configure it like AOSP has, but Google Wallet shows it activated.


3) Found the config_US.xml in the system\etc\nfc folder on the LG ROM:

<?xml version="1.0" encoding="EUC-KR" standalone="no" ?>
<Configure>
<!-- AT&T / United States -->
<!-- T-Mobile / United States -->
<Config operator="" country="US" device="">
</Config>
<!-- Sprint / United States -->
<Config operator="SPR" country="US" device="">
<SecureElementType> ese </SecureElementType>
<AccessControlEnable> true </AccessControlEnable>
<PermittedSeBroadcastEnable> true </PermittedSeBroadcastEnable>
</Config>
<!-- Verizon / United States -->
<Config operator="VZW" country="US" device="">
<WCScenarioEnable> update </WCScenarioEnable>
<DefaultOnOffType> offp2p </DefaultOnOffType>
<RingSoundScenarioType> usevibrate </RingSoundScenarioType>
<PopupDialogType> vzw </PopupDialogType>
<NfcEERoutingEnable> true </NfcEERoutingEnable>
</Config>
</Configure>


Did not change anything here, but I'm thinking that Sprint has a config probably to enable tap to pay while ATT/TMO do not. Verizon obviously has something going on there too.

I'm going to change the config from SPR to ATT and see what happens.

Any other ideas?
Attached Files
File Type: zip android.hardware.nfc.hce.zip - [Click for QR Code] (657 Bytes, 15 views)
File Type: zip config.zip - [Click for QR Code] (1.8 KB, 12 views)
File Type: zip config_US.zip - [Click for QR Code] (464 Bytes, 14 views)
Last edited by derekedw; 28th February 2014 at 08:46 PM.
The Following 6 Users Say Thank You to derekedw For This Useful Post: [ View ] Gift derekedw Ad-Free
 
 
28th February 2014, 08:52 PM |#2  
OP Senior Member
Thanks Meter: 41
 
More
Okay after the last change, here's what I got:

See Attached

But when I press it, I get a settings FC.
Attached Thumbnails
Click image for larger version

Name:	Screenshot_2014-02-28-14-49-12.png
Views:	464
Size:	242.5 KB
ID:	2606336  
The Following User Says Thank You to derekedw For This Useful Post: [ View ] Gift derekedw Ad-Free
28th February 2014, 09:30 PM |#3  
OP Senior Member
Thanks Meter: 41
 
More
Here's the logcat from when the settings FC:



[ 02-28 15:27:26.055 953: 1554 I/ActivityManager ]

START u0 {act=android.intent.action.MAIN cmp=com.android.settings/.nfc.aymentSettingsActivity} from pid 9568



[ 02-28 15:27:26.055 9568: 9568 E/AndroidRuntime ]

FATAL EXCEPTION: main

Process: com.lge.settings.easy, PID: 9568

android.content.ActivityNotFoundException: Unable to find explicit activity class {com.android.settings/com.android.settings.nfc.aymentSettingsActivity}; have you declared this activity in your AndroidManifest.xml?

at android.app.Instrumentation.checkStartActivityResu lt(Instrumentation.java:1628)

at android.app.Instrumentation.execStartActivity(Inst rumentation.java:1424)

at android.app.Activity.startActivityForResult(Activi ty.java:3468)

at android.app.Activity.startActivityForResult(Activi ty.java:3429)

at android.app.Activity.startActivity(Activity.java:3 671)

at android.app.Activity.startActivity(Activity.java:3 639)

at android.preference.Preference.performClick(Prefere nce.java:970)

at android.preference.PreferenceScreen.onItemClick(Pr eferenceScreen.java:215)

at android.widget.AdapterView.performItemClick(Adapte rView.java:299)

at android.widget.AbsListView.performItemClick(AbsLis tView.java:1158)

at android.widget.AbsListView$PerformClick.run(AbsLis tView.java:2957)

at android.widget.AbsListView$3.run(AbsListView.java: 3849)

at android.os.Handler.handleCallback(Handler.java:733 )

at android.os.Handler.dispatchMessage(Handler.java:95 )

at android.os.Looper.loop(Looper.java:136)

at android.app.ActivityThread.main(ActivityThread.jav a:5105)

at java.lang.reflect.Method.invokeNative(Native Method)

at java.lang.reflect.Method.invoke(Method.java:515)

at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:786)

at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:602)

at dalvik.system.NativeStart.main(Native Method)
The Following User Says Thank You to derekedw For This Useful Post: [ View ] Gift derekedw Ad-Free
11th March 2014, 04:28 AM |#4  
Senior Member
Flag Los Angeles
Thanks Meter: 88
 
More
So the D800 wallet fix works on the D801 but 2 of the files are already in the T-Mobile D801 firmware, and actually one doesn't have the T-Mobile Isis entry, so I'm guessing Isis will stop working if the fix is applied. If someone doesn't want to reflash and is already rooted, in addition to changing the entry in the OP they have to:
  1. Switch settings to list view so that it doesn't crash when opening the Tap & Pay option
  2. Copy android.hardware.nfc.hce.xml from the D800 fix to /system/etc/permissions (I used ES file explorer)
I can't find the D800 wallet fix post to link to it. Not sure if it was removed. This is the thread.
Thanks to AndroidUser00110001 for his Wallet fix.
Attached Thumbnails
Click image for larger version

Name:	Screenshot_2014-03-10-20-15-52.png
Views:	277
Size:	136.0 KB
ID:	2624301   Click image for larger version

Name:	Screenshot_2014-03-10-20-16-29.png
Views:	270
Size:	183.1 KB
ID:	2624302   Click image for larger version

Name:	Screenshot_2014-03-10-20-16-39.png
Views:	268
Size:	142.4 KB
ID:	2624303   Click image for larger version

Name:	Screenshot_2014-03-18-16-28-30.png
Views:	158
Size:	224.1 KB
ID:	2639592  
Last edited by diamond12; 20th March 2014 at 12:17 AM. Reason: Add image
The Following User Says Thank You to diamond12 For This Useful Post: [ View ] Gift diamond12 Ad-Free
12th March 2014, 03:08 AM |#5  
OP Senior Member
Thanks Meter: 41
 
More
His fix got it to show up but actually mine above does the same and you can access from list view. But it won't accept a paypass tap 😪. It does work on his international Rom for the d800.

Sent from my LG-D800 using Tapatalk
The Following User Says Thank You to derekedw For This Useful Post: [ View ] Gift derekedw Ad-Free
12th March 2014, 06:38 AM |#6  
Senior Member
Thanks Meter: 101
 
More
android.content.ActivityNotFoundException: Unable to find explicit activity class {com.android.settings/com.android.settings.nfc.aymentSettingsActivity}; have you declared this activity in your AndroidManifest.xml?

have you checked the manifest for anything?
The Following User Says Thank You to vipercoyote For This Useful Post: [ View ] Gift vipercoyote Ad-Free
12th March 2014, 07:20 AM |#7  
OP Senior Member
Thanks Meter: 41
 
More
Manifest is part of the app itself before it's compiled. I don't think it's an app issue, but the app looking for the correct script to proceed.

Sent from my LG-D800 using Tapatalk
The Following User Says Thank You to derekedw For This Useful Post: [ View ] Gift derekedw Ad-Free
12th March 2014, 07:47 PM |#8  
Member
Thanks Meter: 1
 
More
Thumbs up
Appreciate ya'll looking into this very much!
7th April 2014, 12:26 AM |#9  
gegerva's Avatar
Junior Member
Thanks Meter: 0
 
More
Any news on this?

Sent from my LG-D801 using Tapatalk
7th April 2014, 12:33 AM |#10  
OP Senior Member
Thanks Meter: 41
 
More
I've looked everywhere I could think to get it working...no luck. Works great on international Rom though.

Sent from my LG-D800 using Tapatalk
7th April 2014, 01:29 AM |#11  
Senior Member
Thanks Meter: 379
 
More
Weird that it's on the vs980 update

Sent from my LG-VS980 using Tapatalk
Post Reply Subscribe to Thread

Guest Quick Reply (no urls or BBcode)
Message:
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes