mozilla-lockwise / lockwise-android

Firefox's Lockwise app for Android
https://mozilla-lockwise.github.io/lockwise-android/
Mozilla Public License 2.0
623 stars 104 forks source link

Crash when trying to use autofill while Lockwise is locked. #1076

Open maxi0604 opened 4 years ago

maxi0604 commented 4 years ago

Steps to reproduce

Lock Lockwise (fingerprint is enabled) Try to log into any app using autofill. Tap "Unlock Lockwise"

Expected behavior

Lockwise can be unlocked with the fingerprint, after which I can log on with the app's password.

Actual behavior

Lockwise crashes with "Firefox Lockwise stopped"

Device & build information

abodea commented 4 years ago

Hello @Fighter1000 thank you for this report!

Can you please mention the Lockwise version you are using? Also, if you can clarify the following:

Looking forward to hearing an answer from you.

Regards, Andrei

maxi0604 commented 4 years ago

Can you please mention the Lockwise version you are using?

The version shown in the Lockwise settings is 3.1.0 (5362)

  • The fingerprint unlocking screen is displayed when tapping unlock? No, it crashes immediately after trying to unlock it. There isn't even any unlock prompt shown, just the crash screen from Android. I've also noticed it crashing when trying to search Lockwise even while unlocked. The suggested password works fine though.

  • When you try to unlock with the fingerprint and let's say it's a failed attempt and then you tap cancel, Lockwise crashes, is this your case?

It crashes even before asking for my fingerprint, so no.

Thanks for trying to help out.

Edit: md

abodea commented 4 years ago

Thanks for the answer! I have never encountered this issue exactly how you described it. Can you please do the following: Enter the device settings > Apps > Search for Lockwise and access it > Tap on Storage > Clear Data. Re-launch Lockwise and try to log in. You won't lose the progress as you have everything saved on your Firefox account.

Regards, Andrei

maxi0604 commented 4 years ago

Enter the device settings > Apps > Search for Lockwise and access it > Tap on Storage > Clear Data.

Tried that multiple times already, the issue still remained.

abodea commented 4 years ago

Is your phone rooted? If you try to disable the security unlock(fingerprint/pattern) and try to log in works?

RocketCoach commented 4 years ago

Is your phone rooted? If you try to disable the security unlock(fingerprint/pattern) and try to log in works?

I am also experiencing these crashes.

Lockwise v3.1.0 Samsung Galaxy S7 (SM-G930U) Android 8.0.0

I experience a crash after tapping 'Unlock Firefox Lockwise' with fingerprint unlock enabled or disabled.

I also experience a crash when Lockwise is unlocked and I tap 'Search Firefox Lockwise'.

Phone is not rooted.

abodea commented 4 years ago

@Fighter1000 @RocketCoach thanks for the help!

@eliserichards @jhugman @changecourse I was able to reproduce this but it is under very specific steps and not really a normal user behavior for more details please check the following:

Steps:

  1. Launch Lockwise.
  2. Login with valid credentials.
  3. Make sure Lockwise is set as an autofill option.
  4. Set a fingerprint
  5. Re-launch Lockwise.
  6. Open a website for example https://aavtrain.com.
  7. Multitask to Lockwise and tap on the settings menu, after that lock the app.
  8. Multitask back to the browser where you wanna make the autofill.
  9. Tap on the username field and the Unlock Firefox Lockwise
  10. Try to unlock the app with the fingerprint security option.
Device Android version Crash?
Samsung Galaxy S9 8.0,0 ✔️
Samsung Galaxy Note 9 8.1.1
Samsung Galaxy S10+ 9
Google Pixel 3 XL 9
Google Pixel 3 9
Google Pixel 3a XL 10
maxi0604 commented 4 years ago

Is your phone rooted?

No, I don't even have developer mode enabled.

If you try to disable the security unlock(fingerprint/pattern) and try to log in works?

No, it still crashes when trying to search Lockwise, even if the phone security is completely disabled.

maxi0604 commented 4 years ago

@Fighter1000 @RocketCoach thanks for the help!

@eliserichards @jhugman @changecourse I was able to reproduce this but it is under very specific steps and not really a normal user behavior for more details please check the following:

Steps:

1. Launch Lockwise.

2. Login with valid credentials.

