C2 Commerzbank Phototan App - no keyboard

REPRODUCIBILITY: Always
OS VERSION: 5.0.0.43
HARDWARE: C2
UI LANGUAGE: english
REGRESSION:

DESCRIPTION:

The commerbank PhotoTan app starts, but when i try to entry my username/PIN via the given
input fields, no keyboard shows up to enter the data.

PRECONDITIONS:

STEPS TO REPRODUCE:

  1. Install Commerzbank PHototan App from the Aurora Store
  2. Start the Phototan App and select username or PIN input field to try to entry your credentials

EXPECTED RESULT:

Keyboard shows up to enter the username / PIN

ACTUAL RESULT:

No keyboard shows up.

MODIFICATIONS:

None

ADDITIONAL INFORMATION:

1 Like

With AVM Smart home App there is the same behavior.

Still broken with version 5.0.0.61

I can confirm the problem on my hardware:

SailfishOS: 5.0.0.62
HARDWARE: Xperia X10 II
UI LANGUAGE: German

Additional Information

  • The app in question is the current com.commerzbank.photoTAN in version v12.0.0 (81980).

  • This worked fine previously with 4.6. So it is a regression.

  • So far the other Android apps that have text input bring up the keyboard, so they keep working.

Additional Information: Logs

Trying to get some debug information, following [wiki] Collecting debug information for Android apps like:

devel-su
appsupport-attach /system/bin/logcat

now opening the app and using the registration button to bring up two text fields, tap into one.

03-06 09:44:12.583  2306  2306 D dtxSessionReplay: 🚜 Track -> EditText pinValue has focus.
03-06 09:44:12.618  2306  2306 D dtxRageTapDetector: #2.register tap: TapData{tapDown=TapEventData{x=75.04762, y=233.52382, timestamp=1741250652559, eventTime=3267897}, tapUp=TapEventData{x=75.04762, y=233.14287, timestamp=1741250652618, eventTime=3267940}}
03-06 09:44:12.618  2306  2306 D dtxRageTapDetector: #2.tap exceeds timespan difference

a second run and looking before that, which has more messages, I cannot say which ones are related

