How to comprehensively back up user-significant data from Android device
If you have a good enough backup program, why not just backup the entire file system on the device?  Under Ubuntu 15.10, my Android-based phone gets mounted at /run/user/1000/gvfs/.  I back all those files up with borg-backup.

A lot of the customization might also get backed up to your Google profile (I haven't switched Android phones yet).  My approach is very low-level and there might even be slicker ways to do it.

#!/bin/bash

# exit immediately on errors
set -e
# error out if uninitialized variable is used
set -u

REPOPATH=ssh://backups.example.com/backup/device/borg
ARCHIVENAME=tgh-usbdevice
if [ $# -ge 1 ]; then
  ARCHIVENAME+="-"${1}
fi
ARCHIVENAME+="-"$(date +'%Y%m%d-%H%M')

echo "Creating: ${REPOPATH}::${ARCHIVENAME}"
borg create --progress --stats ${REPOPATH}::${ARCHIVENAME} \
  /run/user/1000/gvfs/

borg check --archives-only --last 10 ${REPOPATH}