3. Make sure Lockwise is set as an autofill option.

4. Set a fingerprint

5. Re-launch Lockwise.

6. Open a website for example https://aavtrain.com.

7. Multitask to Lockwise and tap on the settings menu, after that lock the app.

8. Multitask back to the browser where you wanna make the autofill.

9. Tap on the username field and the `Unlock Firefox Lockwise`

10. Try to unlock the app with the fingerprint security option.

Device Android version Crash? Samsung Galaxy S9 8.0,0 ✔️ Samsung Galaxy Note 9 8.1.1Samsung Galaxy S10+ 9Google Pixel 3 XL 9Google Pixel 3 9Google Pixel 3a XL 10

* So the problem I believe it's only on the devices running exactly **android 8.0.0** following my steps from above.

* [SLF4J warning or error messages and their meanings](http://www.slf4j.org/codes.html#no_static_mdc_binder)
 --------- beginning of crash
2019-11-21 15:47:01.586 29421-29421/? E/AndroidRuntime: FATAL EXCEPTION: main
    Process: mozilla.lockbox, PID: 29421
    java.lang.RuntimeException: Unable to start activity ComponentInfo{mozilla.lockbox/mozilla.lockbox.view.AutofillRootActivity}: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2955)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3030)
        at android.app.ActivityThread.-wrap11(Unknown Source:0)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1696)
        at android.os.Handler.dispatchMessage(Handler.java:105)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6938)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
     Caused by: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation
        at android.app.Activity.onCreate(Activity.java:1038)
        at l.h.c.c.onCreate(ComponentActivity.java:1)
        at androidx.activity.ComponentActivity.onCreate(ComponentActivity.java:1)
        at l.l.d.d.onCreate(FragmentActivity.java:22)
        at l.b.k.i.onCreate(AppCompatActivity.java:4)
        at mozilla.lockbox.view.AutofillRootActivity.onCreate(AutofillRootActivity.kt:1)
        at android.app.Activity.performCreate(Activity.java:7183)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1220)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2908)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3030) 
        at android.app.ActivityThread.-wrap11(Unknown Source:0) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1696) 
        at android.os.Handler.dispatchMessage(Handler.java:105) 
        at android.os.Looper.loop(Looper.java:164) 
        at android.app.ActivityThread.main(ActivityThread.java:6938) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374) 
