skip to main content
10.1145/3302424.3303989acmconferencesArticle/Chapter ViewAbstractPublication PageseurosysConference Proceedingsconference-collections
research-article

Serving Mobile Apps: A Slice at a Time

Published: 25 March 2019 Publication History

Abstract

End users wanting to do more and more with mobile apps has led to explosive growth in the number of available apps. This has widened the gap between developers making apps available and end users being able to install all the apps they want on their device. To address this, Google introduced Instant Apps for Android where users can access selective app features on demand without having to download and install entire apps. But this requires developers to refactor apps and limits the apps' functionality.
In this paper, we present AppSlicer -- a solution that automates the creation, delivery, execution and cleanup of lightweight app slices from native apps. With AppSlicer, app slices are created from existing native apps, without requiring any additional developer effort. App slices run on end-user devices and correspond to arbitrary single functionality (task) that is carried out using an app. We demonstrate that app slicing is practical, it provides users with seamless access to app functionality with performance matching that of native installed apps, and better than other technologies for on-demand delivery of apps.

References

[1]
Android Debug Bridge. http://goo.gl/Mzvl3j.
[2]
AGRAWAL, H., AND HORGAN, J. R. Dynamic Program Slicing. In Proceedings of the ACM SIGPLAN 1990 Conference on Programming Language Design and Implementation (New York, NY, USA, 1990), PLDI '90, ACM, pp. 246--256.
[3]
Dependency Graphs of App Apks. https://github.com/alexzaitsev/apk-dependency-graph.
[4]
Working with App Thinning. https://www.appcoda.com/app-thinning/.
[5]
Top 6 Android App Managers. https://drfone.wondershare.com/android/android-app-manager.html.
[6]
Barcelona Municipal Apps. https://ajuntament.barcelona.cat/apps/en/.
[7]
Microsoft AppV. https://docs.microsoft.com/en-us/windows/application-management/app-v/appv-for-windows.
[8]
Bernstein, M. S., Monroy-Hernández, A., Harry, D., André, P., Panovich, K., and Vargas, G. G. 4chan and /b/: An Analysis of Anonymity and Ephemerality in a Large Online Community. In ICWSM (2011).
[9]
Bhardwaj, K., Agarwal, P., Gavrilovska, A., Schwan, K., and Allred, A. AppFlux: Taming App Delivery via Streaming. In 2015 Conference on Timely Results in Operating Systems (TRIOS 15) (Monterey, CA, USA, 2015), USENIX Association.
[10]
Bhardwaj, K., Gavrilovska, A., and Schwan, K. Ephemeral Apps. In Proceedings of the 17th International Workshop on Mobile Computing Systems and Applications, HotMobile 2016, St. Augustine, FL, USA, February 23-24, 2016 (2016), pp. 81--86.
[11]
Bhardwaj, K., Gavrilovska, A., Steiner, M., Flack, M., and Ludin, S. DRIVESHAFT: Improving Perceived Mobile Web Performance. ArXiv e-prints (Sept. 2018).
[12]
Chun, B.-G., Ihm, S., Maniatis, P., Naik, M., and Patti, A. Clonecloud: Elastic Execution between Mobile Device and Cloud. In Proceedings of the sixth conference on Computer systems (2011), ACM, pp. 301--314.
[13]
Numecent Cloudpaging. http://goo.gl/t8soKL.
[14]
Cuervo, E., Balasubramanian, A., Cho, D.-K., Wolman, A., Saroiu, S., Chandra, R., and Bahl, P. MAUI: Making Smartphones Last Longer with Code Offload. In Proceedings of the 8th international conference on Mobile systems, applications, and services (2010), ACM, pp. 49--62.
[15]
Dunn, A. M., Lee, M. Z., Jana, S., Kim, S., Silberstein, M., Xu, Y., Shmatikov, V., and Witchel, E. Eternal Sunshine of the Spotless Machine: Protecting Privacy with Ephemeral Channels. In Presented as part of the 10th USENIX Symposium on Operating Systems Design and Implementation (OSDI 12) (Hollywood, CA, 2012), USENIX, pp. 61--75.
[16]
Google Streaming App Content. http://goo.gl/mM5HvI.
[17]
Giurgiu, I., Riva, O., and Alonso, G. Dynamic Software Deployment from Clouds to Mobile Devices. In Proceedings of the 13th International Middleware Conference (New York, NY, USA, 2012), Middleware '12, Springer-Verlag New York, Inc., pp. 394--414.
[18]
Giurgiu, I., Riva, O., Juric, D., Krivulev, I., and Alonso, G. Calling the Cloud: Enabling Mobile Phones As Interfaces to Cloud Applications. In Proceedings of the 10th ACM/IFIP/USENIX International Conference on Middleware (Berlin, Heidelberg, 2009), Middleware '09, Springer-Verlag, pp. 5:1--5:20.
[19]
Hunt, G. C., and Scott, M. L. The Coign Automatic Distributed Partitioning System. In Proceedings of the Third Symposium on Operating Systems Design and Implementation (Berkeley, CA, USA, 1999), OSDI '99, USENIX Association, pp. 187--200.
[20]
Google Instant apps. https://developer.android.com/topic/instant-apps/index.html.
[21]
Instart Logic - Web Application Streaming. http://goo.gl/D559rq.
[22]
Jeong, S., Lee, K., Lee, S., Son, S., and Won, Y. I/O Stack Optimization for Smartphones. In Proceedings of the 2013 USENIX Conference on Annual Technical Conference (Berkeley, CA, USA, 2013), USENIX ATC'13, USENIX Association, pp. 309--320.
[23]
Native App Poularity -- Kahuna. https://goo.gl/jzovpt.
[24]
Kim, H., Agrawal, N., and Ungureanu, C. Examining Storage Performance on Mobile Devices. In Proceedings of the 3rd ACM SOSP Workshop on Networking, Systems, and Applications on Mobile Handhelds (New York, NY, USA, 2011), MobiHeld '11, ACM, pp. 6:1--6:6.
[25]
Kim, H., Agrawal, N., and Ungureanu, C. Revisiting Storage for Smartphones. Trans. Storage 8, 4 (Dec. 2012), 14:1--14:25.
[26]
Kim, J.-M., and Kim, J.-S. AndroBench: Benchmarking the Storage Performance of Android-Based Mobile Devices. In Frontiers in Computer Education, S. Sambath and E. Zhu, Eds., vol. 133 of Advances in Intelligent and Soft Computing. Springer Berlin Heidelberg, 2012, pp. 667--674.
[27]
Hybrid vs Native Mobile Apps -- The Answer is Clear. https://ymedialabs.com/hybrid-vs-native-mobile-apps-the-answer-is-clear/.
[28]
Li, Y., Zhu, C., Rubin, J., and Chechik, M. Semantic Slicing of Software Version Histories. IEEE Transactions on Software Engineering 44, 2 (Feb 2018), 182--201.
[29]
Why "Progressive Web Apps vs. Native" Is the Wrong Question to Ask. https://goo.gl/2JtYCP.
[30]
Netravali, R., Nathan, V., Mickens, J., and Balakrishnan, H. Vesper: Measuring Time-to-Interactivity for Web Pages. In 15th USENIX Symposium on Networked Systems Design and Implementation (NSDI 18) (Renton, WA, 2018), USENIX Association, pp. 217--231.
[31]
Newton, R., Toledo, S., Girod, L., Balakrishnan, H., and Madden, S. Wishbone: Profile-based Partitioning for Sensornet Applications. In Proceedings of the 6th USENIX Symposium on Networked Systems Design and Implementation (Berkeley, CA, USA, 2009), NSDI'09, USENIX Association, pp. 395--408.
[32]
Novell - Application Virtualization. http://goo.gl/vjxWYb.
[33]
Smart City Berlin. https://www.berlin.de/sen/wirtschaft/en/economics-and-technology/centres-of-technology-zukunftsorte-smart-city/smart-city/.
[34]
Smart Dublin. http://smartdublin.ie/.
[35]
Markets and markets report smart cities market worth 717.2 billion usd by 2023. https://www.marketsandmarkets.com/PressReleases/smart-cities.asp.
[36]
Smart Cities Report Forecasts Trillions in Economic Growth. https://www.smartcitiesworld.net/news/news/mart-cities-report-forecasts-trillions-in-economic-growth-2528.
[37]
WebPagetest Speed Index Metric. http://goo.gl/Rw3d5d.
[38]
Symantec Workspace Streaming. http://goo.gl/NAA13p.
[39]
TIP, F. A Survey of Program Slicing Techniques. Tech. rep., Amsterdam, The Netherlands, The Netherlands, 1994.
[40]
Vimeo Blog -- Creating an Instant App. https://medium.com/vimeo-engineering-blog/vimeo-android-instant-apps-2f8b1e94760c.
[41]
Weiser, M. Program slicing. In Proceedings of the 5th International Conference on Software Engineering (Piscataway, NJ, USA, 1981), ICSE '81, IEEE Press, pp. 439--449.
[42]
Citrix XenApp. http://goo.gl/qbdGPT.

