我想使用Windows命令行安装一个文件。首先,我想在编译完所有.jar文件后为Android应用程序创建一个.apk文件,而不使用Eclipse。

有人知道如何在不使用Eclipse的情况下,仅通过使用命令行就可以做到这一点吗?


当前回答

您可以使用下面的代码从命令行安装应用程序

adb install example.apk

这个apk安装在当前打开的模拟器的内存中。

adb install -s example.apk

这个apk安装在当前打开的模拟器的sd卡中。

您还可以将apk安装到adb连接设备列表中的特定设备。

adb -s emulator-5554 install myapp.apk

有关其他选项,请参阅adb帮助。

其他回答

你来这里很可能是因为你也想建造它!

构建

gradlew

(在Windows gradlew.bat上)

然后安装

adb install -r exampleApp.apk

(-r使其替换现有的副本,如果安装在模拟器上,则添加-s)

奖金

我在~/.bash_profile中设置了一个别名

alias bi="gradlew && adb install -r exampleApp.apk"

(Build and Install的简称)

您可以通过使用adb命令行工具或gradle命令来做到这一点: 请看本指南。

设置命令行adb

export PATH=/Users/mayurik/Library/Android/sdk/platform-tools/adb:/Users/mayurik/Library/Android/sdk/tool

Gradle命令来构建和安装。

 #Start Build Process
    echo "\n\n\nStarting"
    ./gradlew clean

    ./gradlew build

    ./gradlew assembleDebug

    #Install APK on device / emulator
    echo "installDebug...\n"

    ./gradlew installDebug

还可以使用。卸载以前的任何版本

  `./gradlew uninstallDebug`

你可以像下面这样在设备/模拟器上启动你的主活动

#Launch Main Activity
adb shell am start -n "com.sample.androidbuildautomationsample/com.sample.androidbuildautomationsample.MainActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER

按Win+R > cmd 导航到android-sdk windows文件夹中的platform-tools\ 亚洲开发银行类型 现在按照Mohit Kanada所写的步骤(确保你提到了。apk文件的整个路径,例如。d: \ android应用程序\ test.apk)

我在我的windows机器上使用这个脚本(将当前文件夹中的所有apks安装到所有可用设备)

Write-Host "Listing APKs..."

$List_Apks = New-Object System.Collections.ArrayList

Get-ChildItem -Path .\ -Filter *.apk -File -Name| ForEach-Object {
    $apk_filename = [System.IO.Path]::GetFileName($_)
    $List_Apks+=$apk_filename
    $apk_filename
}

Write-Host "Found apks "$List_Apks.Length
Write-Host ""

$raw_list = adb devices
$array_lines = $raw_list.Split("\n")

Write-Host "Listing devices "

$List_Device_Ids = New-Object System.Collections.ArrayList

1..($array_lines.Length-2) | foreach {
  $device_id = $array_lines[$_].Split([char]0x9)[0]
  $List_Device_Ids+=$device_id
  $device_id
}

Write-Host "Found devices "$List_Device_Ids.Length

0..($List_Device_Ids.Length-1) | foreach {
    $device_id = $List_Device_Ids[$_]

    0..($List_Apks.Length-1) | foreach {
        $apk_file_name = $List_Apks[$_]

        Write-Host "Installing " $apk_file_name "->" $device_id

        adb -s $device_id install -r $apk_file_name
    }
}


Write-Host "Endo"

保存为install-apks.ps1

然后是powershell:

powershell -executionpolicy bypass -File .\install-apks.ps1

您可以通过在关键字'install'之前输入设备/模拟器标识符,然后输入apk的路径,将apk安装到特定的设备/模拟器。注意,'install'关键字后面的-s开关(如果有的话)表示安装到sd卡。例子:

adb -s emulator-5554 install myapp.apk