{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,2]],"date-time":"2026-01-02T07:44:37Z","timestamp":1767339877585,"version":"3.37.3"},"reference-count":31,"publisher":"Springer Science and Business Media LLC","issue":"6","license":[{"start":{"date-parts":[[2020,10,7]],"date-time":"2020-10-07T00:00:00Z","timestamp":1602028800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2020,10,7]],"date-time":"2020-10-07T00:00:00Z","timestamp":1602028800000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"funder":[{"DOI":"10.13039\/501100003407","name":"Ministero dell\u2019Istruzione, dell\u2019Universit\u00e0 e della Ricerca","doi-asserted-by":"publisher","award":["PON-ARS01 00860"],"award-info":[{"award-number":["PON-ARS01 00860"]}],"id":[{"id":"10.13039\/501100003407","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100001711","name":"Schweizerischer Nationalfonds zur F\u00f6rderung der Wissenschaftlichen Forschung","doi-asserted-by":"publisher","award":["175513"],"award-info":[{"award-number":["175513"]}],"id":[{"id":"10.13039\/501100001711","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100001711","name":"Schweizerischer Nationalfonds zur F\u00f6rderung der Wissenschaftlichen Forschung","doi-asserted-by":"publisher","award":["SNF-NRP 75"],"award-info":[{"award-number":["SNF-NRP 75"]}],"id":[{"id":"10.13039\/501100001711","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100003407","name":"Ministero dell\u2019Istruzione, dell\u2019Universit\u00e0 e della Ricerca","doi-asserted-by":"publisher","award":["PON-ARS01 00860"],"award-info":[{"award-number":["PON-ARS01 00860"]}],"id":[{"id":"10.13039\/501100003407","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2020,11]]},"DOI":"10.1007\/s10664-020-09877-w","type":"journal-article","created":{"date-parts":[[2020,10,7]],"date-time":"2020-10-07T22:02:21Z","timestamp":1602108141000},"page":"5006-5046","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":19,"title":["API compatibility issues in Android: Causes and effectiveness of data-driven detection techniques"],"prefix":"10.1007","volume":"25","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-1764-9685","authenticated-orcid":false,"given":"Simone","family":"Scalabrino","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Gabriele","family":"Bavota","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Mario","family":"Linares-V\u00e1squez","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Valentina","family":"Piantadosi","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Michele","family":"Lanza","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Rocco","family":"Oliveto","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2020,10,7]]},"reference":[{"key":"9877_CR1","doi-asserted-by":"publisher","unstructured":"Amann S, Nadi S, Nguyen HA, Nguyen TN, Mezini M (2016) MUBench: A benchmark for API-misuse detectors. In: Proceedings of the 13th IEEE\/ACM Working Conference on Mining Software Repositories, MSR. \nhttps:\/\/doi.org\/10.1109\/MSR.2016.055\n\n, pp 464\u2013467","DOI":"10.1109\/MSR.2016.055"},{"key":"9877_CR2","doi-asserted-by":"publisher","unstructured":"Amann S, Nguyen HA, Nadi S, Nguyen TN, Mezini M (2018) A systematic evaluation of static API-misuse detectors. IEEE Transactions on Software Engineering, \nhttps:\/\/doi.org\/10.1109\/TSE.2018.2827384","DOI":"10.1109\/TSE.2018.2827384"},{"key":"9877_CR3","unstructured":"Backes M, Bugiel S, Derr E, McDaniel P, Octeau D, Weisgerber S (2016) On demystifying the android application framework: Re-visiting android permission specification analysis. In: 25th {USENIX} security symposium ({USENIX} security 16), pp 1101\u20131118"},{"key":"9877_CR4","doi-asserted-by":"crossref","unstructured":"Bartel A, Klein J, Le Traon Y, Monperrus M (2012) Automatically securing permission-based software by reducing the attack surface: An application to android. In: 2012 Proceedings of the 27th IEEE\/ACM international conference on automated software engineering. IEEE, pp 274\u2013277","DOI":"10.1145\/2351676.2351722"},{"issue":"4","key":"9877_CR5","doi-asserted-by":"publisher","first-page":"384","DOI":"10.1109\/TSE.2014.2367027","volume":"41","author":"G Bavota","year":"2015","unstructured":"Bavota G, Linares-V\u00e1squez M, Bernal-C\u00e1rdenas CE, Penta MD, Oliveto R, Poshyvanyk D (2015) The impact of API change- and fault-proneness on the user ratings of Android apps. IEEE Trans Softw Eng 41(4):384\u2013407. \nhttps:\/\/doi.org\/10.1109\/TSE.2014.2367027","journal-title":"IEEE Trans Softw Eng"},{"key":"9877_CR6","doi-asserted-by":"publisher","unstructured":"Brito G, Hora A, Valente MT, Robbes R (2016) Do developers deprecate APIs with replacement messages? A large-scale analysis on java systems. In: Proceedings of the 23rd IEEE International Conference on Software Analysis, Evolution, and Reengineering, SANER. \nhttps:\/\/doi.org\/10.1109\/SANER.2016.99\n\n, vol 1, pp 360\u2013369","DOI":"10.1109\/SANER.2016.99"},{"key":"9877_CR7","doi-asserted-by":"publisher","unstructured":"Choudhary SR, Gorla A, Orso A (2015) Automated test input generation for Android: Are we there yet?. In: Proceedings of the 30th IEEE\/ACM international conference on automated software engineering, IEEE Computer Society, ASE, pp 429\u2013440, \nhttps:\/\/doi.org\/10.1109\/ASE.2015.89","DOI":"10.1109\/ASE.2015.89"},{"key":"9877_CR8","doi-asserted-by":"crossref","unstructured":"Dilhara M, Cai H, Jenkins J (2018) Automated detection and repair of incompatible uses of runtime permissions in android apps. In: Proceedings of the 5th International Conference on Mobile Software Engineering and Systems. ACM, pp 67\u201371","DOI":"10.1145\/3197231.3197255"},{"key":"9877_CR9","doi-asserted-by":"crossref","unstructured":"Fazzini M, Orso A (2017) Automated cross-platform inconsistency detection for mobile apps. In: Proceedings of the 32Nd IEEE\/ACM international conference on automated software engineering. IEEE Press, pp 308\u2013318","DOI":"10.1109\/ASE.2017.8115644"},{"key":"9877_CR10","doi-asserted-by":"publisher","unstructured":"Han D, Zhang C, Fan X, Hindle A, Wong K, Stroulia E (2012) Understanding android fragmentation with topic analysis of vendor-specific bugs. In: Proceedings of the 19th working conference on reverse engineering. WCRE, pp 83\u201392 \nhttps:\/\/doi.org\/10.1109\/WCRE.2012.18","DOI":"10.1109\/WCRE.2012.18"},{"key":"9877_CR11","doi-asserted-by":"publisher","unstructured":"He D, Li L, Wang L, Zheng H, Li G, Xue J (2018) Understanding and detecting evolution-induced compatibility issues in Android apps. In: Proceedings of the 33rd ACM\/IEEE international conference on automated software engineering. ACM, ASE, pp 167\u2013177, \nhttps:\/\/doi.org\/10.1145\/3238147.3238185","DOI":"10.1145\/3238147.3238185"},{"key":"9877_CR12","doi-asserted-by":"publisher","unstructured":"Joorabchi ME, Mesbah A, Kruchten P (2013) Real challenges in mobile app development. In: Proceedings of the ACM\/IEEE International symposium on empirical software engineering and measurement. ESEM, pp 15\u201324 \nhttps:\/\/doi.org\/10.1109\/ESEM.2013.9","DOI":"10.1109\/ESEM.2013.9"},{"key":"9877_CR13","doi-asserted-by":"publisher","unstructured":"Li L, Bissyand\u00e9 TF, Le Traon Y, Klein J (2016) Accessing inaccessible Android APIs: An empirical study. In: Proceedings of the IEEE international conference on software maintenance and evolution. ICSME, pp 411\u2013422 \nhttps:\/\/doi.org\/10.1109\/ICSME.2016.35","DOI":"10.1109\/ICSME.2016.35"},{"key":"9877_CR14","doi-asserted-by":"crossref","unstructured":"Li L, Bissyand\u00e9 TF, Wang H, Klein J (2018a) CiD: Automating the detection of API-related compatibility issues in Android apps. In: Proceedings of the 27th ACM SIGSOFT international symposium on software testing and analysis. ISSTA, pp 153\u2013163","DOI":"10.1145\/3213846.3213857"},{"key":"9877_CR15","doi-asserted-by":"crossref","unstructured":"Li L, Gao J, Bissyand\u00e9 TF, Ma L, Xia X, Klein J (2018b) Characterising deprecated Android APIs. In: Proceedings of the 15th international conference on mining software repositories. MSR, pp 254\u2013264","DOI":"10.1145\/3196398.3196419"},{"key":"9877_CR16","doi-asserted-by":"publisher","unstructured":"Linares-V\u00e1squez M, Bavota G, Bernal-C\u00e1rdenas C, Di Penta M, Oliveto R, Poshyvanyk D (2013) API change and fault proneness: A threat to the success of Android apps. In: Proceedings of the 9th Joint meeting on foundations of software engineering. ACM, ESEC\/FSE, pp 477\u2013487, \nhttps:\/\/doi.org\/10.1145\/2491411.2491428","DOI":"10.1145\/2491411.2491428"},{"key":"9877_CR17","doi-asserted-by":"publisher","unstructured":"Linares-V\u00e1squez M, Bavota G, Di Penta M, Oliveto R, Poshyvanyk D (2014) How do API changes trigger stack overflow discussions? a study on the Android SDK. In: Proceedings of the 22nd International Conference on Program Comprehension. ACM, ICPC, pp 83\u201394, \nhttps:\/\/doi.org\/10.1145\/2597008.2597155","DOI":"10.1145\/2597008.2597155"},{"key":"9877_CR18","doi-asserted-by":"publisher","unstructured":"Linares-V\u00e1squez M, Moran K, Poshyvanyk D (2017) Continuous, evolutionary and large-scale: A new perspective for automated mobile app testing. In: Proceedings of the IEEE International Conference on Software Maintenance and Evolution. ICSME, pp 399\u2013410 \nhttps:\/\/doi.org\/10.1109\/ICSME.2017.27","DOI":"10.1109\/ICSME.2017.27"},{"key":"9877_CR19","doi-asserted-by":"crossref","unstructured":"Luo T, Wu J, Yang M, Zhao S, Wu Y, Wang Y (2018) MAD-API: Detection, Correction and explanation of API misuses in distributed android applications. In: Proceedings of the 7th International conference on artificial intelligence and mobile services. Springer International Publishing, pp 123\u2013140","DOI":"10.1007\/978-3-319-94361-9_10"},{"key":"9877_CR20","doi-asserted-by":"publisher","unstructured":"McDonnell T, Ray B, Kim M (2013 ) An empirical study of API stability and adoption in the Android ecosystem. In: Proceedings of the IEEE international conference on software maintenance. \nhttps:\/\/doi.org\/10.1109\/ICSM.2013.18\n\n. IEEE Computer Society, ICSM, pp 70\u201379","DOI":"10.1109\/ICSM.2013.18"},{"key":"9877_CR21","doi-asserted-by":"publisher","unstructured":"Mutchler P, Safaei Y, Doup\u00e9 A, Mitchell J (2016) Target fragmentation in Android apps. In: Proceedings of the IEEE Security and Privacy Workshops, SPW, pp 204\u2013213, \nhttps:\/\/doi.org\/10.1109\/SPW.2016.31","DOI":"10.1109\/SPW.2016.31"},{"key":"9877_CR22","doi-asserted-by":"publisher","unstructured":"Robbes R, Lungu M, R\u00f6thlisberger D (2012) How do developers react to API deprecation?: The case of a Smalltalk ecosystem. In: Proceedings of the 20th ACM SIGSOFT International Symposium on the Foundations of Software Engineering. ACM, FSE, pp 56:1\u201356:11 \nhttps:\/\/doi.org\/10.1145\/2393596.2393662","DOI":"10.1145\/2393596.2393662"},{"key":"9877_CR23","doi-asserted-by":"publisher","unstructured":"Sawant AA, Robbes R, Bacchelli A (2016) On the reaction to deprecation of 25,357 clients of 4 + 1 popular java APIs. In: Proceedings of the IEEE International Conference on Software Maintenance and Evolution, ICSME, pp 400\u2013410 \nhttps:\/\/doi.org\/10.1109\/ICSME.2016.64","DOI":"10.1109\/ICSME.2016.64"},{"key":"9877_CR24","doi-asserted-by":"crossref","unstructured":"Scalabrino S, Bavota G, Linares-V\u00e1squez M, Lanza M, Oliveto R (2019) Data-driven solutions to detect API compatibility issues in android: an empirical study. In: Proceedings of the 16th International Conference on Mining Software Repositories, MSR 2019, 26\u201327 May 2019, Montreal, Canada pp 288\u2013298","DOI":"10.1109\/MSR.2019.00055"},{"key":"9877_CR25","unstructured":"Scalabrino S, Bavota G, Linares-V\u00e1squez M, Piantadosi V, Lanza M, Oliveto R (2020) Replication package. \nhttps:\/\/dibt.unimol.it\/report\/acryl-emse\/"},{"key":"9877_CR26","unstructured":"Spencer D (2009) Card sorting: Designing usable categories. Rosenfeld Media"},{"key":"9877_CR27","doi-asserted-by":"crossref","unstructured":"Wei L, Liu Y, Cheung SC (2016) Taming Android fragmentation: Characterizing and detecting compatibility issues for Android apps. In: Proceedings of the 31st IEEE\/ACM International Conference on Automated Software Engineering, ASE, pp 226\u2013237","DOI":"10.1145\/2970276.2970312"},{"key":"9877_CR28","doi-asserted-by":"crossref","unstructured":"Wu D, Liu X, Xu J, Lo D, Gao D (2017) Measuring the declared SDK versions and their consistency with API calls in Android apps. In: Proceedings of the International Conference on Wireless Algorithms, Systems, and Applications. Springer International Publishing, pp 678\u2013690","DOI":"10.1007\/978-3-319-60033-8_58"},{"key":"9877_CR29","doi-asserted-by":"crossref","unstructured":"Zhang Z, Cai H (2019) A look into developer intentions for app compatibility in android. In: 2019 IEEE\/ACM 6th international conference on mobile software engineering and systems, MOBILESoft. IEEE, pp 40\u201344","DOI":"10.1109\/MOBILESoft.2019.00016"},{"key":"9877_CR30","doi-asserted-by":"publisher","unstructured":"Zhou J, Walker R J (2016) API Deprecation: a retrospective analysis and detection method for code examples on the web. In: Proceedings of the 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering. ACM, FSE, pp 266-277, \nhttps:\/\/doi.org\/10.1145\/2950290.2950298","DOI":"10.1145\/2950290.2950298"},{"key":"9877_CR31","doi-asserted-by":"publisher","unstructured":"Zhou X, Lee Y, Zhang N, Naveed M, Wang X (2014) The peril of fragmentation: Security hazards in Android device driver customizations. In: Proceedings of the IEEE Symposium on Security and Privacy. IEEE Computer Society, SP, pp 409\u2013423, \nhttps:\/\/doi.org\/10.1109\/SP.2014.33","DOI":"10.1109\/SP.2014.33"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-020-09877-w.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/article\/10.1007\/s10664-020-09877-w\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-020-09877-w.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,10,31]],"date-time":"2020-10-31T15:16:46Z","timestamp":1604157406000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/s10664-020-09877-w"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020,10,7]]},"references-count":31,"journal-issue":{"issue":"6","published-print":{"date-parts":[[2020,11]]}},"alternative-id":["9877"],"URL":"https:\/\/doi.org\/10.1007\/s10664-020-09877-w","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"type":"print","value":"1382-3256"},{"type":"electronic","value":"1573-7616"}],"subject":[],"published":{"date-parts":[[2020,10,7]]},"assertion":[{"value":"7 October 2020","order":1,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}]}}