Skip to content

Conversation

@Karam19
Copy link
Contributor

@Karam19 Karam19 commented Nov 6, 2025

Description

Testing (ignore for documentation update)

Type of change

  • Bug fix
  • New feature
  • Breaking change
  • Documentation update

Checklist:

Additional Notes:

Summary by CodeRabbit

  • Documentation
    • Streamlined Android installation guide with clearer prerequisites and simplified repository setup
    • Updated to latest SDK version with improved dependency configuration
    • Enhanced usage examples with updated error handling patterns and import guidance
    • Added troubleshooting section for common implementation issues
    • Expanded API documentation with complete request parameters and configuration options

@vercel
Copy link

vercel bot commented Nov 6, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
docs Ready Ready Preview Comment Nov 6, 2025 8:55pm

@CLAassistant
Copy link

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

@coderabbitai
Copy link

coderabbitai bot commented Nov 6, 2025

Walkthrough

Two Android-Kotlin documentation files updated to reflect SDK version changes (0.3.0 to 0.21.0) and new API patterns. The installation guide is reorganized with clearer prerequisites, simplified Maven repository configuration, and comprehensive permission guidance. The usage guide introduces manifest metadata-based request creation, revised error handling with distinct exception types, and extended constructor parameters supporting session information and provider versioning.

Changes

Cohort / File(s) Summary
Android-Kotlin Documentation
content/docs/android-kotlin/installation.mdx, content/docs/android-kotlin/usage.mdx
Installation guide restructured with Android 5.0+ requirement, Reclaim account prerequisites panel, version-agnostic Maven repository path (/android/repo), updated dependency to 0.21.0, reorganized AndroidManifest configuration with literal placeholder values (YOUR_RECLAIM_APP_ID, YOUR_RECLAIM_APP_SECRET), and new permissions section. Usage guide revised to introduce SDK import section, adds ReclaimVerification.Request.fromManifestMetaData() factory method for request creation, updates error handling to use onResponse/onException pattern with specific exception types, documents optional constructor parameters (session, contextString, parameters, providerVersion), and adds troubleshooting section for Cronet integration.

Sequence Diagram(s)

sequenceDiagram
    participant App as App
    participant SDK as Reclaim SDK
    participant Handler as ResultHandler
    
    rect rgb(200, 220, 255)
    Note over App,Handler: Request Creation
    App->>SDK: fromManifestMetaData(context, providerId)
    SDK-->>App: ReclaimVerification.Request
    alt Alternative: Direct Construction
        App->>SDK: ReclaimVerification.Request(appId, secret, providerId,<br/>session?, contextString?, parameters?, providerVersion?)
        SDK-->>App: Request instance
    end
    end
    
    rect rgb(220, 255, 240)
    Note over App,Handler: Verification Flow
    App->>SDK: startVerification(request)
    SDK->>SDK: Generate ZK proof & verify in-app
    alt Success Path
        SDK->>Handler: onResponse(successful response)
        Handler-->>App: Handle success
    else Error Paths
        SDK->>Handler: onException(Failed/Cancelled/<br/>Dismissed/SessionExpired)
        Handler-->>App: Handle specific exception type
    end
    end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • API Method Addition: Verify fromManifestMetaData() factory method signature and behavior aligns with actual SDK implementation
  • Constructor Parameter Changes: Confirm all new optional parameters (session, contextString, parameters, providerVersion) are correctly documented with accurate types and defaults
  • Exception Handling: Review the new exception type handling pattern (Failed, Cancelled, Dismissed, SessionExpired) for completeness and accuracy
  • Dependency Version Bump: Validate that 0.21.0 is the correct version and that the version-agnostic repository path (/android/repo) correctly serves this version

Possibly related PRs

Suggested reviewers

  • Kushal7788
  • AbdulRashidReshamwala
  • predatorx7

Poem

