Closed riyaz closed 2 years ago
@StanKocken can you reproduce the behavior described by @riyaz, and determine if it is a bug from your POV?
This is the sample code and it works fine with 1password and google smart lock, from the stack trace it looks like dashlane is expecting something which is missing
public static void retrievePassword(Activity activity) {
CredentialClient client = CredentialClient.getInstance(activity);
CredentialRetrieveRequest request = CredentialRetrieveRequest.fromAuthMethods(AuthenticationMethods.EMAIL);
Intent retrieveCredentialIntent = client.getCredentialRetrieveIntent(request);
activity.startActivityForResult(retrieveCredentialIntent, YOLO_RETRIEVE);
}
Process: com.dashlane, PID: 28723
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.dashlane/com.dashlane.yolo.CredentialPickerActivity}: java.lang.IllegalArgumentException: expected: is not a null or empty string
but: was null
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2817)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2892)
at android.app.ActivityThread.-wrap11(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1593)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6541)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
Caused by: java.lang.IllegalArgumentException: expected: is not a null or empty string
but: was null
at java.lang.reflect.Constructor.newInstance0(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:334)
at org.valid4j.ExceptionOneStringArgumentFactory.newInstance(SourceFile:30)
at org.valid4j.Validation.validate(SourceFile:110)
at org.openyolo.a.e.d(SourceFile:331)
at org.openyolo.a.e.<init>(SourceFile:304)
at com.dashlane.yolo.h.a(SourceFile:2072)
at com.dashlane.yolo.CredentialPickerActivity.onCreate(SourceFile:67)
at android.app.Activity.performCreate(Activity.java:6975)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1213)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2770)
... 9 more
@riyaz which demo app are you using? "testapp" or "demoapps > passwordlogin"? If you use one of them, can you try with the other? According to your trace, it seems that the username or email is missing on your Dashlane credential. May be a provider bug but just want to be sure on the steps to reproduce.
Its my app, not sample, I have one account in dashlane verified it through dashlane app, it has email and password.
Yet to try with sample.
I just checked on my code and it seems that Dashlane is not able to read the username (which can be an email) for one of your credential.
Let me know if you can reproduce it on a sample app or if you want to give me a demo of your app so I can reproduce on my hand.
In sample i'm able to save but on login dashlane is not even showing, but in my app, able to save, listed in login but crashing.
Will mail you my apk.
Flow tested
Try the above steps with dashlane and lastpass, but after 6th step its not picking the previously saved password, i verified data in each of the app properly still not auto-logging in.