I have previously only once built an Android project successfully on my Linux machine; for that, I downloaded the Android SDK and ultimately used gradlew
to build it, which worked fine.
Now, I got a zip containing an Android project source code; however, as I'm not experienced with this, I have no idea what this project was made in, nor how was it built. The directory structure looks like this:
.
├── AndroidManifest.xml
├── assets
├── bin
│ ├── AndroidManifest.xml
│ ├── classes
│ │ └── com # ... .class files here
...
│ ├── jarlist.cache
│ └── res
├── gen
│ └── com # ... BuildConfig.java here
...
│ └── android-support-v4.jar
├── lint.xml
├── proguard-project.txt
├── project.properties
├── res
│ ├── drawable # ... .png files here
...
│ ├── drawable-hdpi # many similar dirs, launcher.png file
...
│ ├── layout # main.xml and other .xml files
...
│ ├── raw # some .json files here
...
│ ├── values # also values-v11, values-v14 dirs; has styles.xml
...
└── src
└── com # .java source files here
...
I have tried How/when to generate Gradle wrapper files? in this directory (that is, gradlew wrapper
and gradlew init
), but even if gradle-specific files are generated, I cannot build that - since I cannot run gradlew assemble
or gradlew build
, as I get "Task 'assemble' not found in root project
".
After finding Build Android project on command line on OSX: Task 'assembleDebug' not found in root project, I thought maybe it has to be compiled with ant
, but that fails with "Buildfile: build.xml does not exist!
" (and indeed, such a file doesn't exist).
From what I read around, I guess one should download Android Studio and try opening the project there -- but I'd rather not download/learn/use yet another IDE (I use a standalone text editor and I don't use, say, Eclipse), and would rather get this done through the command line.
So how could I "re-initialize" this project, so I can build it with command line tools on Linux (gradle
or ant
, though I guess gradle
is preferred, as apparently ant
is not currently supported by Android team)?