🐰 Hopping through the docs with glee,
New API patterns, clean and free!
From 0.3.0 to 0.21.0 we leap,
Manifest metadata, secrets to keep,
ZK proofs verified, documentation deep! 📚✨

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title check ❓ Inconclusive The PR title 'docs: update android sdk docs to the latest' is vague and generic. It uses non-descriptive phrasing that doesn't convey the specific changes made, such as dependency updates (0.3.0 to 0.21.0), repository path reorganization, or API documentation improvements. Replace with a more specific title that highlights key changes, such as: 'docs: update Android SDK installation and usage guide with v0.21.0 dependency and new API examples'
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch update-android-sdk-docs

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.

Copy link

@coderabbitai coderabbitai bot left a comment

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 (2)
content/docs/android-kotlin/installation.mdx (1)

68-85: Permissions section is comprehensive.

Clear distinction between required (INTERNET) and optional permissions. The optional permissions list covers camera, location, audio, and battery optimization scenarios that providers may request at runtime. Consider adding a brief note explaining why these permissions might be needed (e.g., "optional permissions may be requested by specific providers").

content/docs/android-kotlin/usage.mdx (1)

63-88: Complete Request Parameters section documents optional fields clearly.

The optional fields (session with sessionId/timestamp/signature, contextString, parameters, providerVersion) are well-documented. Each field includes a brief explanation. However, the providerVersion example uses a chained method call (ReclaimVerification.Request.ProviderVersion.resolved("1.0.0")) that may be unclear. Consider adding a comment or brief explanation of what provider version selection does.

Example improvement (for reference):

    providerVersion = ReclaimVerification.Request
        .ProviderVersion.resolved("1.0.0")  // Specify SDK provider version (optional)
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 20b0dcb and 31adfe0.

📒 Files selected for processing (2)
  • content/docs/android-kotlin/installation.mdx (1 hunks)
  • content/docs/android-kotlin/usage.mdx (1 hunks)
🔇 Additional comments (9)
content/docs/android-kotlin/installation.mdx (4)

15-16: Prerequisites are clear and directly link to dependency requirements.

The prerequisites now explicitly mention the Reclaim account requirement with a link to the API key guide, which is helpful. The Android 5.0+ (API level 21) minimum is appropriate.


24-40: Verify the repository URL serves SDK version 0.21.0.

The repository URL changed from a versioned path (/android/0.3.0/repo) to a version-agnostic path (/android/repo). While this is good for future-proofing, confirm that this repository correctly serves version 0.21.0 (and will continue to serve future versions appropriately).


42-48: Dependency version updated correctly.

Version bump from 0.3.0 to 0.21.0 is reflected properly. Verify this version exists on Maven Central (or the configured custom repository).


50-66: AndroidManifest configuration is clear.

The reorganization places the android:windowSoftInputMode inside the activity tag and updates placeholders to more explicit values (YOUR_RECLAIM_APP_ID, YOUR_RECLAIM_APP_SECRET). This is clearer than the previous APP_ID/APP_SECRET notation and makes it obvious these are templates to be replaced.

content/docs/android-kotlin/usage.mdx (5)

3-3: Description provides helpful context.

The updated description ("ZK proof generation with in-app web verification") is more specific than the installation.mdx description. Both files complement each other well—installation focuses on setup, usage focuses on functionality.


8-12: Import section is a helpful addition.

The new dedicated import section improves clarity for developers unfamiliar with the SDK. Good practice to show this upfront.


14-33: Two request creation methods cover common use cases well.

The fromManifestMetaData(context, providerId) factory method reduces boilerplate by extracting app ID and secret from AndroidManifest.xml metadata (set per the installation guide), while the direct constructor offers flexibility. The method names and parameter labels are clear.


35-61: Error handling with specific exception types is more useful than generic exceptions.

The updated handler distinguishes between Failed, Cancelled, Dismissed, and SessionExpired, enabling better error recovery logic. Log levels (error for Failed, debug for others) are appropriate. This is a clear improvement over the previous generic onException pattern.


90-100: Troubleshooting section addresses a real-world issue.

Cronet guidance for devices without Google Play Services is practical. However, verify that the Cronet version 141.7340.3 is current and matches SDK compatibility requirements.

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.

3 participants