I think the main reason to have the assets
directory in the android project is just convention. According to this answer the reason is that...
Android projects do have a specific folder in its root named assets. The folder has to be strictly named "assets" as enforced by the Android project. Therefore, it would be a better idea to lay your folder hierarchy the same way in other projects as well so that you won't have to make changes for individual platforms.
But I think it should be possible to move the assets
directory to the core project, because it is also placed in the core proejct, if you create a project without an Android part.
To move the assets
directory to the core project you just need to adapt your build.gradle
file, that is placed inside the sub-projects and change the following lines:
//sourceSets.main.resources.srcDirs = ["../android/assets"]
sourceSets.main.resources.srcDirs = ["../core/assets"]
//project.ext.assetsDir = new File("../android/assets");
project.ext.assetsDir = new File("../core/assets");
In my project this file was located in the desktop sub-project, but there might be some in other build.gradle
files too.
To run your project in eclipse it might be neccessary to re-link the asset folder after moving it. See this answer for a detailed description on how to do this.