我想使用Windows命令行安装一个文件。首先,我想在编译完所有.jar文件后为Android应用程序创建一个.apk文件,而不使用Eclipse。
有人知道如何在不使用Eclipse的情况下,仅通过使用命令行就可以做到这一点吗?
我想使用Windows命令行安装一个文件。首先,我想在编译完所有.jar文件后为Android应用程序创建一个.apk文件,而不使用Eclipse。
有人知道如何在不使用Eclipse的情况下,仅通过使用命令行就可以做到这一点吗?
当前回答
你来这里很可能是因为你也想建造它!
构建
gradlew
(在Windows gradlew.bat上)
然后安装
adb install -r exampleApp.apk
(-r使其替换现有的副本,如果安装在模拟器上,则添加-s)
奖金
我在~/.bash_profile中设置了一个别名
alias bi="gradlew && adb install -r exampleApp.apk"
(Build and Install的简称)
其他回答
按Win+R > cmd 导航到android-sdk windows文件夹中的platform-tools\ 亚洲开发银行类型 现在按照Mohit Kanada所写的步骤(确保你提到了。apk文件的整个路径,例如。d: \ android应用程序\ test.apk)
使用Android调试桥命令行工具adb eg: adb install filename.apk。
这里有一个很好的adb参考资料
install [options] <PATH> Installs a package (specified by <PATH>) to the system.
Options:
-l: Install the package with forward lock.
-r: Reinstall an exisiting app, keeping its data.
-t: Allow test APKs to be installed.
-i <INSTALLER_PACKAGE_NAME>: Specify the installer package name.
-s: Install package on the shared mass storage (such as sdcard).
-f: Install package on the internal system memory.
-d: Allow version code downgrade.
uninstall [options] <PACKAGE> Removes a package from the system.
Options:
-k: Keep the data and cache directories around after package removal.
在Android Studio中打开终端
你可能会看到
C:\Users\nikhil\AppData\Local\Android\Sdk\platform-tools>
复制并粘贴你想要安装的apk到platform-tools的上面路径。 在我的例子中,我把app-qa-debug.apk保存在platform-tools文件夹中。
安装命令
adb install app-qa-debug.apk
所以在终点站你可以看到一些东西
C:\Users\nikhil\AppData\Local\Android\Sdk\platform-tools>adb install app-qa-debug.apk
在安装之后,您可以得到这样的消息
执行流
安装成功
您可以使用下面的代码从命令行安装应用程序
adb install example.apk
这个apk安装在当前打开的模拟器的内存中。
adb install -s example.apk
这个apk安装在当前打开的模拟器的sd卡中。
您还可以将apk安装到adb连接设备列表中的特定设备。
adb -s emulator-5554 install myapp.apk
有关其他选项,请参阅adb帮助。
我在我的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