कमांड प्रॉम्प्ट से एक एपीके फ़ाइल स्थापित करें?


445

मैं विंडोज कमांड लाइन का उपयोग करके एक फ़ाइल स्थापित करना चाहता हूं। पहले मैं ग्रहण के उपयोग के बिना एंड्रॉइड एप्लिकेशन के लिए एक .apk फ़ाइल बनाने के लिए सभी .jar फ़ाइलों का संकलन करने के बाद निर्माण करना चाहता हूं।

क्या किसी को पता है कि यह ग्रहण के उपयोग के बिना कैसे किया जा सकता है और केवल कमांड लाइन का उपयोग करके।


उत्तरों में जोड़ने के लिए सुनिश्चित करें कि आप उस निर्देशिका को जोड़ते हैं जहाँ चींटी आपके पथ पर रहती है।
रवि व्यास

stackoverflow.com/questions/3480201/… एमुलेटर में एप को स्थापित करने का सही तरीका
नवीन ताम्रकार

जवाबों:


689

कमांड लाइन से एप्लिकेशन इंस्टॉल करने के लिए आप नीचे दिए गए कोड का उपयोग कर सकते हैं

adb install example.apk

यह apk वर्तमान खोले गए एमुलेटर की आंतरिक मेमोरी में स्थापित है।

adb install -s example.apk

यह एपीके चालू खुले एमुलेटर के एसडी-कार्ड में स्थापित है।

आप adb से जुड़े डिवाइस सूची में विशिष्ट डिवाइस के लिए एक एपीके भी स्थापित कर सकते हैं।

adb -s emulator-5554 install myapp.apk

अन्य विकल्पों के लिए मदद के लिए भी देखें ।


12
भविष्य में किसी को भी समस्या के लिए इसे जोड़ने के लिए, -dUSB कनेक्शन पर स्थापना को बाध्य करने के लिए जोड़ें । मेरे पास मुद्दे थे, और इसे तय करना था। adb -d install myApp-release.apk
गाय

7
adb install -dUSB को बाध्य नहीं करता है। अदब की मदद से:(-d: allow version code downgrade)
स्कॉट स्टैफ़ोर्ड

6
से developer.android.com/tools/help/adb.html#commandsummary : "-d | केवल संलग्न USB डिवाइस के लिए एक ADB आदेश निर्देशित करें।"
नोयो

39
-dभ्रम का उत्तर है, @ZachCase और @ScottStafford दोनों सही हैं। एडीबी विकल्प और एडीबी कमांड विकल्प अलग चीजें हैं: adb -d install file.apkयूएसबी द्वारा जुड़े एकल एंड्रॉइड डिवाइस पर इंस्टॉल होता है [देखें ] जबकि adb install -d file.apkसंभव डाउनग्रेड [देखें ] के साथ एपीके इंस्टॉल करता है ।
तनीस

12
adb install -r example.apkएप्लिकेशन इंस्टॉल / अपडेट करने के लिए उपयोग करें । -rअगर यह पहले से इंस्टॉल है अनुप्रयोग अद्यतन करेगा।
बेन_जोसेफ

44

आप चींटी के साथ कमांड लाइन पर निर्माण कर सकते हैं। इस गाइड को देखें

फिर, आप इसे adbकमांड लाइन पर उपयोग करके स्थापित कर सकते हैं ।

adb install -r MyApp.apk

-rझंडा मौजूदा आवेदन को बदलने के लिए है।


40

आप कीवर्ड 'इंस्टाल' से पहले डिवाइस / एमुलेटर आइडेंटिफ़ायर में प्रवेश करके किसी विशिष्ट डिवाइस / एमुलेटर पर एपीके इंस्टॉल कर सकते हैं और फिर एपीके का रास्ता देख सकते हैं। ध्यान दें कि -s स्विच के बाद, यदि कोई हो, तो 'sd' कीवर्ड sd कार्ड में संस्थापन को दर्शाता है। उदाहरण:

adb -s emulator-5554 install myapp.apk

39

Android डीबग ब्रिज कमांड लाइन टूल का उपयोग करें adbजैसे 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.

2
-s (विशिष्ट डिवाइस) = निर्दिष्ट क्रम संख्या के साथ डिवाइस या एमुलेटर को निर्देश देता है।
दर्पण

29

ऐसा करने का सरल तरीका है

adb install example.apk

और यदि आप कनेक्ट डिवाइस को लक्षित करना चाहते हैं तो आप "-d" पैरामीटर जोड़ सकते हैं

adb install -d example.apk

यदि आपके पास एक से अधिक उपकरण / एमुलेटर जुड़ा है तो आपको यह त्रुटि मिलेगी

adb: error: कनेक्ट फेल: एक से अधिक डिवाइस / एमुलेटर - डिवाइस की प्रतीक्षा - त्रुटि: एक से अधिक डिवाइस / एमुलेटर

इससे बचने के लिए आप सभी उपकरणों को नीचे कमांड द्वारा सूचीबद्ध कर सकते हैं

adb devices

आपको नीचे दिए गए परिणाम मिलेंगे

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

इनमें से किसी एक डिवाइस को चुना और नीचे दिए अनुसार "-s a3b09hh3e" के रूप में adb कमांड में पैरामीटर जोड़ें

adb -s a3b09a6e install  example.apk

एक संकेत के रूप में भी अगर एपीके का रास्ता लंबा है और एक रिक्त स्थान है, तो बस इसे दोहरे उद्धरण चिह्नों के बीच जोड़ दें

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

19
  1. Win+ R> Cmd दबाएँ
  2. एंड्रॉइड-एसडीके विंडोज़ फ़ोल्डर में प्लेटफ़ॉर्म-टूल्स \ पर नेविगेट करें
  3. Adb टाइप करें
  4. अब मोहित कनाड़ा द्वारा लिखित चरणों का पालन करें (सुनिश्चित करें कि आपने उदाहरण के लिए .apk फ़ाइल के संपूर्ण पथ का उल्लेख किया है। d: \ android-apps \ test.apk)

1
आपको @Mohit Kanada के उत्तर में इसे जोड़ना होगा - और इन चरणों को उत्तर के रूप में नहीं लिखना चाहिए।
एसटीएफ

13

एपीके फ़ाइलों को स्थापित करने की आज्ञा देता है जैसे कि यह एंड्रॉइड स्टूडियो में करता है जिसे आप नीचे देख सकते हैं।

1) अपने ऐप को पुश करने के लिए:

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

कहाँ पे com.my.awesomeआपका पैकेज है

2) स्थापित करने के लिए:

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

यदि आप एक एप्लिकेशन इंस्टॉल करते हैं जो आपको ssh के माध्यम से रूट के रूप में कनेक्ट करने की अनुमति देता है, तो यह कमांड ठीक काम करेगा। :-)
TSJNachos117

11

यह कितना आसान है!

उदाहरण के लिए मेरा apk फ़ाइल स्थान है: d: \ myapp.apk

  1. cmd चलाएं

  2. "प्लेटफ़ॉर्म-टूल्स" फ़ोल्डर में नेविगेट करें (एसडीके फ़ोल्डर में)

  3. अपना एमुलेटर डिवाइस शुरू करें (मान लें कि इसका नाम 5556 है: MyDevice)

  4. इस कोड को cmd में टाइप करें:

    adb -s एमुलेटर -5556 डी स्थापित करें: \ myapp.apk

थोड़ी देर रुको और हो गया !!


आप अपने पथ पर प्लेटफ़ॉर्म-टूल निर्देशिका भी जोड़ सकते हैं, इसलिए आपको हर बार इसे नेविगेट नहीं करना होगा।
प्रशान्त चन्द्र

4

आप यहाँ होने की संभावना है क्योंकि आप इसे भी बनाना चाहते हैं!

बिल्ड

gradlew

(विंडोज पर gradlew.bat)

फिर इंस्टॉल करें

adb install -r exampleApp.apk

( -rयह मौजूदा प्रतिलिपि को प्रतिस्थापित करता है, -sअगर एक एमुलेटर पर स्थापित करना जोड़ें )

बक्शीश

मैंने अपने में एक उपनाम स्थापित किया ~/.bash_profile

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

(बिल्ड और इंस्टॉल के लिए लघु)


4

डिबग (परीक्षण) APK स्थापित करने के लिए, उपयोग करें -t:

बिल्ड-मेक प्रोजेक्ट चलाएँ

एप्लिकेशन फ़ोल्डर में अंतिम उत्पन्न APK के लिए देखें।

उदाहरण:

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

2

आप इसे adb कमांड लाइन टूल्स या gradle कमांड का उपयोग करके कर सकते हैं: इस गाइड को देखें

सेटअप कमांड लाइन adb

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

ग्रेड बनाने और स्थापित करने के लिए कमांड।

 #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

0

मैं अपनी स्क्रिप्ट मशीन पर इस स्क्रिप्ट का उपयोग करता हूं (सभी उपलब्ध उपकरणों के लिए वर्तमान फ़ोल्डर में सभी एप्स को हटाएं)

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 -executionpolicy bypass -File .\install-apks.ps1
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.