a sequence of interactions that a user performs across multiple apps on the mobile device to achieve a specific goal. 2 Example: Take a picture and send it to a friend.
between the task flow across multiple apps is what sharing on Android is all about. Enabling our app to be a part of this flow by supporting sharing is extremely important. Users expect demand this functionality.
Share Intents 2. Use 3rd party SDKs 3. Custom URL schemes, ex: myapp://com.applico.foo We’re only interested in the first two, using custom URL schemes is discouraged.
the OS what data it is capable of receiving from other apps and for what purpose • When other apps tell the OS to send us data, our app is awakened and we receive the data • We interpret why the user may have sent us that data, and continue the Task flow • When a user wants to share, we tell the OS what kind of data we’re sharing and for what purpose we’re sharing it • The OS automatically lists all other installed apps capable of receiving our data • User picks one app to send the data to If our app is sending data If our app is receiving data
server component which receives data from our SDK which was embedded in other apps • If our app is installed on the user’s same device, this method is discouraged • We embed the provided code directly in our app and leverage its features • When the user wants to share, we trigger the SDKs code and indicate what the user is sharing and what to do with it If our app is sending data If our app is receiving data
Very easy to implement 2. Guaranteed to work across all OS versions 3. No learning curve for users, standard UX 4. Anonymization of Source and Target apps 5. No analytics possible 6. Pre-defined data formats 7. List of apps to share to grows/shrinks as user installs/uninstalls other apps 8. The app which receives the share intent must be installed on the same device 9. Some 3rd Party apps don’t play nice with Intent Shares, ex: Facebook
1. Ease of implementation varies on SDK 2. Durability of implementation varies across 3rd parties 3. Slight learning curve for users, but more UX control 4. Source and Target apps are aware of each other 5. Analytics are possible 6. Data formats vary by SDK 7. Our app code has to be updated whenever we want to add sharing to more 3rd parties, expensive to support app after launch 8. The app which receives the data need not be installed on the same device, but we’ll have to manage user credentials
are more valuable to users than your app functionality alone • Do you think it’s more valuable for the user to seamlessly share to a few fixed social networks OR to share the data to any app of their choice? • Are clients aware of Intent sharing or is their knowledge of sharing limited to Facebook & Twitter?
“(One of ) the Top Ten Most Important Android Advantages” - MostlyTech on Share Intents For other unique features, check out our previous presentation from Oct, 2012 “Uniquely Android” http://goo.gl/WYvPU It’s features like these that make users fall in love with Android Closing Thoughts