Coder Social home page Coder Social logo

Comments (8)

sreilly avatar sreilly commented on August 14, 2024 3

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.

SwiftlyDeft avatar SwiftlyDeft commented on August 14, 2024 1

@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.

img_4457

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.

nilnilnil avatar nilnilnil commented on August 14, 2024

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.

sreilly avatar sreilly commented on August 14, 2024

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.

nilnilnil avatar nilnilnil commented on August 14, 2024

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.

nilnilnil avatar nilnilnil commented on August 14, 2024

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.

sreilly avatar sreilly commented on August 14, 2024

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.

infinitekind avatar infinitekind commented on August 14, 2024

from ios-search-and-stories.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.