Files
thijooree/docs/thijooree/14-settings.md
T
shihaam a8cd22cbe1
Auto Tag on Version Change / check-version (push) Failing after 13m32s
update docs
2026-06-13 21:30:12 +05:00

2.7 KiB

Settings

The settings hub and the logins management screen.


Settings Hub — SettingsFragment

A simple preference-list screen with navigation links to sub-sections (order as defined in SettingsFragment.kt:26-33):

Entry Destination
Logins SettingsLoginsFragment
Appearance SettingsAppearanceFragment
Privacy & Security SettingsSecurityFragment
Notifications SettingsNotificationsFragment
Storage SettingsStorageFragment
About SettingsAboutFragment

Logins — SettingsLoginsFragment

Manages all connected bank accounts and profiles.

Account List

Each connected login is shown as a card. Within each login card, individual profiles (CIF profiles for MIB, or the single account for BML/Fahipay) are listed.

Each profile entry shows:

  • Profile name / CIF type
  • Account number(s)
  • Profile image (circular avatar)
  • Visibility toggle switch

Visibility Toggle

Toggling a profile off hides it from the accounts list and excludes it from API refresh cycles. The session is kept alive — the profile can be re-enabled without re-logging in.

Profile Image

A pencil icon (ic_edit) next to each profile opens an image chooser:

  • Gallery — pick from device photo library
  • Camera — capture via device camera (temp file: cacheDir/profile_photo_tmp.jpg)

Profile images are stored locally via ProfileImageStore:

  • BML: key bml_{profileId}
  • Fahipay: key fahipay_{loginId}
  • MIB: uploaded to the MIB server via profile image API (P40); retrieved via hash (P41); deleted via P42

Add Account

A + (Add) button navigates to LoginActivityBankSelectionFragment to add a new bank login.

Logout

A Logout button on each login card shows a confirmation dialog. On confirm:

  • Session tokens are revoked where supported
  • Credentials are removed from CredentialStore
  • All associated BankAccount objects are removed from BasedBankApp
  • The accounts list is refreshed

BML Business Profile Activation

For inactive BML business profiles, an Activate button kicks off the OTP-channel selection (email / SMS) and OTP confirmation flow — see SettingsLoginsFragment.kt:572, 722 activateBmlBusinessProfile() and Business Profile OTP.

OTP Seed

OTP seeds (MIB and BML business) are imported during initial login in CredentialsFragment — either by scanning the otpauth:// QR or pasting the raw seed. The seed is stored encrypted in CredentialStore and used by the OTP Screen. To replace a seed, remove the login and re-add it.


 


← Financing     Next → Settings — Security