Comments (8)
I think it should only take another hour to get the prototype working. I've just been getting it working in a different app on my own domain and can do the same with DDG for testing. Will try to get this finished this evening and push a build to hockey for you.
from ios-search-and-stories.
@nilnilnil After some preliminary setup work on both the app and server (apple-app-site-association json file). We are then able to respond to the url's in app. In the apple-app-site-association file we would add path's that should be handled as universal links, eg a query. When the user taps on this link and opens it up in the app, were able to determine what the link was (get's passed in a NSUserActivity object) and then present the appropriate view. Eg i can search for "mouse" on the DDG web site then be presented with a white banner at the top of the screen under the search bar to "View/Install".
_Is there are way to section of just queries? _
Yes, in the apple-app-site-association son file we would be able to include and exclude links/url's. Were able to use wildcards and really refine a set of url's or sections of the DDG service that can be opened in app.
Implications:
I think being able to open up the app from the website or a link is great. The user is able to save a search term etc. The only drawback that i can see at the moment is that the "link" get's shown as a white banner at the top of the page that has the ability to be opened in the app. So basically if we enabled it for searches, every time the user searches for something on their iOS device, in the response they would see a white banner to open it up in app (they do have the ability to close the banner...) See attached screenshot of the WWDC site.
Heres a reference that shows what's needed on the server end to enable universal links...
https://blog.branch.io/how-to-setup-universal-links-to-deep-link-on-apple-ios-9
from ios-search-and-stories.
So the app banner would always exist on our site in Safari if this was implemented? Also, is there a PR that is representative of this work? What do we need to do to help you get this in a testable build?
from ios-search-and-stories.
I'm pretty sure that the app banner shown in the screenshot is not part of the deep-linking but instead the app reference that can be put into the apple-itunes-app meta tag in the HTML. My understanding with deep linking is that because the app and the web site's domain are known to each other (using the apple-app-site-association file and the domain setting in the app's provisioning profile) they links can be forwarded to the app transparently without any extra UI.
So if this is done, I think we'd want to make sure that you're comfortable that any paths that are registered for deep-linking on duckduckgo.com would be automatically "grabbed" and opened in the iOS app. As you mentioned, which URLs are opened in the app would be configurable based on a basic wildcard match.
I'm trying this out on another app but we can easily incorporate it into the DDG app too.
from ios-search-and-stories.
At this point I think we should experiment with it on a branch, and ensure it doesn't conflict with out Safari integration. I'm concerned it could get complicated with that wrench thrown in.
What's the time investment to get a prototype of this? We could easily host the server side URL map file quickly.
from ios-search-and-stories.
Did that hockey build happen? I thought we were using test flight now?
Edit: It looks like the last Hockey build is from April.
from ios-search-and-stories.
Sorry about the delay in this. The hockey app and testflight upload are building now. I'm not actually sure it's working because the apple-app-site-association JSON file that iOS loads from the associated domain seems to not be refreshing on my test devices after I added some edits. By pushing it to testflight and hockey maybe it'll work on some other devices. The code change is fairly minimal and should be safe to use in the next release, even if we don't enable it with the server-side JSON file. Speaking of a release, can we push one out soon? :)
I have gotten universal apps working smoothly in another app I've been working on, so this one should "just work" once it's on a device that is forced to reload the JSON file.
from ios-search-and-stories.
from ios-search-and-stories.
Related Issues (20)
- When refreshing a readability story the page turns red HOT 2
- Address link does not open native maps app HOT 9
- Search-field issue HOT 2
- Crashes on older iPhones running older versions of iOS HOT 15
- Mosaic view completely broken in the new build (6.0.1) HOT 4
- Viewport height issue HOT 7
- Grey border on app icon HOT 6
- Feature request: Add support for multiple tabs HOT 1
- Feature request: Option to switch to dark mode in low light HOT 1
- 'Added' and 'Removed' pop up missing when favoriting a story from the main story feed HOT 1
- Project references files that are ignored by the VCS HOT 6
- Navigation buttons disappear after view video HOT 1
- DuckDuckGo jumps to far back after swiping backwards HOT 1
- App crashes when the send feedback button inside the settings view is clicked HOT 7
- Clearing cookies/cache doesn't clear local storage - privacy risk HOT 5
- Feature Request: Support URL Schemes HOT 3
- App crashes on startup (iOS 7.1.2) HOT 4
- Red screen after searching or tapping a story HOT 2
- Add voice search to app
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ios-search-and-stories.