adb, the Android Debug Bridge in the SDK's platform-tools, talks to every attached device and emulator through a server on port 5037. Three commands install BookNest and check what the device thinks it has:
apk=platforms/android/app/build/outputs/apk/debug/app-debug.apk
adb -s emulator-5558 install -r $apk
adb -s emulator-5558 shell pm list packages booknest
adb -s emulator-5558 shell dumpsys package com.example.booknest | grep -E "versionCode|versionName"Output
Performing Streamed Install
Success
package:com.example.booknest
versionCode=10000 minSdk=24 targetSdk=36
versionName=1.0.0install -r replaces an installed copy and keeps its data. Logcat is the device's shared log, thousands of lines a minute from Android and every app, so narrow it to BookNest's process and Cordova 129 's tags:
adb -s emulator-5558 shell am start -n com.example.booknest/.MainActivity
sleep 5
pid=$(adb -s emulator-5558 shell pidof com.example.booknest)
adb -s emulator-5558 logcat -d --pid=$pid -v brief -s CordovaActivity CordovaWebViewImplOutput
Starting: Intent { cmp=com.example.booknest/.MainActivity }
--------- beginning of main
I/CordovaActivity( 5414): Apache Cordova native platform version 15.1.0 is starting
D/CordovaActivity( 5414): CordovaActivity.onCreate()
D/CordovaWebViewImpl( 5414): >>> loadUrl(https://localhost/index.html)
...
D/CordovaWebViewImpl( 5414): onPageDidNavigate(https://localhost/index.html)
D/CordovaWebViewImpl( 5414): onPageFinished(https://localhost/index.html)-d dumps the buffer and exits (omit it to follow live), --pid keeps one process and -s names the tags. Crashes appear under AndroidRuntime with a Java stack trace. JavaScript's console.log() does not reach logcat in cordova-android 15; read it in the WebView console (Remote Debugging).