Hack OK Google
More and more users are now using voice to search on mobile and wearable devices. On Android, a user can say "Ok Google, search for shoes on Amazon" and Google Assistant opens the Amazon app. If the user is not satisfied with the results from Amazon, or if she wants to compare results from other apps, e.g. Zappos or Poshmark, then she has to search again using a different app.
Quixey solves this by providing results across many relevant apps with rich actions.
Our goals for “Hack OK Google” were to:
- Enable users to experience Quixey instant actions through the “Ok Google” voice assistant
- Search directly using Quixey
- Access Quixey search while searching in other apps
- Provide rich integration with Android Wear and perform actions right from a smartwatch
- Extend Quixey Search for actions to perform complex tasks such as track the price for a product, request an Uber, etc.
We leveraged the Quixey API and proprietary mobile breadcrumb technology to achieve our goals.
Android provides APIs to search within an app. We integrated Quixey Search on the Android device, so users can search with Quixey using Google Assistant.
For example, a user can say “Ok Google, search for restaurants on Quixey” and Quixey returns results from multiple apps. The top result is pushed to the smartwatch, which is especially useful if the user initiated the search from the watch.
We used the Quixey SDK in conjunction with Android Voice Actions API to implement this feature.Enhancing search from other apps
To increase user choice, we implemented a mechanism to access Quixey search results, even when the user uses other apps to search.
When a user says “Ok Google, search for shoes on Amazon,” we intercept the request and provide a Quixey overlay icon on top of the Amazon app. The user can tap on the overlay to view the Quixey results with great choices from other apps, e.g. Zappos and Poshmark.
In addition, we push the top result to the Android Wear smartwatch. The user can perform contextual actions from the watch. For a restaurant, the user can Call, Navigate or “Request an Uber”. For a product, user can tap “Add to Cart” or Buy the item.
Even if the target app doesn’t support deep links, we execute these complex actions using mobile breadcrumbs.Tracking prices
Users often abandon their shopping carts because the price of the item is too high. We added a new Price Track action button in the product Deep View Card. When a user enables price tracking, we monitor the product’s price using a background service on the client and Quixey’s API backend. When we detect a price drop, we push notifications to the phone and the wearable device. The user can add the item to the shopping cart by tapping on the notification alert.
Deep View Card showing Price Track ActionIt’s never easy!
We had some challenges with the Android Wear integration. An Android bug prevented us from searching directly from the watch using voice. For the demo, we used voice search on the phone.
Google’s Voice Search API had certain criteria that requires us to publish the updated app to playstore so “Ok Google” can invoke the Quixey App. To overcome this issue, we had to hack to use the Accessibility API.More to come
We want to add the following:
- Enhance actions adding support for more verticals such as movies, weather
- Provide voice interaction capabilities to perform complex actions from a smartwatch
- Provide the ability for the user to set limits to receive price drop alerts