Cited By

View all
  • (2024)TIM: Enabling Large-Scale White-Box Testing on In-App Deep Learning ModelsIEEE Transactions on Information Forensics and Security10.1109/TIFS.2024.345576119(8188-8203)Online publication date: 2024
  • (2023)Frappé: An Ultra Lightweight Mobile UI Framework for Rapid API-based Prototyping and Environmental DeploymentProceedings of the ACM on Human-Computer Interaction10.1145/36042587:MHCI(1-23)Online publication date: 13-Sep-2023
  • (2023)LegoDroid: flexible Android app decomposition and instant installationScience China Information Sciences10.1007/s11432-021-3528-766:4Online publication date: 27-Mar-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
EuroSys '19: Proceedings of the Fourteenth EuroSys Conference 2019
March 2019
714 pages
ISBN:9781450362818
DOI:10.1145/3302424
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 25 March 2019

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

EuroSys '19
Sponsor:
EuroSys '19: Fourteenth EuroSys Conference 2019
March 25 - 28, 2019
Dresden, Germany

Acceptance Rates

Overall Acceptance Rate 241 of 1,308 submissions, 18%

Upcoming Conference

EuroSys '25
Twentieth European Conference on Computer Systems
March 30 - April 3, 2025
Rotterdam , Netherlands

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)24
  • Downloads (Last 6 weeks)5
