How to compile APK from command line?

后端 未结 3 1700
盖世英雄少女心
盖世英雄少女心 2020-12-05 00:53

I am interested in making Android apps on demand. Depending on the clients request, my web site would send me a JSON file direct to a Windows application that I have created

相关标签:
3条回答
  • 2020-12-05 01:27

    Create build.xml at project creation time

    If you start a new project with:

    android create project \
        --target 1 \
        --name MyName \
        --path . \
        --activity MyActivity \
        --package com.yourdomain.yourproject
    

    the build.xml file used by ant will be generated.

    The android tool is present in the tools/ directory of the SDK which you downloaded.

    Create debug releases

    Besides:

    ant release
    

    for final releases, you can also create debug releases with:

    ant debug
    

    Location of generated apk

    Generated apk are placed under bin/.

    The most important outputs are:

    MyName-debug.apk
    MyName-release.apk
    

    but some intermediate apks are also generated, in particular unaligned and unsigned versions.

    But most of the time you can forget where they were created and just run:

    ant debug install
    ant release install
    

    to get them installed. But make sure it is working with adb first: adb devices command not working

    Tested on Ubuntu 15.10, Android 23.

    0 讨论(0)
  • 2020-12-05 01:33

    Android doesn't directly use ANT build systems now. It uses Gradle, which is based on Groovy. You can learn more about build systems here.

    You can see the list of available tasks you can run on using this command

    gradlew tasks
    

    To initiate a debug build, invoke the assembleDebug task

    gradlew assembleDebug
    

    You can install your app using the adb tool via this command

    adb install path/to/your_app.apk
    

    To learn more about building on command line, follow this comprehensive article.

    Also you can read this article on "Why Build Your Java Projects with Gradle Rather than Ant or Maven?"

    0 讨论(0)
  • 2020-12-05 01:37

    Android uses the Ant build system, so you can create a build.xml and build.properties file for your project.

    You'll need to create the build.xml file first though:

    android update project -p .
    

    This will generate a build.xml file. You should probably customize the build steps and targets for your project. A good idea in your case would be to have the build.properties file generated by your website for the specific build... Then include it via the build.xml file. In particular, you will need to specify in the build.properties file where the signing keys are, and what the password is:

    Build.Properties:

    key.store=keystore.dat
    key.alias=signing_key
    key.store.password=password123
    key.alias.password=password123
    

    The build process using ant also allows you to do variable replacements in Java files, which might be another idea. It would allow you to customize the build process further on a client by client basis.

    By default, the build is triggered by:

    ant clean
    ant release
    

    Another neat idea: Have Ant copy the resulting APK file to a network share accessible by the website by placing a < copy ... /> line in the < target name="release" > section.

    0 讨论(0)
提交回复
热议问题