কমান্ড প্রম্পট থেকে একটি apk ফাইল ইনস্টল করবেন?


445

আমি উইন্ডোজ কমান্ড লাইন ব্যবহার করে একটি ফাইল ইনস্টল করতে চাই। প্রথমে আমি Eclipse ব্যবহার না করে অ্যান্ড্রয়েড অ্যাপ্লিকেশনটির জন্য একটি .apk ফাইল তৈরি করতে সমস্ত .jar ফাইল সংকলনের পরে তৈরি করতে চাই।

কেউ কীভাবে জানেন যে কিভাবে গ্রহনটি ব্যবহার না করে এবং কেবল কমান্ড লাইন ব্যবহার করে এটি করা যায়।


উত্তরগুলিতে যুক্ত করতে নিশ্চিত হয়ে নিন যে আপনি যে ডিরেক্টরিটি পিঁপড়ে আপনার পথে রয়েছে সেখানে যুক্ত করেছেন add
রবি ব্যাস

stackoverflow.com/questions/3480201/... রাইট ওয়ে emulater মধ্যে Apk ইনস্টল করুন
নবীন Tamrakar

উত্তর:


689

কমান্ড লাইন থেকে অ্যাপ্লিকেশন ইনস্টল করতে আপনি নীচের কোডটি ব্যবহার করতে পারেন

adb install example.apk

এই apk বর্তমান খোলার এমুলেটর অভ্যন্তরীণ মেমরি ইনস্টল করা হয়।

adb install -s example.apk

এই apk বর্তমান খোলার এমুলেটর এর এসডি কার্ড ইনস্টল করা হয়।

আপনি অ্যাডবিতে সংযুক্ত ডিভাইসের তালিকায় নির্দিষ্ট ডিভাইসে একটি apk ইনস্টল করতে পারেন।

adb -s emulator-5554 install myapp.apk

এছাড়াও পড়ুন এডিবি সাহায্যের অন্যান্য অপশন জন্য।


12
ভবিষ্যতে যে কারও সমস্যা রয়েছে কেবল তার জন্য এটি যুক্ত -dকরতে , ইউএসবি সংযোগের মাধ্যমে ইনস্টলেশনটি জোর করে যুক্ত করুন। আমার সমস্যা ছিল এবং এটি সংশোধন করে। adb -d install myApp-release.apk
গরু

7
adb install -dইউএসবি জোর করে না। অ্যাডবির সহায়তা থেকে:(-d: allow version code downgrade)
স্কট স্টাফোর্ড

6
বিকাশকারী.অ্যান্ড্রয়েড. com/tools/help/adb.html#commandsummary থেকে : "-d | কেবল সংযুক্ত ইউএসবি ডিভাইসে একটি অ্যাডবি কমান্ডকে নির্দেশ দিন" "
নয়েও

39
-dবিভ্রান্তির উত্তর , @ জ্যাচকেজ এবং @ স্কট স্টাফর্ড উভয়ই সঠিক। এডিবি অপশন এবং এডিবি কমান্ড অপশন ভিন্ন জিনিস: adb -d install file.apkইউএসবি দ্বারা সংযুক্ত একক Android ডিভাইসে ইনস্টল [দেখতে যখন] adb install -d file.apkইনস্টলসমূহ একটি সম্ভাব্য ডাউনগ্রেড সহ APK [দেখুন ]।
ট্যানিয়াস

12
adb install -r example.apkকোনও অ্যাপ্লিকেশন ইনস্টল / আপডেট করতে ব্যবহার করুন। -rযদি ইতিমধ্যেই এটি ইনস্টল করা অ্যাপ্লিকেশান আপডেট করা হবে।
ben_joseph

44

আপনি পিপড়া দিয়ে কমান্ড লাইনে তৈরি করতে পারেন। এই গাইড দেখুন

তারপরে, আপনি adbকমান্ড লাইনে ব্যবহার করে এটি ইনস্টল করতে পারেন ।

adb install -r MyApp.apk

-rপতাকা বিদ্যমান অ্যাপ্লিকেশন প্রতিস্থাপন হয়।


40

'ইনস্টল' কীওয়ার্ডের আগে ডিভাইস / এমুলেটর শনাক্তকারী এবং তারপরে এপিপির পাথ প্রবেশ করে আপনি একটি নির্দিষ্ট ডিভাইস / এমুলেটরটিতে একটি apk ইনস্টল করতে পারেন। নোট করুন যে 'ইনস্টল' কীওয়ার্ড-এর পরে -s স্যুইচ যদি কোনও হয় তবে এসডি কার্ডে ইনস্টলিংকে বোঝায়। উদাহরণ:

