Re: PSA: How to archive your EXACT homescreen(s) apps to Windows for perfect cross-platform backup/restore sans the net
Hank Rogers <[email protected]>
| Newsgroups | comp.mobile.android,alt.comp.microsoft.windows,alt.comp.os.windows-10 |
|---|---|
| Organization | A noiseless patient Spider |
| Message-ID | <[email protected]> |
Maria Sophia wrote on 8/19/2026 3:43 PM:
> Both prior methods easily created the "nova.db" SQL file on the desktop.
>
> This python script spits out the results into a human-readable file.
> # -------------------------------------------------------------------
> # novasql.py
> # Parse nova.db binary SQL database using "python novasql.py"
> # python novasql.py > result.txt
> # -------------------------------------------------------------------
> # v1p0 20260819 Spits out the nova.db into a human-readable text file
> # -------------------------------------------------------------------
> import sys
> import sqlite3
>
> # Force standard output to use UTF-8 encoding to avoid Windows charmap errors
> sys.stdout.reconfigure(encoding="utf-8")
>
> # Connect to your extracted nova.db
> conn = sqlite3.connect("nova.db")
> cursor = conn.cursor()
>
> try:
> # Query table names to verify schema if needed
> cursor.execute("SELECT name FROM sqlite_master WHERE type='table';")
> print("--- TABLES ---")
> for table in cursor.fetchall():
> print(table[0])
> print("\n--- ITEMS ---")
>
> # Query favorites table (adjust column names if needed based on your Nova version)
> cursor.execute("SELECT title, intent FROM favorites;")
> for row in cursor.fetchall():
> print(f"Title: {row[0]} | Intent/Package: {row[1]}")
>
> except sqlite3.OperationalError as e:
> print("Database structure notice:", e)
>
> conn.close()
> # end of novasql.py
>
> The problem is the results are fugly... here's just a top of the result
>
> --- TABLES ---
> android_metadata
> appgroups
> drawer_groups
> customIcons
> favorites
> allapps
>
> --- ITEMS ---
> Title: None | Intent/Package: None
> Title: Apps | Intent/Package: #Intent;action=com.teslacoilsw.launcher.ACTION;launchFlags=0x10000000;component=com.teslacoilsw.launcher/.NovaShortcutHandler;S.LAUNCHER_ACTION=APP_DRAWER;end
> Title: Apps | Intent/Package: #Intent;action=com.teslacoilsw.launcher.ACTION;launchFlags=0x10000000;component=com.teslacoilsw.launcher/.NovaShortcutHandler;S.LAUNCHER_ACTION=APP_DRAWER;end
> Title: Apps | Intent/Package: #Intent;action=com.teslacoilsw.launcher.ACTION;launchFlags=0x10000000;component=com.teslacoilsw.launcher/.NovaShortcutHandler;S.LAUNCHER_ACTION=APP_DRAWER;end
> Title: Apps | Intent/Package: #Intent;action=com.teslacoilsw.launcher.ACTION;launchFlags=0x10000000;component=com.teslacoilsw.launcher/.NovaShortcutHandler;S.LAUNCHER_ACTION=APP_DRAWER;end
> Title: Nova Settings | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.teslacoilsw.launcher/.preferences.SettingsActivity;end
> Title: sys | Intent/Package: None
> Title: comms | Intent/Package: None
> Title: Settings | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.android.settings/.Settings;end
> Title: todo | Intent/Package: None
> Title: smtCalculator | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.simplemobiletools.calculator/.activities.SplashActivity.Orange;end
> Title: pic | Intent/Package: None
> Title: Camera | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.motorola.camera2/com.motorola.camera.Camera;end
> Title: GoogleContacts | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.google.android.contacts/com.android.contacts.activities.PeopleActivity;end
> Title: FM Radio | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.motorola.fmplayer/.ChangeThemeActivity;end
> Title: Email | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=org.dystopia.email/.ActivityMain;end
> Title: Messages | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.google.android.apps.messaging/.ui.ConversationListActivity;end
> Title: files | Intent/Package: None
> Title: auto | Intent/Package: None
> Title: Private Location | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.wesaphzt.privatelocation/.MainActivity;end
> Title: Simpletask | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=nl.mpcjanssen.simpletask/.Simpletask;end
> Title: Terminal Emulator | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=jackpal.androidterm/.Term;end
> Title: audio | Intent/Package: None
> Title: Audio Recorder | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.github.axet.audiorecorder/.activities.MainActivity;end
> Title: smtGallery | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.simplemobiletools.gallery.pro/.activities.SplashActivity.Orange;end
> Title: Yalp Store | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.github.yeriomin.yalpstore/.InstalledAppsActivity;end
> Title: Amaze | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.amaze.filemanager/.ui.activities.MainActivity;end
> Title: Simple Explorer | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.dnielfe.manager/.BrowserActivity;end
> Title: Tasks | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=org.tasks/com.todoroo.astrid.activity.TaskListActivity;end
> Title: My App List | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.projectsexception.myapplist/.MainActivity;end
> Title: Keepass2Android | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=keepass2android.keepass2android/crc64c98c008c0cd742cb.KeePass;end
> Title: App Backup & Restore | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=mobi.usage.appbackup/mobi.trustlab.appbackup.NewAppBackupActivity;end
> Title: App Backup & Restore | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=mobi.infolife.appbackup/.ui.viewpager.NewAppBackupActivity;end
> Title: Apk Extractor | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=axp.tool.apkextractor/.MainActivity;end
> Title: APK Export | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.ses.app.apkexport/.Main;end
> Title: Open Camera | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=net.sourceforge.opencamera/.MainActivity;end
> Title: F-Droid | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=org.fdroid.fdroid/.views.main.MainActivity;end
> Title: App Backup Lite | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.ruet_cse_1503050.ragib.appbackup.lite/.MainActivity;end
> Title: Barcode Scanner | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.google.zxing.client.android/.CaptureActivity;end
> Title: QR Code Reader | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=me.scan.android.client/.ui.ScanActivity;end
> Title: AddressToGPS | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=me.danielbarnett.addresstogps/me.danielbarnett.AddressToGPS.MainActivity;end
> Title: 2ndLine | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.enflick.android.tn2ndLine/authorization.ui.AuthorizationActivity;end
> Title: App Drawer | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=au.radsoft.appdrawer/.AppDrawer;end
> Title: List My Apps | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=de.onyxbits.listmyapps/.MainActivity;end
> Title: Binary Eye | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=de.markusfisch.android.binaryeye/.activity.SplashActivity;end
> Title: MuPDF viewer | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.artifex.mupdf.viewer.app/.LibraryActivity;end
> Title: AppOpsX | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.zzzmode.appopsx/.ui.main.MainActivity;end
> Title: BARIA | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.easwareapps.baria/.MainActivity;end
> Title: Compass | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.sgr_b2.compass/.activities.MainActivity;end
> Title: Here GPS Location | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.borneq.heregpslocation/.MainActivity;end
> Title: OpenTracks | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=de.dennisguse.opentracks/.introduction.IntroductionActivity;end
> Title: apk | Intent/Package: None
> Title: Keepass2Android | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=keepass2android.keepass2android/crc64c98c008c0cd742cb.KeePass;end
> Title: EDS Lite | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.sovworks.edslite/com.sovworks.eds.android.filemanager.activities.FileManagerActivity;end
> Title: smtCamera | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.simplemobiletools.camera/.activities.SplashActivity.Orange;end
> Title: smtDraw | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.simplemobiletools.draw.pro/.activities.SplashActivity.Orange;end
> Title: penguin | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.google.android.GoogleCamera/com.android.camera.CameraLauncher;end
> Title: OI Shopping List | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=org.openintents.shopping/.ShoppingActivity;end
> Title: ShoLi | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=name.soulayrol.rhaa.sholi/.MainActivity;end
> Title: Simply Do | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=kdk.android.simplydo/.SimplyDoActivity;end
> Title: Shopping List | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=privacyfriendlyshoppinglist.secuso.org.privacyfriendlyshoppinglist/.ui.main.SplashActivity;end
> Title: Shopping List | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.woefe.shoppinglist/.activity.MainActivity;end
> Title: 1List | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.lolo.io.onelist/.MainActivity;end
> Title: Notes | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.simplemobiletools.notes.pro/.activities.SplashActivity.Orange;end
> Title: notes | Intent/Package: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.bijoysingh.quicknote/com.maubis.scarlet.base.MainActivity;end
>
Mary, Please let us know when you get this PSA all worked out and
ready. Thanks!