My app defines the intent filters to handle URL\'s from my site defined by
For me, it was the fact that my assetlinks.json
file was UTF-8 and contained a byte-order mark (BOM), which is a three-byte magic number at the head of the file that signals the encoding to a consuming program. The BOM is optional, and apparently the Google / Android tools do not like to see it. When it was present, Google's digital asset links verifier (URL below) gave me a "malformed JSON" error.
If you're using Visual Studio, here's how to determine if you have the BOM in your file, and remove it if necessary:
EF BB BF
, that's the problem.Here's the URL you can use to check your file (replace example.com with your actual URL):
https://digitalassetlinks.googleapis.com/v1/statements:list?source.web.site=https://example.com&relation=delegate_permission/common.handle_all_urls