Maak kennis met Androscope. Een debugging programma voor Android developers.

Heb je soms de behoefte om diep in je Android-apparaat te duiken en rond te kijken in de gegevens van je eigen applicatie? Maak in dat geval kennis met Androscope, een debugging programma voor foutopsporing dat onlangs door ons is geopend en waarmee u al deze interessante stukjes en beetjes kunt zien.

Bij het ontwikkelen van een desktop of een server-side applicatie heb je toegang tot al zijn data. Je kunt gegevens zien die jouw code of externe bibliotheken opslaan. Het is handig voor foutopsporing en helpt u te begrijpen hoe de applicatie onder de motorkap werkt.

Maar voor mobiele ontwikkelaars zijn de applicaties die ze ontwikkelen een soort black box. Alleen de code heeft toegang tot privé-toepassingsgegevens, maar ontwikkelaars kunnen daar zelf niet bij met standaard ontwikkeltools.

Op Android hebben we nog (op het moment van schrijven van dit artikel) een soort openbare opslag die je kunt zien in Android Studio in Device Explorer. En de meeste apps zullen het in veel gevallen actief blijven gebruiken. Google heeft echter zojuist scoped storage geïntroduceerd. Hierdoor zijn gegevens van privé-apps zijn niet toegankelijk voor andere apps, zelfs niet voor apps die worden geregistreerd als externe opslag managers. Dit is een goede verandering voor normale gebruikers. Maar hoe zit het met ontwikkelaars? Een oplossing kan zijn om geroote apparaten te gebruiken, wat misschien niet altijd wenselijk is.

Wij van NGTI hebben de oplossing voor dit probleem bedacht, Androscope. Al voor de introductie van scoped storage hadden we bij NGTI de behoefte om intern naar applicaties te kunnen kijken. Daarom hebben we Androscope ontwikkeld. Het is een webserver voor foutopsporing die in elke Android-applicatie kan worden uitgevoerd. Het is beschikbaar als bibliotheek op Maven Central en kan aan elke smaak of elk type build van je Android-app worden toegevoegd.

Met Androscope kunt u;

  • Door het bestandssysteem van een gedeeld apparaat bladeren (of op zijn minst een deel ervan dat voor jouw toepassing beschikbaar zal zijn als onderdeel van de opslag met scopes, wat ook een interessant inzicht is)
  • De inhoud van providers van applicaties en systeem content bekijken (onder de voorwaarde dat jouw app de vereiste rechten heeft)
  • Databases downloaden en uploaden. Zo kan je bijvoorbeeld de database in jouw favoriete tool op jouw computer inspecteren of wijzigen en deze weer uploaden
  • Aangepaste SQL-query’s uitvoeren voor jouw databases, inclusief degene die de structuur zullen wijzigen. Zelfs zonder de app opnieuw te installeren!

En meer, allemaal vanuit jouw favoriete webbrowser.

 

Voor meer informatie over wat Androscope kan doen en om het zelf te proberen, bezoek onze blogpost van onze collega Mike: https://blog.ngti.nl/inside-android-application-data-83c63077089d