2019-11-21 15:47:01.588 29421-29421/? D/n.b.f.b.a.a: Proguard UUIDs file not found.
2019-11-21 15:47:01.590 6151-23709/? I/DiscoveryManager: Filter criteria(null) scannerFlags(0)
2019-11-21 15:47:01.591 29817-29817/? D/ViewRootImpl@809e60e[BrowserApp]: MSG_WINDOW_FOCUS_CHANGED 0
2019-11-21 15:47:01.594 4773-8180/? D/GameManagerService: identifyGamePackage. mozilla.lockbox
2019-11-21 15:47:01.594 4773-8180/? D/GamePkgDataHelper: getGamePkgData(). mozilla.lockbox
2019-11-21 15:47:01.594 4773-8180/? D/GameManagerService: identifyGamePackage. mozilla.lockbox
2019-11-21 15:47:01.595 4773-8180/? D/GamePkgDataHelper: getGamePkgData(). mozilla.lockbox
2019-11-21 15:47:01.595 4773-6244/? W/StorageManager: getStorageLowBytes lowPercent : 5, lowBytes : 2821057740, maxLowBytes : 524288000
2019-11-21 15:47:01.595 4773-5605/? D/ConnectivityService: filterNetworkStateForUid() uid: 10033 networkInfo: [type: WIFI[] - WIFI, state: CONNECTED/CONNECTED, reason: (unspecified), extra: "Bf5971b", failover: false, available: true, roaming: false, metered: false]
2019-11-21 15:47:01.595 4773-8180/? D/GameManagerService: identifyGamePackage. mozilla.lockbox
2019-11-21 15:47:01.595 4773-8180/? D/GamePkgDataHelper: getGamePkgData(). mozilla.lockbox
2019-11-21 15:47:01.596 4773-6244/? W/StorageManager: getStorageLowBytes lowPercent : 5, lowBytes : 2821057740, maxLowBytes : 524288000
2019-11-21 15:47:01.596 6151-23709/? W/GuestModeDeviceProber: setFilterCriteria
2019-11-21 15:47:01.597 4773-6244/? W/StorageManager: getStorageLowBytes lowPercent : 5, lowBytes : 2821057740, maxLowBytes : 524288000
2019-11-21 15:47:01.598 4773-5605/? W/StorageManager: getStorageLowBytes lowPercent : 5, lowBytes : 2821057740, maxLowBytes : 524288000
2019-11-21 15:47:01.599 4773-5605/? W/StorageManager: getStorageLowBytes lowPercent : 5, lowBytes : 2821057740, maxLowBytes : 524288000
2019-11-21 15:47:01.599 4773-6244/? W/StorageManager: getStorageLowBytes lowPercent : 5, lowBytes : 2821057740, maxLowBytes : 524288000
2019-11-21 15:47:01.600 4773-6244/? W/StorageManager: getStorageLowBytes lowPercent : 5, lowBytes : 2821057740, maxLowBytes : 524288000
2019-11-21 15:47:01.602 4773-5605/? W/StorageManager: getStorageLowBytes lowPercent : 5, lowBytes : 2821057740, maxLowBytes : 524288000
2019-11-21 15:47:01.602 4773-6244/? D/ConnectivityService: filterNetworkStateForUid() uid: 10628 networkInfo: [type: WIFI[] - WIFI, state: CONNECTED/CONNECTED, reason: (unspecified), extra: "Bf5971b", failover: false, available: true, roaming: false, metered: false]
2019-11-21 15:47:01.603 4244-4244/? I/android.hardware.wifi@1.0-service: installApfPacketFilter
2019-11-21 15:47:01.603 4244-4244/? D/WifiHAL: Setting APF program, halHandle = 0x72be662240
2019-11-21 15:47:01.603 4244-4244/? I/WifiHAL: createRequest: APF set program request
2019-11-21 15:47:01.605 4244-4244/? I/WifiHAL: Done!
2019-11-21 15:47:01.610 29421-29446/? I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2019-11-21 15:47:01.610 29421-29446/? I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2019-11-21 15:47:01.612 4406-4606/? D/DnsProxyListener: DNSDBG::dns addrinfo af 2
2019-11-21 15:47:01.613 4406-4606/? D/DnsProxyListener: DNSDBG::dns by addr af 2
2019-11-21 15:47:01.621 4773-4911/? I/WindowManager: Destroying surface Surface(name=PopupWindow:56320a1) called by com.android.server.wm.WindowStateAnimator.destroySurface:2465 com.android.server.wm.WindowStateAnimator.destroySurfaceLocked:967 com.android.server.wm.WindowState.destroyOrSaveSurfaceUnchecked:3661 com.android.server.wm.WindowState.destroySurface:3609 com.android.server.wm.WindowState.destroySurface:3591 com.android.server.wm.AppWindowToken.destroySurfaces:722 com.android.server.wm.AppWindowToken.destroySurfaces:706 com.android.server.wm.WindowState.onExitAnimationDone:5302 
2019-11-21 15:47:01.621 4256-4490/? I/SurfaceFlinger: id=403 Removed PopupWindow:56320a1#0 (3/12)
2019-11-21 15:47:01.623 29817-29817/? D/ViewRootImpl@809e60e[BrowserApp]: MSG_RESIZED: frame=Rect(0, 0 - 1440, 2960) ci=Rect(0, 84 - 0, 168) vi=Rect(0, 84 - 0, 168) or=1
2019-11-21 15:47:01.626 29421-29421/? W/System.err: SLF4J: Failed to load class "org.slf4j.impl.StaticMDCBinder".
2019-11-21 15:47:01.626 29421-29421/? W/System.err: SLF4J: Defaulting to no-operation MDCAdapter implementation.
2019-11-21 15:47:01.626 29421-29421/? W/System.err: SLF4J: See http://www.slf4j.org/codes.html#no_static_mdc_binder for further details.
2019-11-21 15:47:01.627 29421-29984/? I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2019-11-21 15:47:01.627 29421-29984/? I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
2019-11-21 15:47:01.627 4406-4606/? D/DnsProxyListener: DNSDBG::dns addrinfo af 2
2019-11-21 15:47:01.628 4256-4490/? I/SurfaceFlinger: id=403 Removed PopupWindow:56320a1#0 (-2/12)
2019-11-21 15:47:01.629 4773-6244/? D/Debug: !@DumpState : SHIP
2019-11-21 15:47:01.629 4773-6244/? D/Debug: !@DumpState : debug level:0x4f4c
2019-11-21 15:47:01.630 4773-6244/? D/Debug: !@Dumpstate : Finally, system will skip dumpstate
2019-11-21 15:47:01.630 4773-6244/? W/ActivityManager: crash : mozilla.lockbox,0
2019-11-21 15:47:01.630 4773-6244/? W/ActivityManager:   Force finishing activity mozilla.lockbox/.view.AutofillRootActivity
2019-11-21 15:47:01.632 4773-6244/? W/ActivityManager:   Force finishing activity org.mozilla.firefox/org.mozilla.gecko.BrowserApp
2019-11-21 15:47:01.633 4773-6244/? W/MultiScreenManagerService: moveTaskBackToDisplayIfNeeded(): root activity or app is null, task=TaskRecord{4ce26e9d0 #44 A=org.mozilla.firefox.BROWSER U=0 StackId=1 sz=2}, rootActivity=null
2019-11-21 15:47:01.637 4256-4256/? I/Layer: id=403 onRemoved PopupWindow:56320a1#0 
2019-11-21 15:47:01.638 4773-6244/? W/ActivityManager:   Force finishing activity mozilla.lockbox/.view.RootActivity

That doesn't seem like the issue I had. I tested it in Instagram and I didn't use multitasking.

abodea commented 4 years ago

@Fighter1000 Your bug is regarding Lockwise being locked. So I added those steps so we can reproduce it faster and don't wait a few minutes until the app is locked. Also, if you know and can please provide a logcat when you encounter the crash.

Thanks, Andrei

StanAngeloff commented 4 years ago

I'm affected by this as well. On Android 8.0.0 and Lockwise 3.2.0, tapping the 'Unlock' or 'Search' prompts in Firefox causes Lockwise to crash.

I've sent a couple of feedback reports after the app crashes. Here's a summary of what I submitted:


System information

Stack trace

java.lang.RuntimeException: Unable to start activity ComponentInfo{mozilla.lockbox/mozilla.lockbox.view.AutofillRootActivity}:java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2827)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2902)
at android.app.Activity Thread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1603)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:169)
at android.app.ActivityThread.main(ActivityThread.java:6578)
at java.lang.reflect.Method.invoke(NativeMethod)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygotelInit.main(Zygotelnit.java:767)