03-06 09:51:50.473  2545  2545 W rzbank.photoTA: Accessing hidden method Landroid/graphics/Canvas;->drawPatch(Landroid/graphics/NinePatch;Landroid/graphics/Rect;Landroid/graphics/Paint;)V (greylist-max-o, linking, denied) 
03-06 09:51:50.473  2545  2545 W rzbank.photoTA: Accessing hidden method Landroid/graphics/Canvas;->drawPatch(Landroid/graphics/NinePatch;Landroid/graphics/RectF;Landroid/graphics/Paint;)V (greylist-max-o, linking, denied) 
03-06 09:51:50.605  2545  2748 D ProfileInstaller: Skipping profile installation for com.commerzbank.photoTAN 
03-06 09:51:50.618  2545  2592 I OpenGLRenderer: Davey! duration=742ms; Flags=1, IntendedVsync=3725216109039, Vsync=3725782775683, OldestInputEvent=9223372036854775807, NewestInputEvent=0, HandleInputStart=3725798770943, AnimationStart=3725798774016, PerformTraversalsStart=3725804841209, DrawStart=3725925521410, SyncQueued=3725935450194, SyncStart=3725937384870, IssueDrawCommandsStart=3725939133249, SwapBuffers=3725954566277, FrameCompleted=3725960893983, DequeueBufferDuration=1021580, QueueBufferDuration=959499, GpuCompleted=-6190193422633007456,  
03-06 09:51:50.864  2545  2545 D dtxSessionReplay: ð<9f><9a><9c> Track -> Intercepting Edit text: com.google.android.material.textfield.TextInputEditText{13354b9 VFED..CL. ........ 0,0-996,140 #7f0a0380 app:id/usernameValue} 
03-06 09:51:50.866  2545  2545 D dtxSessionReplay: ð<9f><9a><9c> Track -> Intercepting EditText 2131362688 name: usernameValue 
03-06 09:51:50.867  2545  2545 D dtxSessionReplay: ð<9f><9a><9c> Track -> Intercepting Edit text: de.commerzbank.phototan.infrastructure.common.ui.credentials.SecureTextInputEditText{6c1a0fe VFED..C.. ........ 0,0-996,140 #7f0a024a app:id/pinValue} 
03-06 09:51:50.868  2545  2545 D dtxSessionReplay: ð<9f><9a><9c> Track -> Intercepting EditText 2131362378 name: pinValue 
03-06 09:51:51.063   176   222 E libprocessgroup: set_timerslack_ns write failed: Operation not permitted 
03-06 09:51:51.066   176   468 I ActivityManager: Killing 2725:com.commerzbank.photoTAN:cyxylyuydyjyh [..] yy.à¸<96>â <89>/u0a39i-8999 (adj 0): isolated not needed 
03-06 09:51:51.067   176   222 I chatty  : uid=1000(system) OomAdjuster identical 6 lines 
03-06 09:51:51.070   176   222 E libprocessgroup: set_timerslack_ns write failed: Operation not permitted 
03-06 09:51:51.075   176   220 I libprocessgroup: Successfully killed process cgroup uid 90001 pid 2725 in 0ms 
03-06 09:51:51.100  2685  2685 I Zygote  : Process 2725 exited due to signal 9 (Killed) 
03-06 09:51:51.103   176   223 D BatteryStatsImpl: Got readings for an invalid user's uid 500000 
03-06 09:51:51.103   176   223 D KernelCpuUidUserSysTimeReader: Removing uids 500000-500000 
03-06 09:51:51.104   176   223 E KernelCpuUidUserSysTimeReader: failed to remove uids 500000 - 500000 from uid_cputime module 
03-06 09:51:51.104   176   223 E KernelCpuUidUserSysTimeReader: java.io.FileNotFoundException: /proc/uid_cputime/remove_uid_range: open failed: EPERM (Operation not permitted) 
03-06 09:51:51.104   176   223 E KernelCpuUidUserSysTimeReader:         at libcore.io.IoBridge.open(IoBridge.java:492)

A comparison with a different android apps show that some messages seems to be normal. If a different debugging log is useful - let me know.

@AndyWuest I suggest you remove the "C2 " from the title, as this affects more than one device.

Still broken with 5.0.0.67

Still broken with 5.0.0.67

Here also, thus confirmed.

For me this is also broken.
App version 15.0.0
SFOS 5.0.0.68
Sony Xerperia 10 II

Focus and keyboard handling seems to be working 5.1.0 aka next major release

6 Likes

Problem is still there after upgrade to 5.0.0.76.

Unfortunately not. I just upgraded to 5.1.0.11 and tried to pay something by credit card. For this one needs to enter the PIN into the Phototan App and still the keyboard does not pop up.

Thanks for testing.

Note: The workaround that I use is the Photo TAN scan. That works, because you do not need to enter something with the keyboard into the app.

1 Like

That might be true for most payments with a PC, but it does not help when you need to pay on the mobile.

P.S.: I think Jolla will have a lot of fun with new customers like those from the Commodore Callback and bugs like this or the Android connectivity issues. These bugs are so long-standing, I would expect less idealistic customers to just return their phones. I really don’t understand the priorities of Jolla.

If you want Android, you buy Android, if you want IOS you buy apple.
I you want something else you get one of the Androids " degoogled" , Linux phone , or Jolla with possibility to use android apps.
----> Purchase decision made includes already a willingnes to take a risk.

The bug is still there with 5.2.0.17, i.e. with the Jolla Phone 2026.
The keyboard is required for activation of the photoTAN app, so you can’t use it on the new Jolla Phone.

I tried now with external keyboards, but that does not work: I can’t enter digits like 1 and 2 into Android apps. Other digits do work. The keyboard is also working fine with Sailfish OS applications.

By the way, out of curiosity, I did what in the current world works quite well with standardized log files: I threw it to a LLM and asked for an explanation.

The relevant lines from the log posted by @ber are those:

03-06 09:51:50.864 ... dtxSessionReplay: ð<9f><9a><9c> Track -> Intercepting Edit text: com.google.android.material.textfield.TextInputEditText{... app:id/usernameValue} 
03-06 09:51:50.867 ... dtxSessionReplay: ð<9f><9a><9c> Track -> Intercepting Edit text: de.commerzbank.phototan.infrastructure.common.ui.credentials.SecureTextInputEditText{... app:id/pinValue}

Apparently, there’s a company called Dynatrace which, among other things, does exactly what I mentioned earlier: Paranoid safety crap and the “dtxSessionReplay” is probably an indicator that their tools are being used here. The “SecureTextInputEditText” indicates that this is not a normal text field and special safety mechanisms are applied.

If you guys want to validate that, you could install the older app (which apparently worked) and see if those tools and methods also come up in logs there. If they don’t, that’s pretty much proof that Commerzbank has upgraded their “security” - as all the banks do all the time.

The issue with the external keyboard should be fixed in the next Sailfish OS release:
[5.2.0.16] Hardware keyboard: keys 1 2 E S D F B produce no character in Android App Support (correct keycode, no Unicode mapping)

ISTR that the issue started with a Sailfish OS update, not with an update of the app. I could be wrong, though. What would be needed is a way to activate the keyboard manually. This would be a more generic fix than hunting for interoperability issues.

I tried you suggestion, but with “Typewise Keyboard” from Aurora Store and this also does not get activated.

So, I wait with the activation until the next Sailfish OS release is available and then I will connect the external keyboard again. (On my old Xperia I have also installed Android again, so I will install the banking apps there as fallback solution. My other Android device is a Gemini with hardware keyboard and I will probably sell this.)

Thanks, Dietmar

The external keyboard is working, except for some keys like 1,2 etc. So I’m confident.

Now I need to get DB Navigator running. The geniuses at the german railroad company are not capable of implementing a login themselves but forward it to the web browser and this now also fails with Firefox…

Does the USB keyboard (with whatever available keys work) function in the specific secure window of your Commerzbank app? If so, you’re in luck.

I think I might be able to help you with the DB navigator thing: You can install Fennec or another Android-Browser and then select it as the standard browser in AAS settings. That leads to the whole authentication flow being handled within Android (and - at least when I tried it - to successfully completing)

1 Like