Support `intent:` URIs when a user wants to add an activity to their vault entry, instead of an entire application

Examples

  1. When I visit something like my banking application’s login page:

    #!/system/bin/sh
    adb shell am start -a android.intent.action.VIEW -d 'market://details?id=com.rbs.mobile.android.natwest' && \
    cmd activity start --user 0 -a android.intent.action.VIEW -n com.rbs.mobile.android.natwest/co.uk.rbsg.mobile.android.feature.login.LoginActivity -f 0 com.rbs.mobile.android.natwest
    

    …I want to inform Bitwarden to provide me my credentials then, but thereafter ignore certain activities that contain my banking information. Obviously, in this case LayoutParams.FLAG_SECURE is set, but you can see the application.

    In this case, adding intent:#Intent;package=com.rbs.mobile.android.natwest;component=co.uk.rbsg.mobile.android.feature.login.LoginActivity;end would be useful, as would excluding intent:#Intent;package=com.rbs.mobile.android.natwest;component=co.uk.rbsg.mobile.android.feature.accounts.MainActivity;end.

  2. When I visit it.mirko.beta’s login form, like the undermentioned induces:

    #!/system/bin/sh
    adb shell am start -a android.intent.action.VIEW -d 'market://details?id=it.mirko.beta' && \
    cmd activity start --user 0 -a android.intent.action.VIEW -n it.mirko.beta/it.mirko.beta.login.LoadingActivity -f 0 it.mirko.beta
    

    …that is:

    …I am not prompted to enter my password into the field. I’m not surprised, because it’s a WebView, and Bitwarden’s identification algorithm isn’t perfect.

Current Behaviour

Currently, in the hope of informing Bitwarden that it should identify this activity, I am able to add the application to a vault entry with androidapp: (like androidapp://it.mirko.beta), but that doesn’t explicitly add an activity. It adds the application.

Desired Behaviour

Instead, I should be able to supplement this by adding the specific activity to Bitwarden. To provide this, Bitwarden should support native AOSP intent URI syntax, like intent:#Intent;package=it.mirko.beta;component=it.mirko.beta/.login.LoginActivity;end. Heck, this is versatile enough to replace androidapp entirely.

I’ve filed the undermentioned to, hopefully, render this easier for the user:

This isn’t exclusive to one application (albeit a FOSS one, so that’s unimportant). Rather, I don’t know of another which provides this.