Skip to content

Conversation

@manolovn
Copy link
Contributor

@manolovn manolovn commented Aug 6, 2025

What is this PR doing?

Serve the static file assetlinks.json in the URL {baseUrl}/.well-known/assetlinks.json following the documentation https://developer.android.com/training/app-links/verify-android-applinks#publish-json

How should this be manually tested?

N/A -- make sure CI passes (since an integration test was added)

What are the relevant tickets?

Resolves VIDSOL-134

Checklist

  • Branch is based on develop (not main).
  • Resolves a Known Issue.
  • If yes, did you remove the item from the docs/KNOWN_ISSUES.md?
  • Resolves an item reported in Issues.
    If yes, which issue? Issue Number?

@github-actions github-actions bot changed the base branch from main to develop August 6, 2025 14:25
@manolovn manolovn changed the title VIDSOL-134 add route to assetlinks json file VIDSOL-134: add route to assetlinks json file Aug 6, 2025
@manolovn manolovn marked this pull request as ready for review August 6, 2025 15:37
Copy link
Contributor

@v-kpheng v-kpheng left a comment

Choose a reason for hiding this comment

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

Looks good! 💪

That said, left some questions/comments. Thanks! 🙏

@@ -0,0 +1,9 @@
[{
"relation": ["delegate_permission/common.handle_all_urls"],
Copy link
Contributor

Choose a reason for hiding this comment

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

It's not obvious what the relation properties listed provide us. Since this is a JSON file, we don't have a good way of inlining documentation either.

Is there a way for us to document why the non-obvious properties have the value they do? Naively, maybe we can document them in the integration test you added?

Copy link
Contributor

Choose a reason for hiding this comment

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

Thinking about this some more, you can probably make this a plain object or refactor as a getter that returns a plain object. Then, you can add comments, as needed.

The endpoint you created below can handle the serialization and return the expected JSON.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

changes done here 11d3528

@manolovn manolovn requested a review from v-kpheng August 12, 2025 08:01
v-kpheng
v-kpheng previously approved these changes Aug 12, 2025
Copy link
Contributor

@v-kpheng v-kpheng left a comment

Choose a reason for hiding this comment

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

LGTM! 💪 🚀

assetLinksRouter.get('/assetlinks.json', (_req: Request, res: Response) => {
res.json([
{
// Grants the target permission to handle all URLs that the source can handle
Copy link
Contributor

Choose a reason for hiding this comment

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

Nice comments! 💪

const assetLinksRouter = Router();

/**
* tl:dr: Serve the static file needed for mobile deep linking
Copy link
Contributor

Choose a reason for hiding this comment

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

tl:dr: implies that this will be preceded or proceeded by a more verbose explanation. Since there is none, how do you feel about dropping it (and leaving "Serve the ...")?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

changed here 568248a

@manolovn manolovn force-pushed the deeplink-android-support branch 2 times, most recently from 4e43d6b to 42e7e59 Compare August 13, 2025 12:47
@manolovn manolovn force-pushed the deeplink-android-support branch from 42e7e59 to 5b92bcd Compare August 13, 2025 14:24
@sonarqubecloud
Copy link

Copy link
Contributor

@cpettet cpettet left a comment

Choose a reason for hiding this comment

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

LGTM Great job! :shipit:

Copy link
Contributor

@behei-vonage behei-vonage left a comment

Choose a reason for hiding this comment

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

LGTM! 🚀

@v-kpheng v-kpheng merged commit e94c649 into develop Aug 13, 2025
7 checks passed
@v-kpheng v-kpheng deleted the deeplink-android-support branch August 13, 2025 15:02
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.

5 participants