Caused by: java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation
at android.app.Activity.onCreate(Activity.java:992)
at U.h.c.c.onCreate(ComponentActivity.java:1)
at androidx.activity.ComponentActivity.onCreate(ComponentActivity.java:1)
at LLd.d.onCreate(FragmentActivity.java:22)
at l.b.k.i.onCreate(AppCompatActivity.java:4)
at mozilla.lockbox.view.AutofillRootActivity.onCreate(AutofillRootActivity.kt:1)
at android.app.Activity.performCreate(Activityjava:7016)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1214)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2780)
...9 more

Network

Application data

finkr commented 4 years ago

I have the same issue (it crash when using autofill for user or password. Any applications, each time).

The application used to work.

Phone: Samsung s7 Android: 8.0.0 Lockwise: v3.2.0

disable the security unlock(fingerprint/pattern) and try to log in works?

Same issue

I tried to unlock directly in lockwise then use autoswitch -> same issue.

gunerkan commented 4 years ago

I am having exactly the same issue with an Asus Zenfone 3 (ZE552KL). As previous posts suggest, my phone has Android 8.0.0 on it. I should also add that this problem has started ~2 weeks ago and before everything was working perfectly. My phone has not rooted. Even if I did a factory reset and clean install, the problem remains same.

EJEvo commented 4 years ago

I'm having the same problem as Fighter1000: Lockwise 3.2.0 crashes as soon as I touch the Lockwise prompt to fill in credentials. Worked initially for a Lockwise update or two, but hasn't since one of the latest updates got applied about a month or two back. I'm on a VZW issued Samsung GS7 (SM-G930V), Android 8.0.0, with lastest VZW updates applied.

uegajde commented 4 years ago

I have same issue. And I also use a device running Android 8.0.