adb -s emulator-5554 install myapp.apk

39

অ্যান্ড্রয়েড ডিবাগ ব্রিজ কমান্ড লাইন টুল ব্যবহার করুন 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

এটি করার সহজ উপায় হ'ল আদেশ দ্বারা by

adb install example.apk

এবং আপনি যদি সংযুক্ত ডিভাইসটিকে লক্ষ্য করতে চান তবে আপনি "-d" পরামিতি যুক্ত করতে পারেন

adb install -d example.apk

আপনার যদি একাধিক ডিভাইস / এমুলেটর সংযুক্ত থাকে তবে আপনি এই ত্রুটিটি পাবেন

অ্যাডবি: ত্রুটি: সংযোগ ব্যর্থ: একাধিক ডিভাইস / এমুলেটর - ডিভাইসের জন্য অপেক্ষা - ত্রুটি: একাধিক ডিভাইস / এমুলেটর

এড়াতে আপনি নীচের কমান্ড দ্বারা সমস্ত ডিভাইস তালিকাভুক্ত করতে পারেন

adb devices

আপনি নীচের মত ফলাফল পাবেন

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

এই ডিভাইসগুলির মধ্যে একটি বেছে নিন এবং নীচে "-s a3b09hh3e" হিসাবে অ্যাডবি কমান্ডে পরামিতি যুক্ত করুন

adb -s a3b09a6e install  example.apk

ইঙ্গিত হিসাবে যদি এপিপির পথ দীর্ঘ হয় এবং একটি স্পেস থাকে তবে কেবল এটি ডাবল উদ্ধৃতিগুলির মধ্যে যুক্ত করুন

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

19
  1. Win+ R> সেমিডি টিপুন
  2. অ্যান্ড্রয়েড-এসডিকে উইন্ডো ফোল্ডারে প্ল্যাটফর্ম-সরঞ্জামগুলিতে নেভিগেট করুন
  3. টাইপ adb
  4. এখন মোহিত কানদার লিখিত পদক্ষেপগুলি অনুসরণ করুন (নিশ্চিত করুন যে আপনি .apk ফাইলের পুরো পথটি উল্লেখ করেছেন উদাহরণস্বরূপ। d: \ android-apps \ test.apk)

1
আপনার এটিকে @ মোহিত কানদার উত্তরে যুক্ত করতে হবে - এবং উত্তর হিসাবে এই পদক্ষেপগুলি লিখতে হবে না।
এসটিএফ

13

অ্যান্ড্রয়েড স্টুডিওতে যেমন APK ফাইল ইনস্টল করার আদেশ রয়েছে আপনি নীচে দেখতে পারেন।

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"

আপনি যদি এমন একটি অ্যাপ্লিকেশন ইনস্টল করেন যা আপনাকে এসএসএসের মাধ্যমে রুট হিসাবে সংযোগ করতে দেয় তবে এই আদেশটি কার্যকর হবে। :-)
TSJNachos117

11

এটা এত সহজ!

উদাহরণস্বরূপ আমার apk ফাইলের অবস্থান হ'ল: d: app myapp.apk

  1. চালান সেন্টিমিডি

  2. "প্ল্যাটফর্ম-সরঞ্জামসমূহ" ফোল্ডারে নেভিগেট করুন (এসডিকে ফোল্ডারে)

  3. আপনার এমুলেটর ডিভাইসটি শুরু করুন (আসুন এটির নাম 5556: মাই ডিভাইস) বলুন

  4. সেমিডিতে এই কোডটি টাইপ করুন:

    অ্যাডবি-এস এমুলেটর -5156 ইনস্টল ডি: \ 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:

বিল্ড-মেক প্রজেক্ট রান করুন

অ্যাপ্লিকেশন ফোল্ডারে সর্বশেষ উত্পন্ন এপিকে সন্ধান করুন।

উদাহরণ:

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

2

আপনি এডিবি কমান্ড লাইন সরঞ্জামগুলি বা গ্রেড কমান্ডগুলি ব্যবহার করে এটি করতে পারেন: এই গাইডটি দেখুন

কমান্ড লাইন অ্যাডবি সেটআপ করুন

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"

এটি ইনস্টল- apks.ps1 হিসাবে সংরক্ষণ করুন

তারপরে পাওয়ারশেল থেকে:

powershell -executionpolicy bypass -File .\install-apks.ps1
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.