Android app (Expo + Expo Router) that lists non-system installed packages and classifies them by likely technology stack: React Native / Expo, Flutter, Unity, .NET, NativeScript, Kotlin Multiplatform (Skiko), Cordova / Capacitor, Chrome WebAPK (PWA), plain native JNI, or other.
It is aimed at developers who want a quick read on what’s on the device, not a guaranteed store-grade audit.
- Installed app list with icon, size, version, target SDK, permissions.
- Framework tag per app using native
.sonames, optional APK zip probes (hasZipEntrieswith exact paths where needed), and package-id heuristics (e.g.org.chromium.webapk.*for Chrome-installed PWAs). - SDK hints from library names and (optional deep scan) a few config paths.
- Filters, presets, MMKV-backed settings, detail screen with optional zip-backed hints.
Install the published dependency:
npx expo install expo-android-app-listRebuild the Android app after upgrading the module (npx expo run:android).
If expo-android-app-list is resolved from outside the app project directory (for example while developing the module from source), ensure Metro’s watchFolders includes that package root so bundling resolves correctly. The included metro.config.js may already extend watchFolders for that layout.
Use npm run start:emu / npm run android:emu when the Android emulator cannot reach Metro on the LAN IP (REACT_NATIVE_PACKAGER_HOSTNAME / --localhost plus adb reverse tcp:8081 tcp:8081).
- Expo SDK 54 + Expo Router
- @tanstack/react-query for scanning / caching
- zustand + react-native-mmkv for persisted UI state
- react-native-reanimated
| Script | Purpose |
|---|---|
npm start |
Expo dev server (default LAN host) |
npm run start:emu |
Dev server bound to localhost (use with emulator + adb reverse) |
npm run android |
expo run:android |
npm run android:emu |
Android build with REACT_NATIVE_PACKAGER_HOSTNAME=127.0.0.1 for emulators |
npm test |
Jest (framework / SDK hint unit tests) |
npm run test:adb-detection |
Device smoke (needs E2E build + app on device) |
See the app’s package metadata and license file for terms. The expo-android-app-list dependency is published under MIT unless its package states otherwise.