Device and App Information

Device: HTC U Ultra OS: Android 8.0.0 Lockwise version: 3.3.0

Besides, I test some different versions of Lockwise. v2.0.0 works normally. v3.0.1 works normally. v3.3.0 crash when trying to use autofill (crash before asking for fingerprint)

Hope this can help you figure out what makes the Lockwise crash.

zuzzurro commented 4 years ago

I have the exact same problem on my S7. Only difference is that I unlock my mobile using a device pattern not with a fingeprint. It also used to work, but I haven't tracked the precise version when it stopped working. I love Lockwise, please fix this bug..

wryun commented 4 years ago

Same issue on Sony Xperia X Performance. Again Android 8.0.0.

hugorossi commented 4 years ago

Same issue here on my Samsung Galaxy A5 2017 with Android 8.0.0.

ddurst commented 4 years ago

@abodea To confirm:

So the problem I believe it's only on the devices running exactly android 8.0.0 following my steps from above.

...and if you upgrade at all, this crash goes away?

abodea commented 4 years ago

Hello, @ddurst I only have 8.1.0 as the next version of android available. I can confirm that I tried again on Android 8.0.0 and I was able to reproduce this issue but I couldn't on Android `8.1.0). Same as I described in the comment from above. In conclusion, I believe if the Android version is updated, the issue will go away but as we can see above there are many users using Android 8.

rdehouss commented 4 years ago

Hi,

I have exactly the same issue, also Samsung Galaxy S7 - Android 8.0.0 - not rooted - with fingerprint. It crashes as soon as I click on the Unlock with Lockwise button.

Unfortunately, I don't expect Samsung will upgrade Android for older phones... :/

Lockwise version 3.3.0 (5784)

EJEvo commented 4 years ago

I confirmed this evening that 3.1.0 (Build 5362) is the last version to work with my Android 8.0.0 phone (Samsung GS7 from VZW). 3.2.0 and above crash. For those of us with phones locked by cellular carriers, we can't upgrade to a newer version of Android until the carrier issues it, and I'm assuming in most cases they have no intention of doing so.

jhanna80 commented 4 years ago

I have the same problem with AT&T S7 running 8.0.0.

Crashes as soon as I click on the Unlock with Lockwise button.

Anytime I switch to lockwise from another app, using the redirect button is when it happens. For the most part I can launch the app and search my users and passwords just fine.

Edit: I have found that I can launch the app, log in with my fingerprint then switch back to the auto fill and it will work. But trying to launch the app from another app is the problem for me.

ziomau10 commented 4 years ago

Same problem. Android 8.0.0 LG V30+ Lockwise 3.3.0 No root, developer enabled

wryun commented 4 years ago

Is there any way a bystander can help with the 'needs-reproduce' status of this? I thought @abodea had already provided a repro?

eliserichards commented 4 years ago

You're right @wryun, we have some good STR now. I will remove the "needs-reproduce" tag 😄

nasso commented 4 years ago

It's still happening for me:

SM-G930F (Samsung Galaxy S7) Android 8.0.0 Lockwise 4.0.0 (6087)

Chaturanga42 commented 4 years ago

Same issue: Sony Xperia X Comapct (F5321) Android 8.0.0 Lockwise 4.0.0

Unfortunately no androids updates from the manufacturer are expected to arrive

EJEvo commented 4 years ago

Lockwise 4.0 still crashes with Android 8.0.0. There doesn't seem to be any effort to solve this issue, so I'm giving up on Lockwise. Uninstalled.

zuzzurro commented 4 years ago

The last commit is on February 18. This is starting to look like abandonware. What's going on at Mozilla?

wryun commented 4 years ago

I've noticed that Firefox Preview (Fenix) has added password support, so now it and Lockwise can fight about who's saving passwords. Seems like they might have decided to go for that rather than a separate app.

EJEvo commented 4 years ago

I've noticed that Firefox Preview (Fenix) has added password support, so now it and Lockwise can fight about who's saving passwords. Seems like they might have decided to go for that rather than a separate app.

Would this be able to fill in mobile app passwords, like Lockwise (did)? If so, combining the two would make sense. Would be nice of Mozilla to communicate this, however.

whalyf commented 2 years ago

it's AUG 2021and i'm still having the same problem. When i try to autofill the app crashes.