Goal: Have a desktop shortcut that opens https://news.google.com/news/i#0 , ignoring the contained web app manifest that otherwise "overrides" the saved shortcut to http://news.google.com/news?sapa=1 and with "display": "standalone"
.
I had this working previously on an older Android phone before a replacement / upgrade.
Prior to the upgrade, I was able to long-press and open individual articles in new tabs - as well as copy link shortcuts to specific articles, as well as all of the other features and functionality that Chrome has to offer. Here is just a partial selection of references of other users complaining about the same:
- https://productforums.google.com/forum/#!topic/news/MdZ22eC1X1Y
- https://productforums.google.com/forum/#!topic/news/bLlTM_OhTns
Using https://news.google.com/news/i#0 provides a temporary successful work-around. However, I can't find a successful way to add a link for this to my home screen. The "Add to Home screen" option within Chrome instead saves a link to http://news.google.com/news?sapa=1 - and in such a way that it opens as a web application instead of a web page within Chrome:
- https://developer.chrome.com/multidevice/android/installtohomescreen
- https://developer.mozilla.org/en-US/docs/Web/Manifest
On a desktop operating system, this would be a non-issue. (Create shortcut, enter desired URL, done.)
Attempt 1: Provide my own Manifest
So I created my own manifest - editing https://news.google.com/news/ui/resources/json/manifest.json to change the start_url
attribute to https://news.google.com/news/i#0
, and the display
attribute from standalone
to browser
. I then created my own HTML page that simply contained the below - then self-hosted both on a local web server:
<html>
<head>
<Title>Google News</Title>
<link rel="manifest" href="/news/manifest.json"/>
</head>
<body>
Test
</body>
</html>
However, this doesn't work: Despite the shortcut being saved with the desired name and icon, it links back to my self-hosted HTML page, and not the indicated start_url
. Unfortunately, it appears that cross-domain URLs are not allowed per the manifest intent - as per https://github.com/w3c/manifest/issues/183 and https://github.com/w3c/manifest/issues/196 .
Attempt 1b: MITM website
Within the confines of my own local network, I figured I could try to man-in-the-middle (MITM) the website to temporarily provide a desired manfiest to use for addition to the home screen. Unfortunately, the website uses HSTS here, which appropriately blocks the attempt.
Regardless - this is way too much work for what should be a simple effort.
Attempt 2: Widget Bookmark
Unfortunately, it looks like the 1x1 bookmark widget was removed in Chrome 48, as per https://productforums.google.com/forum/#!topic/chrome/Ikn2YhvT98s . The suggested work-around is to use the "Add to Home screen" feature within Chrome. Goto 10 / see beginning.
Attempt 3: Use the default-provided "Internet" browser
Unfortunately, using "Add shortcut on Home screen" in the default-provided "Internet" browser produces the same result as Chrome.
Consideration 4: Use a custom app / widget
Could probably write and install a custom application or widget that could be added to the home screen to meet the goal.
Or don't re-invent the wheel, and use an existing one. Some possibilities:
- "More Shortcuts": https://play.google.com/store/apps/details?id=com.ss.moreshortcuts&hl=en
- "Shortcut Customizer": https://play.google.com/store/apps/details?id=com.dezits.shortcut4file&hl=en
Conclusion
How can someone create a desktop shortcut to an arbitrary URL, ignoring a provided web app manifest?