Skip to content

Resolves known Android 12-14 bug around key management - #142

Open
cheeseonamonkey wants to merge 2 commits into
Musheer360:masterfrom
cheeseonamonkey:KeyCipherBug
Open

Resolves known Android 12-14 bug around key management#142
cheeseonamonkey wants to merge 2 commits into
Musheer360:masterfrom
cheeseonamonkey:KeyCipherBug

Conversation

@cheeseonamonkey

Copy link
Copy Markdown
Contributor

see:

What does this PR do?

Added a check according the Google's own recomended fix for a known bug.

Type of change

  • Bug fix (Accessibility Service, API handling, UI)
  • New command (built-in AI or text replacer)
  • New provider integration
  • UI / theme change
  • Translation / localization
  • Refactor (no behavior change)
  • Documentation

Testing

  • Tested with Accessibility Service enabled on a real device
  • Verified trigger detection still works in WhatsApp / Gmail / Notes
  • Text replacer commands execute instantly (no regressions)
  • AI commands return proper responses with Gemini / Groq
  • Password fields are still ignored
  • If touching service/CommandRunner.kt or ui/processtext/, tested the text-selection
    popup too (with accessibility enabled and disabled)
  • No new external dependencies added

Checklist

  • Builds cleanly with ./gradlew assembleDebug
  • No hardcoded API keys or secrets
  • Follows existing code style (no new linters/formatters)
  • Works on API 23+ (no higher-API-only calls without version checks)

@Musheer360

Musheer360 commented Aug 20, 2026

Copy link
Copy Markdown
Owner

Thanks for looking into issue #141. I checked the master branch. Key generation is now in app/src/main/java/com/musheer360/swiftslate/manager/KeyCipher.kt. So this PR conflicts. We can't merge it as is. Can you rebase onto master? Please apply the API 35+ guard in KeyCipher.kt. Android docs flag issues with setUnlockedDeviceRequired(true) on Android 12–14. Keys get deleted if you remove the secure lock screen. Check API 34 and 35 behavior too. Use tests or a device. Keep existing aliases and data intact. We'll rerun the full test and lint validation once you're done. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants