Komut isteminden bir apk dosyası yüklensin mi?


445

Windows komut satırını kullanarak bir dosya yüklemek istiyorum. İlk olarak Eclipse kullanmadan bir Android uygulaması için bir .apk dosyası oluşturmak için tüm .jar dosyalarını derledikten sonra oluşturmak istiyorum.

Herkes bunun Eclipse kullanılmadan ve sadece komut satırı kullanılarak nasıl yapılabileceğini biliyor mu?


Cevaplara eklemek için karınca'nın bulunduğu dizini eklediğinizden emin olun.
Ravi Vyas

stackoverflow.com/questions/3480201/… Apk'u emulatere kurmanın doğru yolu
Naveen Tamrakar

Yanıtlar:


689

Uygulamayı komut satırından yüklemek için aşağıdaki kodu kullanabilirsiniz

adb install example.apk

Bu apk mevcut açılan emülatörün dahili belleğine yüklenir.

adb install -s example.apk

Bu apk mevcut açılan emülatörün sd kartına yüklenir.

Ayrıca adb'ye bağlı cihaz listesinde belirli bir cihaza bir apk yükleyebilirsiniz.

adb -s emulator-5554 install myapp.apk

Diğer seçenekler için ayrıca adb yardımına başvurun .


12
Gelecekte sorunları olan herkes için bunu eklemek -diçin, yüklemeyi USB bağlantıları üzerinden zorlamak için ekleyin . Sorunlarım vardı ve bunu ekleyerek düzelttim. adb -d install myApp-release.apk
İnek

7
adb install -dUSB'yi zorlamıyor. Adb'nin yardımından:(-d: allow version code downgrade)
Scott Stafford

6
Gönderen developer.android.com/tools/help/adb.html#commandsummary : "-d | sadece takılı USB cihazına bir adb komutunu yönlendirin."
Noyo

39
-dKarışıklığın yanıtı , hem @ZachCase hem de @ScottStafford doğrudur. ADB seçenekleri ve ADB komut seçenekleri farklı şeylerdir: adb -d install file.apkUSB ile bağlı tek bir Android cihaza yüklemeleri [bkz iken] adb install -d file.apkyükleyen olası bir not indirimi ile APK [bkz ].
tanius

12
adb install -r example.apkBir uygulamayı yüklemek / güncellemek için kullanın . -rZaten yüklü eğer uygulamayı güncelleyecektir.
ben_joseph

44

Komut satırında karınca ile inşa edebilirsiniz. Bu kılavuza bakın .

Ardından, adbkomut satırını kullanarak yükleyebilirsiniz .

adb install -r MyApp.apk

-rBayrak mevcut uygulamayı değiştirmektir.


40

'İnstall' anahtar kelimesinden önce cihaz / emülatör tanımlayıcısını ve ardından apk yolunu girerek belirli bir cihaza / emülatöre bir apk yükleyebilirsiniz. 'İnstall' anahtar sözcüğünden sonra varsa -s anahtarının sd karta kurulum anlamına geldiğini unutmayın. Misal:

adb -s emulator-5554 install myapp.apk

39

Android Hata Ayıklama Köprüsü komut satırı aracını kullanın adbörn.: adb install filename.apk.

İçin iyi bir referans adbolduğunu Burada

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.

2
-s (belirli aygıt) = komutu seri numarası belirtilen aygıta veya taklitçiye yönlendirir.
Darpan

29

Bunu yapmanın basit yolu komuttur

adb install example.apk

ve bağlantı cihazını hedeflemek istiyorsanız "-d" parametresini ekleyebilirsiniz.

adb install -d example.apk

bağlı birden fazla cihaz / emülatör varsa bu hatayı alırsınız

adb: hata: bağlantı başarısız: birden fazla cihaz / emülatör - cihazı bekliyor - hata: birden fazla cihaz / emülatör

Tüm cihazları aşağıdaki komutla listeleyebilmeniz için

adb devices

aşağıdaki gibi sonuçlar alacaksınız

 C:\Windows\System32>adb devices 
 List of devices attached 
 a3b09hh3e    device 
 emulator-5334    device

bu cihazlardan birini seçin ve aşağıdaki gibi adb komutuna "-s a3b09hh3e" olarak parametre ekleyin

adb -s a3b09a6e install  example.apk

Ayrıca apk yolu uzun ve bir boşluk varsa bir ipucu olarak, sadece gibi çift tırnak arasına ekleyin

adb -s a3b09a6e install  "c:\my apk location\here 123\example.apk"

19
  1. Win+ R> Cmd tuşlarına basın
  2. Android-sdk windows klasöründeki platform araçlarına \ gidin
  3. Adb yazın
  4. şimdi Mohit Kanada tarafından yazılmış adımları izleyin (örneğin .apk dosyasının tüm yolunu belirttiğinizden emin olun. örneğin: d: \ android-apps \ test.apk)

1
@Mohit Kanada'nın cevabına eklemeniz ve bu adımları bir cevap olarak yazmamanız gerekir.
STF

13

APK dosyalarını Android Studio'da olduğu gibi yükleme komutları aşağıda görebilirsiniz.

1) Uygulamanızı zorlamak için:

adb push /pathOfApk/com.my.awesome.apk /data/local/tmp/com.my.awesome

nerede com.my.awesomepaketin .

2) yüklemek için:

adb shell pm install -t -r "/data/local/tmp/com.my.awesome"

Kök olarak ssh üzerinden bağlanmanıza izin veren bir uygulama yüklerseniz, bu komut düzgün çalışır. :-)
TSJNachos117

11

Bu çok kolay!

örneğin apk dosyamın yeri: d: \ myapp.apk

  1. koşmak cmd

  2. "platform-tools" klasörüne gidin (sdk klasöründe)

  3. emülatör cihazınızı başlatın (diyelim ki adı 5556: MyDevice)

  4. cmd bu kodu yazın:

    adb -s emulator-5556 yükleme d: \ myapp.apk

Bir süre bekleyin ve YAPILDI!


Platform araçları dizinini yolunuza da ekleyebilirsiniz, böylece her seferinde bu dizine gitmeniz gerekmez.
Prashanth Chandra

4

Muhtemelen buradasınız çünkü siz de inşa etmek istiyorsunuz!

İnşa etmek

gradlew

(Windows'ta gradlew.bat )

Sonra Yükle

adb install -r exampleApp.apk

( -rMevcut kopyayı değiştirir,-s bir öykünücüye yüklüyse )

Bonus

Bende bir takma ad oluşturdum ~/.bash_profile

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

(Kurulum ve Yükleme Kısaltması)


4

Bir hata ayıklama (test) apk yüklemek için -t :

Yap-Yap Projesini Çalıştır

Uygulama klasöründe son oluşturulan apk'yi arayın.

Misal:

adb  install -t C:\code\BackupRestore\app\build\outputs\apk\debug\app-debug.apk

2

Bunu adb komut satırı araçlarını VEYA sınıflandırma komutlarını kullanarak yapabilirsiniz: Bu Kılavuz'a bakın .

Komut satırı adb kurulumu

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

Derleme ve kurulum komutları.

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

    ./gradlew build

    ./gradlew assembleDebug

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

    ./gradlew installDebug

Ayrıca, önceki sürümleri kullanarak

  `./gradlew uninstallDebug`

Ana etkinliğinizi aşağıdaki gibi cihaz / emülatörde başlatabilirsiniz

#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

0

Bu komut dosyasını windows makinemde kullanıyorum (geçerli klasördeki tüm apks'leri kullanılabilir tüm cihazlara hatırla)

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"

Bunu install-apks.ps1 olarak kaydedin

Sonra powershell'den:

powershell -executionpolicy bypass -File .\install-apks.ps1
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.