View Issue Details

IDProjectCategoryView StatusLast Update
0009986Talerwallet (Android App)public2025-08-31 17:09
ReporterMarcS Assigned Toavalos Resolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicator 
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PriorityhighSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product Version1.0 
Target Version1.0 stretch goalsFixed in Version1.0 stretch goals 
Summary0009986: NFC transmission Android to Android doesn't work
DescriptionI tried to transfer talerURIs via NFC from a Vivo Y35 running Android 14 to a Xiaomi Redmi Note 13 running Android 15, and vice versa.
When I start a P2P Send transaction on the Note13, I can hold an iPhone 11 next to it and successfully receive the talerURI via NFC and finish the tx.
However, when I hold the Y35 next to the Note13, it doesn't receive the talerURI. It either says "Complete with" and offers the two apps "Taler Merchant" and "Taler NFC Payments", when I tap on the latter it says "Tap again to complete with Taler NFC Payments", but when I hold the two Androids together again the same game starts again, leading nowhere...
Or it says "NFC tag identified. Tap to process tag data", but when I tap on the notification it says "No apps can perform this action".

When I start the P2P Send from my Y35 and try to read the NFC data with the Note13, that says "No supported application for this NFC Tag".
Again my iPhone 11 can read the emulated talerURI from the Y35 and finish the tx.
==> emulated NFC tag from Android can be read with an iPhone, but not with another Android!


I deleted the Taler merchant app from my Y35, thus on each phone I now have only 1 app which registered for the "taler://" scheme. I rebooted both phones.
Didn't help, the Y35 still says "No apps can perform this action", and the Note13 still says "No supported application for this NFC Tag" when trying to read the emulated NFC from the other phone.

Both Androids can read a real NFC tag with a talerURI. The Y35 (Android 14) directly opens the Taler Wallet without asking the user, the Note13 (Android 15) behaves like iOS: Tells that it found an NFC tag and asks whether to open Taler Wallet.
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Activities

avalos

2025-05-21 17:06

developer   ~0024959

Fixed by tweaking maximum MLe and MLc in NFC READ_CAPABILITY_CONTAINER_RESPONSE packet.

Source for future reference: https://github.com/MichaelsPlayground/NfcHceNdefEmulator/blob/master/app/src/main/java/de/androidcrypto/nfchcendefemulator/MyHostApduService.java

commit f1d504e6bba93697091a11bd0a44cc810c4787c3
Author: Iván Ávalos <avalos@disroot.org>
Date: Wed May 21 19:04:54 2025 +0200

    [wallet] fix NFC from Android to Android and clear p2p URI
    
    bug 0009986
    bug 0009985

Issue History

Date ModifiedUsernameFieldChange
2025-05-20 05:47MarcSNew Issue
2025-05-20 05:47MarcSStatusnew => assigned
2025-05-20 05:47MarcSAssigned To => avalos
2025-05-21 17:06avalosNote Added: 0024959
2025-05-21 17:06avalosStatusassigned => informing
2025-05-21 17:06avalosResolutionopen => fixed
2025-06-03 17:52Christian GrothoffFixed in Version => 1.0 stretch goals
2025-08-31 17:09Christian GrothoffStatusinforming => closed