ABSTRACT
As smartphones and tablets have become ubiquitous, there is a growing demand for apps that can enable users to collaboratively use multiple mobile systems. We present Tap, a framework that makes it easy for users to dynamically compose collections of mobile systems and developers to write apps that make use of those impromptu collections. Tap users control the composition by simply tapping systems together for discovery and authentication. The physical interaction mimics and supports ephemeral user interactions without the need for tediously exchanging user contact information such as phone numbers or email addresses. Tapping triggers a simple NFC-based mechanism to exchange connectivity information and security credentials that works across heterogeneous networks and requires no user accounts or cloud infrastructure support. Tap makes it possible for apps to use existing mobile platform APIs across multiple mobile systems by virtualizing data sources so that local and remote data sources can be combined together upon tapping. Virtualized data sources can be hardware or software features, including media, clipboard, calendar events, and devices such as cameras and microphones. Leveraging existing mobile platform APIs makes it easy for developers to write apps that use hardware and software features across dynamically composed collections of mobile systems. We have implemented a Tap prototype that allows apps to make use of both unmodified Android and iOS systems. We have modified and implemented various apps using Tap to demonstrate that it is easy to use and can enable apps to provide powerful new functionality by leveraging multiple mobile systems. Our results show that Tap has good performance, even for high-bandwidth features, and is user and developer friendly.
- Naser AlDuaij, Alexander Van't Hof, and Jason Nieh. 2019. Heterogeneous Multi-Mobile Computing. In Proceedings of the 17th ACM International Conference on Mobile Systems, Applications, and Services (MobiSys 2019). Seoul, South Korea, 494--507.Google ScholarDigital Library
- Ardalan Amiri Sani, Kevin Boos, Min Hong Yun, and Lin Zhong. 2014. Rio: A System Solution for Sharing I/O Between Mobile Systems. In Proceedings of the 12th Annual International Conference on Mobile Systems, Applications, and Services (MobiSys 2014). Bretton Woods, NH, 259--272.Google Scholar
- Jeremy Andrus, Naser AlDuaij, and Jason Nieh. 2017. Binary Compatible Graphics Support in Android for Running iOS Apps. In Proceedings of the 2017 ACM/IFIP/USENIX International Middleware Conference (Middleware 2017). Las Vegas, NV, 55--67.Google ScholarDigital Library
- Jeremy Andrus, Christoffer Dall, Alex Van't Hof, Oren Laadan, and Jason Nieh. 2011. Cells: A Virtual Mobile Smartphone Architecture. In Proceedings of the 23rd ACM Symposium on Operating Systems Principles (SOSP 2011). Cascais, Portugal, 173--187.Google ScholarDigital Library
- Jeremy Andrus, Alexander Van't Hof, Naser AlDuaij, Christoffer Dall, Nicolas Viennot, and Jason Nieh. 2014. Cider: Native Execution of iOS Apps on Android. In Proceedings of the 19th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2014). Salt Lake City, UT, 367--381.Google ScholarDigital Library
- Apple Inc. iCloud. https://www.icloud.com.Google Scholar
- Apple Inc. NFCISO7816Tag. https://developer.apple.com/documentation/corenfc/nfciso7816tag.Google Scholar
- Apple Inc. 2018. Share Content with AirDrop on Your iPhone, iPad, or iPod touch. https://support.apple.com/en-us/HT204144.Google Scholar
- Apple Inc. 2019. How to AirPlay Content from Your iPhone, iPad, or iPod touch. https://support.apple.com/en-gb/HT204289.Google Scholar
- Apple Inc. 2019. Use Continuity to Connect Your Mac, iPhone, iPad, iPod touch, and Apple Watch. https://support.apple.com/en-us/HT204681.Google Scholar
- Ricardo Baratto, Shaya Potter, Gong Su, and Jason Nieh. 2004. MobiDesk: Mobile Virtual Desktop Computing. In Proceedings of the 10th Annual ACM International Conference on Mobile Computing and Networking (MobiCom 2004). Philadelphia, PA, 1--15.Google ScholarDigital Library
- Luciano Baresi, Laurent-Walter Goix, Sam Guinea, Valerio Panzica La Manna, Jacopo Aliprandi, and Dario Archetti. 2015. SPF: A Middleware for Social Interaction in Mobile Proximity Environments. In Proceedings of the 37th International Conference on Software Engineering (ICSE 2015). Florence, Italy, 79--88.Google ScholarCross Ref
- Luciano Baresi, Anita Imani, Cristina Fra, and Massimo Valla. 2018. LIQDROID: Towards Seamlessly Distributed Android Applications. In Proceedings of the 5th International Conference on Mobile Software Engineering and Systems (MOBILESoft 2018). Gothenburg, Sweden, 597--601.Google ScholarDigital Library
- Ben Gruver. 2017. smali/baksmali. http://www.baksmali.com.Google Scholar
- BlackBerry. BlackBerry Blend - Desktop Software for BlackBerry. https://us.blackberry.com/software/desktop/blackberry-blend.Google Scholar
- Frederik Brudy, Christian Holz, Roman Radle, Chi-Jui Wu, Steven Houben, Clemens Nylandsted Klokmose, and Nicolai Marquardt. 2019. Cross-Device Taxonomy: Survey, Opportunities and Challenges of Interactions Spanning Across Multiple Devices. In Proceedings of the 2019 CHI Conference on Human Factors in Computing Systems (CHI 2019). Glasgow, United Kingdom, 1--28.Google ScholarDigital Library
- Bump Technologies. Bump - Easily Transfer Photos, Files and Contacts between Your Phone and Computer. http://www.bu.mp.Google Scholar
- Canonical Ltd. Linux Containers. https://linuxcontainers.org/.Google Scholar
- Centers for Disease Control and Prevention. Coronavirus (COVID-19). https://www.cdc.gov/coronavirus/2019-ncov/index.html.Google Scholar
- Dongju Chae, Joonsung Kim, Gwangmu Lee, Hanjun Kim, Kyung-Ah Chang, Hyogun Lee, and Jangwoo Kim. 2018. DynaMix: Dynamic Mobile Device Integration for Efficient Cross-device Resource Sharing. In Proceedings of the 2018 USENIX Annual Technical Conference (USENIX ATC 2018). Boston, MA, 71--83.Google Scholar
- Ke-Yu Chen, Gabe A. Cohn, Sidhant Gupta, and Shwetak N. Patel. 2013. uTouch: Sensing Touch Gestures on Unmodified LCDs. In Proceedings of the 2013 CHI Conference on Human Factors in Computing Systems (CHI 2013). Paris, France, 2581--2584.Google Scholar
- Ming Ki Chong, Rene Mayrhofer, and Hans Gellersen. 2014. A Survey of User Interaction for Spontaneous Device Association. ACM Computing Surveys 47, 1 (May 2014), 8:1--8:40.Google ScholarDigital Library
- Christian Zibreg. 2016. AirDrop not working? Try these troubleshooting tips. https://www.idownloadblog.com/2016/02/20/airdrop-troubleshooting-tips-2/.Google Scholar
- Docker Inc. Get Started with Docker. https://www.docker.com/.Google Scholar
- Ben Dodson, Aemon Cannon, Te-Yuan Huang, and Monica S. Lam. 2011. The Junction Protocol for Ad Hoc Peer-to-Peer Mobile Applications. Technical Report. Computer Science Department, Stanford University.Google Scholar
- Elizabeth Schulze. 2019. Contactless cards are just catching on in the US - years after the rest of the world. https://www.cnbc.com/2019/04/12/contactless-cards-and-apple-pay-are-just-catching-on-in-the-us.html.Google Scholar
- Florian Draschbacher. Fast File Transfer - Apps on Google Play. https://play.google.com/store/apps/details?id=com.floriandraschbacher.fastfiletransfer.Google Scholar
- Andrea Gallidabino, Cesare Pautasso, Tommi Mikkonen, Kari Systa, Jari-Pekka Voutilainen, and Antero Taivalsaari. 2017. Architecting Liquid Software. Journal of Web Engineering 16, 5--6 (Sept. 2017), 433--470.Google Scholar
- Google Inc. Chromecast. https://www.google.com/chromecast/.Google Scholar
- Google Inc. Host-Based Card Emulation Overview | Android Developers. https://developer.android.com/guide/topics/connectivity/nfc/hce.Google Scholar
- Google Inc. Nearby | Google Developers. https://developers.google.com/nearby.Google Scholar
- Google Inc. NfcAdapter | Android Developers. https://developer.android.com/reference/android/nfc/NfcAdapter.Google Scholar
- Google Inc. Sharing files with NFC | Android Developers. https://developer.android.com/training/beam-files.Google Scholar
- Saul Greenberg, Nicolai Marquardt, Till Ballendat, Rob Diaz-Marino, and Miaosen Wang. 2011. Proxemic Interactions: The New Ubicomp? Interactions 18, 1 (Jan. 2011), 42--50.Google ScholarDigital Library
- Sidhant Gupta, Matthew S. Reynolds, and Shwetak N. Patel. 2010. ElectriSense: Single-point Sensing Using EMI for Electrical Event Detection and Classification in the Home. In Proceedings of the 12th ACM International Conference on Ubiquitous Computing (UbiComp 2010). Copenhagen, Denmark, 139--148.Google Scholar
- Peter Hamilton and Daniel J. Wigdor. 2014. Conductor: Enabling and Understanding Cross-device Interaction. In Proceedings of the 2014 CHI Conference on Human Factors in Computing Systems (CHI 2014). Toronto, Canada, 2773--2782.Google Scholar
- Ken Hinckley, Gonzalo Ramos, Francois Guimbretiere, Patrick Baudisch, and Marc Smith. 2004. Stitching: Pen Gestures That Span Multiple Displays. In Proceedings of the Working Conference on Advanced Visual Interfaces (AVI 2004). Gallipoli, Italy, 23--31.Google ScholarDigital Library
- Alexander Van't Hof, Hani Jamjoom, Jason Nieh, and Dan Williams. 2015. Flux: Multi-Surface Computing in Android. In Proceedings of the 7th European Conference on Computer Systems (EuroSys 2015). Bordeaux, France, 24:1--17.Google ScholarDigital Library
- Alexander Van't Hof and Jason Nieh. 2019. AnDrone: Virtual Drone Computing in the Cloud. In Proceedings of the 11th European Conference on Computer Systems (EuroSys 2019). Dresden, Germany, 6:1--16.Google Scholar
- Internet Society. 2018. State of IPv6 Deployment 2018. https://www.internetsociety.org/resources/2018/state-of-ipv6-deployment-2018/.Google Scholar
- Ivan Jenic. 2019. Fix: Dropbox for Android not showing files. https://mobileinternist.com/dropbox-android-not-showing-files.Google Scholar
- Jessica Dickler. 2019. As of today: an NYC commute without cash. https://www.cnbc.com/2019/05/31/the-new-york-city-subway-systems-cashless-payments-start-friday.html.Google Scholar
- Tero Jokela, Ming Ki Chong, Andres Lucero, and Hans Gellersen. 2015. Connecting Devices for Collaborative Interactions. ACM Interactions 22, 4 (June 2015), 39--43.Google ScholarDigital Library
- Tero Jokela and Andres Lucero. 2014. FlexiGroups: Binding Mobile Devices for Collaborative Interactions in Medium-sized Groups with Device Touch. In Proceedings of the 16th International Conference on Human-computer Interaction with Mobile Devices and Services (MobileHCI 2014). Toronto, Canada, 369--378.Google ScholarDigital Library
- Jonny Evans. 2018. How to fix iCloud when it stops working. https://www.computerworld.com/article/3322896/how-to-fix-icloud-when-it-stops-working.html.Google Scholar
- Karen Haslam. 2019. How to fix AirDrop problems. https://www.macworld.co.uk/how-to/mac/fix-airdrop-problems-3693158/.Google Scholar
- Kevin Peachey. 2019. Half of all debit card payments now contactless. https://www.bbc.com/news/business-50015312.Google Scholar
- John S. Koh, Steven M. Bellovin, and Jason Nieh. 2019. Why Joanie Can Encrypt: Easy Email Encryption with Easy Key Management. In Proceedings of the 11th European Conference on Computer Systems (EuroSys 2019). Dresden, Germany, 2:1--16.Google ScholarDigital Library
- Oren Laadan and Jason Nieh. 2010. Operating System Virtualization: Practice and Experience. In Proceedings of the 3rd Annual Haifa Experimental Systems Conference (SYSTOR 2010). Haifa, Israel.Google ScholarDigital Library
- Gierad Laput, Chouchang Yang, Robert Xiao, Alanson Sample, and Chris Harrison. 2015. EM-Sense: Touch Recognition of Uninstrumented, Electrical and Electromechanical Objects. In Proceedings of the 28th Annual Symposium on User Interface Software and Technology (UIST 2015). Charlotte, NC, 157--166.Google ScholarDigital Library
- Alexander Loffler, Luciano Pica, Hilko Hoffmann, and Philipp Slusallek. 2012. Networked Displays for VR Applications: Display as a Service (DaaS). In Virtual Environments 2012: Proceedings of Joint Virtual Reality Conference of ICAT, EuroVR and EGVE (JVRC) (ICAT/EGVE/EuroVR 2012). Madrid, Spain, 37--44.Google Scholar
- Andres Lucero, Tero Jokela, Arto Palin, Viljakaisa Aaltonen, and Jari Nikara. 2012. EasyGroups: Binding Mobile Devices for Collaborative Interactions. In CHI 2012 Extended Abstracts on Human Factors in Computing Systems (CHI EA 2012). Austin, TX, 2189--2194.Google ScholarDigital Library
- Takuya Maekawa, Yasue Kishino, Yasushi Sakurai, and Takayuki Suyama. 2011. Recognizing the Use of Portable Electrical Devices with Hand-worn Magnetic Sensors. In Proceedings of the 9th International Conference on Pervasive Computing (Pervasive 2011). San Francisco, CA, 276--293.Google ScholarCross Ref
- Nicolai Marquardt, Robert Diaz-Marino, Sebastian Boring, and Saul Greenberg. 2011. The Proximity Toolkit: Prototyping Proxemic Interactions in Ubiquitous Computing Ecologies. In Proceedings of the 24th Annual Symposium on User Interface Software and Technology (UIST 2011). Santa Barbara, CA, 315--326.Google ScholarDigital Library
- Microsoft Corporation. Windows Continuum for Windows 10 Phones and Mobile. https://www.microsoft.com/en-us/windows/continuum.Google Scholar
- Sungwon Nam, Sachin Deshpande, Venkatram Vishwanath, Byungil Jeong, Luc Renambot, and Jason Leigh. 2010. Multi-application Inter-tile Synchronization on Ultra-high-resolution Display Walls. In Proceedings of the 1st Annual ACM SIGMM Conference on Multimedia Systems (MMSys 2010). Phoenix, AZ, 145--156.Google ScholarDigital Library
- Heidi Selmer Nielsen, Marius Pallisgaard Olsen, Mikael B. Skov, and Jesper Kjeldskov. 2014. JuxtaPinch: An Application for Collocated Multi-device Photo Sharing. In Proceedings of the 16th International Conference on Human-computer Interaction with Mobile Devices and Services (MobileHCI 2014). Toronto, Canada, 417--420.Google ScholarDigital Library
- Nintendo Co., Ltd. Nintendo Switch. http://www.nintendo.com/switch.Google Scholar
- Sangeun Oh, Ahyeon Kim, Sunjae Lee, Kilho Lee, Dae R. Jeong, Steven Y. Ko, and Insik Shin. 2019. FLUID: Flexible User Interface Distribution for Ubiquitous Multi-Device Interaction. In Proceedings of the 25th Annual International Conference on Mobile Computing and Networking (MobiCom 2019). Los Cabo, Mexico, 1--16.Google ScholarDigital Library
- Sangeun Oh, Hyuck Yoo, Dae R. Jeong, Duc Hoang Bui, and Insik Shin. 2017. Mobile Plus: Multi-device Mobile Platform for Cross-device Functionality Sharing. In Proceedings of the 15th Annual International Conference on Mobile Systems, Applications, and Services (MobiSys 2017). Niagara Falls, NY, 332--344.Google ScholarDigital Library
- Open Connectivity Foundation. AllJoyn Open Source Project. https://openconnectivity.org/developer/reference-implementation/alljoyn.Google Scholar
- Steven Osman, Dinesh Subhraveti, Gong Su, and Jason Nieh. 2002. The Design and Implementation of Zap: A System for Migrating Computing Environments. In Proceedings of the 5th Symposium on Operating Systems Design and Implementation (OSDI 2002). Boston, MA, 361--376.Google ScholarDigital Library
- Rene Ritchie. 2020. AirDrop not working? Here's the fix! https://www.imore.com/how-to-fix-airdrop-iphone-ipad.Google Scholar
- Kay Romer. 2001. Time Synchronization in Ad Hoc Networks. In Proceedings of the 2nd ACM International Symposium on Mobile Ad Hoc Networking and Computing (MobiHoc 2001). Long Beach, CA, 173--182.Google ScholarDigital Library
- Scott Ruoti, Jeff Andersen, Scott Heidbrink, Mark O'Neill, Elham Vaziripour, Justin Wu, Daniel Zappala, and Kent Seamons. 2016. "We're on the Same Page": A Usability Study of Secure Email Using Pairs of Novice Users. In Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems (CHI 2016). San Jose, CA, 4298--4308.Google ScholarDigital Library
- Scott Ruoti, Jeff Andersen, Travis Hendershot, Daniel Zappala, and Kent Seamons. 2016. Private Webmail 2.0: Simple and Easy-to-Use Secure Email. In Proceedings of the 29th Annual Symposium on User Interface Software and Technology (UIST 2016). Tokyo, Japan, 461--472.Google ScholarDigital Library
- Scott Ruoti, Jeff Andersen, Daniel Zappala, and Kent Seamons. 2015. Why Johnny Still, Still Can't Encrypt: Evaluating the Usability of a Modern PGP Client. arXiv e-prints (Oct. 2015), 5 pages. arXiv:1510.08555 [cs.CR]Google Scholar
- Scott Ruoti, Nathan Kim, Ben Burgon, Timothy van der Horst, and Kent Seamons. 2013. Confused Johnny: When Automatic Encryption Leads to Confusion and Mistakes. In Proceedings of the 9th Symposium on Usable Privacy and Security (SOUPS 2013). Newcastle, United Kingdom, 5:1--5:12.Google Scholar
- Samsung. What is S Beam in Samsung Smartphones? https://www.samsung.com/in/support/mobile-devices/what-is-s-beam-in-samsung-smartphones/.Google Scholar
- Arne Schmitz, Ming Li, Volker Schonefeld, and Leif Kobbelt. 2010. Ad-Hoc Multi-Displays for Mobile Interactive Applications. In Proceedings of the 31st Annual Conference of the European Association for Computer Graphics (Eurographics 2010). Norrkoping, Sweden, 45--52.Google Scholar
- Chenguang Shen, Rayman Preet Singh, Amar Phanishayee, Aman Kansal, and Ratul Mahajan. 2016. Beam: Ending Monolithic Applications for Connected Devices. In Proceedings of the 2016 USENIX Annual Technical Conference (USENIX ATC 2016). Denver, CO, 143--157.Google Scholar
- Ben Shneiderman and Catherine Plaisant. 2004. Designing the User Interface: Strategies for Effective Human-Computer Interaction (4th Edition). Pearson Addison Wesley.Google ScholarDigital Library
- Stephanie Walden. Banking After COVID-19: The Rise of Contactless Payments in the U.S. https://www.forbes.com/advisor/banking/banking-after-covid-19-the-rise-of-contactless-payments-in-the-u-s/.Google Scholar
- The Khronos Group, Inc. OpenGL - The Industry Standard for High Performance Graphics. https://www.opengl.org.Google Scholar
- Tim Brookes. 2019. AirDrop Not Working? Here's How to Fix It. https://www.howtogeek.com/442534/airdrop-not-working-heres-how-to-fix-it/.Google Scholar
- U.S. Department of Health & Human Services. System Usability Scale (SUS). https://www.usability.gov/how-to-and-tools/methods/system-usability-scale.html.Google Scholar
- Rick Van Der Lans. 2012. Data Virtualization for Business Intelligence Systems: Revolutionizing Data Integration for Data Warehouses (first ed.). Morgan Kaufmann Publishers Inc., San Francisco, CA.Google Scholar
- Vikas Saraogi. 2020. Contactless payments will be the new normal for shoppers in the post Covid-19 world. https://newsroom.mastercard.com/asia-pacific/2020/05/20/contactless-payments-will-be-the-new-normal-for-shoppers-in-the-post-covid-19-world/.Google Scholar
- Edward J. Wang, Tien-Jui Lee, Alex Mariakakis, Mayank Goel, Sidhant Gupta, and Shwetak N. Patel. 2015. MagnifiSense: Inferring Device Interaction Using Wrist-worn Passive Magneto-inductive Sensors. In Proceedings of the 2015 ACM International Joint Conference on Pervasive and Ubiquitous Computing (UbiComp 2015). Osaka, Japan, 15--26.Google ScholarDigital Library
- Roy Want, Trevor Pering, Shivani Sud, and Barbara Rosario. 2008. Dynamic Composable Computing. In Proceedings of the 9th Workshop on Mobile Computing Systems and Applications (HotMobile 2008). Napa Valley, CA, 17--21.Google ScholarDigital Library
- Wi-Fi Alliance. 2018. Wi-Fi Peer-to-Peer (P2P) Technical Specification v1.7. https://www.wi-fi.org/file/wi-fi-peer-to-peer-p2p-technical-specification-v17.Google Scholar
- Robert Xiao, Gierad Laput, Yang Zhang, and Chris Harrison. 2017. Deus EM Machina: On-Touch Contextual Functionality for Smart IoT Appliances. In Proceedings of the 2017 CHI Conference on Human Factors in Computing Systems (CHI 2017). Denver, CO, 4000--4008.Google ScholarDigital Library
- Chouchang Yang and Alanson P. Sample. 2016. EM-ID: Tag-less Identification of Electrical Devices via Electromagnetic Emissions. In Proceedings of the 10th Annual IEEE International Conference on RFID (RFID 2016). Orlando, FL, 1--8.Google Scholar
- Katie Young. 2017. Digital Consumers Own 3.2 Connected Devices - Global-WebIndex Blog. https://blog.globalwebindex.com/chart-of-the-day/digital-consumers-own-3-point-2-connected-devices/.Google Scholar
- Zoom. In this together. Keeping you securely connected wherever you are. https://www.zoom.us/.Google Scholar
Index Terms
- Tap: an app framework for dynamically composable mobile systems
Recommendations
Heterogeneous Multi-Mobile Computing (video)
MobiSys '19: Proceedings of the 17th Annual International Conference on Mobile Systems, Applications, and ServicesAs smartphones and tablets proliferate, there is a growing demand for multi-mobile computing [1, 2], the ability to combine multiple commodity mobile systems into more capable ones, including using multiple hardware devices such as cameras, displays, ...
Heterogeneous Multi-Mobile Computing
MobiSys '19: Proceedings of the 17th Annual International Conference on Mobile Systems, Applications, and ServicesAs smartphones and tablets proliferate, there is a growing demand for multi-mobile computing, the ability to combine multiple mobile systems into more capable ones. We present M2, a system for multi-mobile computing that enables existing unmodified ...
Binary compatible graphics support in Android for running iOS apps
Middleware '17: Proceedings of the 18th ACM/IFIP/USENIX Middleware ConferenceMobile apps make extensive use of GPUs on smartphones and tablets to access Web content. To support pervasive Web content, we introduce three key OS techniques for binary graphics compatibility necessary to build a real-world system to run iOS and ...
Comments