Low-Level: How to copy appdata from android 4 kitkat to android 6 marshmellow I have android backups from my old (now dead) kitkat phone.
Trying to restore the appdata of two different apps from a backup I cannot run the app with the old database. I copy the files to /data/data/TLD.SOMETHING.APPDIRECORY, but when I open the app it crashes immediately. 

At least one of the apps is the exact same version as before, as it has not been updated for years.
The access rights for the files are correct (user and group and -rw-------).
If I generate appdata on android 6 by renaming the old data and starting the app, the app does not crash and the newly generated files have the same access rights as the ones that I restored.

So the only reason I can think of is the format of the database. I think most likely the db format changed between android 4 and 6 and apps do only use an interface to the OS, which handles the actual db-access for the app.
"The OS" might be an OS-bundles SQLite provider or something else.
Is my assumption correct? What is the difference and how can I convert?

thank you!
GiantTree got this thing working. With his comment I found 
https://forum.xda-developers.com/showpost.php?s=08f8d78aabe88fb570ec1e59a37e71a8&amp;p=67319237&amp;postcount=3

Which does the trick. So you need to fix user, group, Unix rights and SELinux Security Context. Thanks for this quick reply!