[com.greengot] Can't open app due to TapAndPay API
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 14.6k
- Forks
- 3.2k
- Avg merge
- 12d 11h
- Merged PRs (30d)
- 4
Description
Affected app
Name: Green-Got
Package id: com.greengot
Describe the bug
When opening the app, it freezes just after trying to connect with my account
To Reproduce
- Open the app
- Click on Connect
- Enter email
- Enter the code received by email
Expected behavior
The app should open normally
System
Android Version: 12
Custom ROM: /e/OS 1.16-s
microG
microG Core version: 0.2.29.233013-2 (8c25b3f)
microG Self-Check results: All ticked
Additional context
When logging with ADB, I noticed 2 lines happening right when the application freezes:
11-10 11:22:11.259 D/GmsTapAndPay( 3539): onBind: Intent { act=com.google.android.gms.tapandpay.service.BIND pkg=com.google.android.gms }
11-10 11:54:37.304 D/GmsTapAndPay( 3539): bound by: GetServiceRequest{serviceId=TAP_AND_PAY, gmsVersion=12451000, packageName='com.greengot', extras=Bundle[{sdk_version=18.3.3}]}
11-10 11:54:37.308 W/GmsTapAndPay( 3539): Unknown method 74 in com.google.android.gms.tapandpay.internal.ITapAndPayService, skipping
Also I tried with an emulator with GAPPS installed and the ADB log indicates the following and the app launches correctly
11-10 11:45:14.400 1090 2448 W Pay : Attempt to fetch active account from tapandpay failed. [CONTEXT service_id=198 ]
11-10 11:45:14.400 1090 2448 W Pay : java.util.concurrent.ExecutionException: m.esw: 17: API: TapAndPay.TAP_AND_PAY_API is not available on this device. Connection failed with: erc{statusCode=SERVICE_INVALID, resolution=null, message=null}
11-10 11:45:14.400 1090 2448 W Pay : at m.wld.k(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):32)
11-10 11:45:14.400 1090 2448 W Pay : at m.wld.j(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):39)
11-10 11:45:14.400 1090 2448 W Pay : at m.jfl.a(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):31)
11-10 11:45:14.400 1090 2448 W Pay : at com.google.android.gms.pay.gcmtask.PayGcmTaskChimeraService.a(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):67)
11-10 11:45:14.400 1090 2448 W Pay : at m.icg.call(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):32)
11-10 11:45:14.400 1090 2448 W Pay : at java.util.concurrent.FutureTask.run(FutureTask.java:266)
11-10 11:45:14.400 1090 2448 W Pay : at m.fgr.c(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):50)
11-10 11:45:14.400 1090 2448 W Pay : at m.fgr.run(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):76)
11-10 11:45:14.400 1090 2448 W Pay : at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
11-10 11:45:14.400 1090 2448 W Pay : at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
11-10 11:45:14.400 1090 2448 W Pay : at aizt.run(:com.google.android.gms@234414035@23.44.14 (150800-580326705):8)
11-10 11:45:14.400 1090 2448 W Pay : at java.lang.Thread.run(Thread.java:923)
11-10 11:45:14.400 1090 2448 W Pay : Caused by: m.esw: 17: API: TapAndPay.TAP_AND_PAY_API is not available on this device. Connection failed with: erc{statusCode=SERVICE_INVALID, resolution=null, message=null}
11-10 11:45:14.400 1090 2448 W Pay : at m.eyx.a(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):15)
11-10 11:45:14.400 1090 2448 W Pay : at m.etv.c(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):3)
11-10 11:45:14.400 1090 2448 W Pay : at m.evg.t(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):48)
11-10 11:45:14.400 1090 2448 W Pay : at m.evg.f(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):10)
11-10 11:45:14.400 1090 2448 W Pay : at m.evg.j(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):233)
11-10 11:45:14.400 1090 2448 W Pay : at m.evg.i(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):2)
11-10 11:45:14.400 1090 2448 W Pay : at m.ezw.a(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):3)
11-10 11:45:14.400 1090 2448 W Pay : at m.ezf.a(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):7)
11-10 11:45:14.400 1090 2448 W Pay : at m.eyy.d(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):83)
11-10 11:45:14.400 1090 2448 W Pay : at m.eyz.handleMessage(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):283)
11-10 11:45:14.400 1090 2448 W Pay : at android.os.Handler.dispatchMessage(Handler.java:106)
11-10 11:45:14.400 1090 2448 W Pay : at m.ibf.dispatchMessage(:com.google.android.gms.optional_pay@234414049@23.44.14 (100800-0):143)
11-10 11:45:14.400 1090 2448 W Pay : at android.os.Looper.loop(Looper.java:223)
11-10 11:45:14.400 1090 2448 W Pay : at android.os.HandlerThread.run(HandlerThread.java:67)
So it looks like the app works correctly even without Tap and Pay support, but doesn't work with microG for some reason
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the GmsTapAndPay service binding and the logged ITapAndPayService method 74 warning. Reproduce the Green-Got login flow on Android 12 with microG and compare it with the working GAPPS emulator. Done means the app opens normally after entering the email code without freezing because of the TapAndPay interaction.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, java
- Domain
- mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 32/100