5

Title says it all, pretty much.

A quick Google search (surprizingly) did not return any pertinent results.

I guess it might boil down to copy-pasting some system folders/files from one Android installation (via USB-C, via a PC) to the other. But I prefer not to be the guinea pig here...

(PS: I'd rather not have to revert to Firefox's "sync"-feature for various reasons... anyway, it's obvious that "sync" would work, but that's not the question here...)


EDIT:

  • My phone(s) aren't rooted.
  • Neither a 3rd-party app, nor a cloud-based solution is what I'm interested in.

Related link(s):

seems like the transfer-via-USB-route would require a rooted phone :(

3

2 Answers 2

4

As of now, given the constraints, you cannot achieve what you have set out for.

Firefox app would be able to restore bookmarks using these methods, in the absence of a hack:

  1. native settings option to import bookmarks. This is not available in Firefox for Android as of now.
  2. Using Web Extensions/ Addons. Firefox for Android doesn't provide API support for manipulating bookmarks as of now.
  3. Read and write to its browser.db database using a universally accessible content provider. Firefox's content provider for this is not accessibly by any user other than Firefox itself.
  4. Full participation in Android Backup Service. As a result, a user can use adb to backup and restore Firefox app's data. Sadly, Firefox explicitly disallows backup as of now, so adb is also out here.
  5. Using its own implementation of cloud backup service. It does provide a sync service -- but then, you don't want that so this is also not an option anymore.

Possible hacks:

  1. copy and then restore the browser.db or into your another phone. That database contains users' bookmarks. Alternatively, use a root backup/restore solution, such as Titanium Backup.
  2. Use content provider with root access to read and write into browser.db. But if you have root access, "1." is plain and easy.

As you can see from above, your options, as of now, are: get the devices rooted, or use Firefox's sync services.

Third option is to raise a feature request with Mozilla to provide bookmarks import, and extension support for manipulation of bookmarks.

2

I recently migrated app data from multiple Firefox apps from one Android phone to another. At first I tried to rely on Android's device-to-device backup transfer mechanism, but that did not migrate any meaningful Firefox data. I also tried adb backup, but that does not work either (bug 1808763).

What did work is to enable Firefox's remote debugging feature (about:debugging to connect to an Android device) + adb (no root required) to unlock the ability to execute arbitrary JavaScript code in Firefox's main process on the Android device. This enables me to do anything what Firefox is allowed to do, including reading and writing its app data. Which is exactly what we need to create and restore a backup.

The remaining part is the code to actually perform the copy and restore, which I shared at:
https://github.com/Rob--W/firefox-android-backup-restore

Backup instructions: https://github.com/Rob--W/firefox-android-backup-restore#backup

  • The backup instructions are designed to not consume any space on the source device. The first step is to start a TCP server on your computer to receive the data directly. If you don't have nc (netcat) available on your computer, an alternative is to run a local TCP server on your Android device and then use adb to retrieve the data from it:

    adb shell 'nc -l -p 12101 > /sdcard/firefox-android-backup.tar.gz'
    adb pull /sdcard/firefox-android-backup.tar.gz
    adb shell rm /sdcard/firefox-android-backup.tar.gz
    
  • Once the server has been set up, follow the rest of the instructions to run fab_backup_create();

Restore instructions: https://github.com/Rob--W/firefox-android-backup-restore#restore

  • The first step to restoring is to put the backup archive on the device (replace org.mozilla.firefox if NOT using Firefox release!):

    adb shell mkdir /sdcard/Android/data/org.mozilla.firefox/
    adb push firefox-android-backup.tar.gz /sdcard/Android/data/org.mozilla.firefox/
    
  • The default instructions are for Firefox release (org.mozilla.firefox), but if you want to restore to a different app, replace org.mozilla.firefox with:

    • org.mozilla.firefox - Firefox Release
    • org.mozilla.firefox_beta - Firefox Beta
    • org.mozilla.fenix - Firefox Nightly
    • org.mozilla.focus - Firefox Focus
  • Once the backup has been uploaded to the device, restore it by following the rest of the instructions to run fab_backup_restore();

I have tested this with all Firefox apps (versions 118 - 120), on Android 12 and Android 14, on Google Pixel 3 and Google Pixel 8.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .