Skip to content

docs: add guide for debug/release APK install conflicts - #347

Merged
grunch merged 1 commit into
mainfrom
fix/keystore-signing-config
Oct 27, 2025
Merged

docs: add guide for debug/release APK install conflicts#347
grunch merged 1 commit into
mainfrom
fix/keystore-signing-config

Conversation

@AndreaDiazCorreia

@AndreaDiazCorreia AndreaDiazCorreia commented Oct 27, 2025

Copy link
Copy Markdown
Member

Added documentation to solve the common conflict when switching between flutter run (debug) and release APKs from GitHub Actions.

  • New docs/DEBUG_RELEASE_CONFLICT.md explains the signing conflict and provides quick/permanent solutions

related with issue #46

Summary by CodeRabbit

  • Documentation
    • Updated Android release signing configuration example file with revised key values and added comprehensive setup guidance and security considerations.
    • Added new documentation explaining Android debug and release APK installation conflicts, including diagnostic verification steps and multiple resolution strategies.

@coderabbitai

coderabbitai Bot commented Oct 27, 2025

Copy link
Copy Markdown
Contributor

Walkthrough

The PR updates the Android Release Signing configuration example with revised placeholder values (storeFile, storePassword, keyPassword, keyAlias) and safety-focused comments. Additionally, it adds documentation explaining Android install conflicts when mixing debug and release APKs built with different signing keys.

Changes

Cohort / File(s) Summary
Android Release Signing Configuration
android/key.properties.example
Updated placeholder values for storeFile (upload-keystore.jks), passwords (uppercase placeholders), and keyAlias (upload). Added instructional and safety comments regarding gitignore warnings and setup guidance.
Android Documentation
docs/DEBUG_RELEASE_CONFLICT.md
New documentation file explaining the cause and resolution of Android install conflicts when mixing debug and release APKs, including verification steps and references to external signing docs.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

  • Verify placeholder values in key.properties.example align with intended Android release configuration
  • Confirm documentation in DEBUG_RELEASE_CONFLICT.md accurately describes the signing conflict and provided solutions

Possibly related PRs

Poem

🐰 A keystore hops into view,
With release keys shiny and new—
No more debug-release collision!
Our signing keys' mission,
Resolved with precision and truuue! 🔑✨

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The PR title "docs: add guide for debug/release APK install conflicts" accurately describes the primary objective stated in the PR description, which explicitly focuses on adding a new documentation file explaining the signing conflict between debug and release APKs. The title is clear, specific, and concise, directly highlighting the main change from the developer's perspective. The secondary file change (android/key.properties.example) appears to be a supporting modification that complements the documentation guide. The title does not need to enumerate every file changed, and it provides sufficient clarity for someone scanning the project history to understand the primary purpose of this changeset.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch fix/keystore-signing-config

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
android/key.properties.example (1)

9-9: Consider clarifying the keystore file location.

The storeFile path is relative. Consider adding a comment clarifying that this path should be relative to the android/ directory (e.g., android/upload-keystore.jks), or include guidance on where users should place the keystore file.

Apply this diff to add clarification:

+# Place your keystore file in the android/ directory
 storeFile=upload-keystore.jks
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 72103e3 and 4c07bda.

📒 Files selected for processing (2)
  • android/key.properties.example (1 hunks)
  • docs/DEBUG_RELEASE_CONFLICT.md (1 hunks)
🧰 Additional context used
📓 Path-based instructions (2)
{android,ios,web}/**

📄 CodeRabbit inference engine (AGENTS.md)

Keep platform wrapper code in android/, ios/, and web/

Files:

  • android/key.properties.example
docs/**

📄 CodeRabbit inference engine (AGENTS.md)

Store additional project guidance and documentation in docs/

Files:

  • docs/DEBUG_RELEASE_CONFLICT.md
🧠 Learnings (1)
📚 Learning: 2025-10-22T12:29:26.971Z
Learnt from: CR
PR: MostroP2P/mobile#0
File: CLAUDE.md:0-0
Timestamp: 2025-10-22T12:29:26.971Z
Learning: Applies to android/local.properties : Never commit android/local.properties or secrets it may contain (should be git-ignored)

Applied to files:

  • android/key.properties.example
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: build
🔇 Additional comments (6)
docs/DEBUG_RELEASE_CONFLICT.md (5)

1-11: Excellent problem description!

The explanation clearly articulates the root cause of the signing conflict and provides good context for users encountering this issue.


26-37: Clear permanent solution guidance.

Good approach to reference the detailed setup guide rather than duplicating information. The bullet list provides helpful context about what users will find in the referenced guide.


38-52: Helpful additional context!

The verification command and alternative approach guidance add valuable practical information for different user scenarios.


16-22: Package name verified as correct.

The applicationId in android/app/build.gradle is network.mostro.app, which matches the adb uninstall command in the documentation. No changes needed.


55-56: Documentation URLs are accessible and valid.

Both reference links return HTTP 200 status codes, confirming they resolve correctly and provide the expected content. No issues found.

android/key.properties.example (1)

7-7: Documentation reference verified.

The referenced file docs/GITHUB_SECRETS_SETUP.md exists in the repository, so users can access the complete setup instructions as intended.

@grunch grunch left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@grunch
grunch merged commit 767101e into main Oct 27, 2025
2 checks passed
@grunch
grunch deleted the fix/keystore-signing-config branch October 27, 2025 20:53
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