Reflects downloads up to 28 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)TIM: Enabling Large-Scale White-Box Testing on In-App Deep Learning ModelsIEEE Transactions on Information Forensics and Security10.1109/TIFS.2024.345576119(8188-8203)Online publication date: 2024
  • (2023)Frappé: An Ultra Lightweight Mobile UI Framework for Rapid API-based Prototyping and Environmental DeploymentProceedings of the ACM on Human-Computer Interaction10.1145/36042587:MHCI(1-23)Online publication date: 13-Sep-2023
  • (2023)LegoDroid: flexible Android app decomposition and instant installationScience China Information Sciences10.1007/s11432-021-3528-766:4Online publication date: 27-Mar-2023
  • (2022)One size does not fit all: security hardening of MIPS embedded systems via static binary debloating for shared librariesProceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems10.1145/3503222.3507768(255-270)Online publication date: 28-Feb-2022
  • (2022)APT-GETProceedings of the Seventeenth European Conference on Computer Systems10.1145/3492321.3519583(747-764)Online publication date: 28-Mar-2022
  • (2022)Block-Streaming Service Loading Optimization of Android Dalvik Executable File for Cloud-End Collaboration2022 International Conference on Networking and Network Applications (NaNA)10.1109/NaNA56854.2022.00055(1-6)Online publication date: Dec-2022

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media