Bagaimana cara saya mendapatkan file apk dari perangkat Android?

484

Bagaimana cara saya mendapatkan file apk dari perangkat android? Atau bagaimana cara mentransfer file apk dari perangkat ke sistem?

Penemu
sumber

Jawaban:

119

Gunakan adb . Dengan adb pull Anda dapat menyalin file dari perangkat Anda ke sistem Anda, ketika perangkat terpasang dengan USB.

Tentu saja Anda juga memerlukan izin yang tepat untuk mengakses direktori tempat file Anda berada. Jika tidak, Anda harus melakukan root pada perangkat terlebih dahulu.


Jika Anda menemukan bahwa banyak APK diberi nama "base.apk", Anda juga dapat menggunakan perintah satu baris ini untuk menarik semua APK dari telepon yang dapat Anda akses sambil mengganti nama "base.apk" apa pun dengan nama paket. Ini juga memperbaiki direktori tidak ditemukan masalah untuk jalur APK dengan karakter yang tampaknya acak setelah nama:

for i in $(adb shell pm list packages | awk -F':' '{print $2}'); do adb pull "$(adb shell pm path $i | awk -F':' '{print $2}')"; mv base.apk $i.apk 2&> /dev/null ;done

Jika Anda mendapatkan "adb: error: gagal ke objek jarak jauh stat" yang menunjukkan Anda tidak memiliki izin yang diperlukan. Saya menjalankan ini pada Moto Z2 yang tidak di-rooting dan dapat mengunduh SEMUA APK yang tidak saya hapus (lihat di bawah) kecuali youtube.

adb shell pm uninstall --user 0 com.android.cellbroadcastreceiver   <--- kills presidential alert app!

(pandangan pengguna menjalankan adb daftar pengguna shell pm) Ini adalah cara untuk menghapus / uninstall (bukan dari ponsel karena dilengkapi kembali dengan reset pabrik) hampir APAPUN aplikasi TANPA aplikasi akar sistem TERMASUK (petunjuk mengganggu pembaruan aplikasi yang update ponsel Anda berbaris atau tidak dapat ditemukan dengan mencari "ccc")

Maurits Rijk
sumber
1
Terima kasih Maurits Rijk. Tolong bantu saya. Saya ingin menyalin file iTwips.apk dari perangkat ke sistem. Saya menggunakan perintah berikut. Apakah itu benar ? Saya mendapat kesalahan "Android2.2Froyo / sdcard / iTwips.apk" tidak keluar ... / Pengguna / bbb / Android / android-sdk-mac_86 / tools / adb pull Android2.2Froyo / sdcard / iTwips.apk / Users / bbb Terima kasih sudah lanjut .......
Finder
Di perangkat saya (Android 2.1) perintahnya adalah "adb pull /sdcard/test.jpg" untuk menyalin test.jpg dari kartu sd saya ke direktori saat ini. Silakan cari file iTwips.apk Anda terlebih dahulu menggunakan "adb shell". Ini memulai shell pada perangkat Anda dan Anda dapat menggunakan perintah Unix standar seperti ls dan cd untuk menelusuri direktori Anda.
Maurits Rijk
Hai, Sebenarnya iTwips.apk disimpan di memori internal pada perangkat. bagaimana saya bisa menggunakan shell untuk yang ini? Saya menggunakan perintah berikut adp -d <devicenumber> shell .. Tetapi tidak berhasil .. tolong bantu saya .. Terima kasih sebelumnya.
Finder
Hai, terima kasih banyak. Saya bisa mendapatkan gambar dari sdcard sekarang. tapi saya ingin menarik file apk dari perangkat (folder applicationApplication). Apk iTwips disimpan di folder Aplikasi. Tolong bantu saya.
Finder
16
@Finder @Maurits Rijk Sebenarnya, Anda tidak perlu me-rooting perangkat hanya untuk menarik apk. Selama Anda tahu jalur lengkap apk itu. Jika apk terinstal, cari path lengkap dengan terlebih dahulu melihat nama paketnya adb shell pm list packages, dan path lengkapnya adb shell pm path your.package.namedari pc Anda, Anda dapat dengan mudahadb pull /full/path/to/your.apk
Isa A
1550

Tidak ada saran ini yang bekerja untuk saya, karena Android menambahkan nomor urut ke nama paket untuk menghasilkan nama file APK akhir. Pada versi Android yang lebih baru (Oreo dan Pie), string acak yang tidak dapat diprediksi ditambahkan. Urutan perintah berikut adalah yang bekerja untuk saya di perangkat yang tidak di-rooting :

1) Tentukan nama paket aplikasi, misalnya "com.example.someapp". Lewati langkah ini jika Anda sudah tahu nama paketnya.

adb shell pm list packages

Lihat daftar nama paket dan coba temukan kecocokan antara aplikasi yang dimaksud dan nama paket. Ini biasanya mudah, tetapi perhatikan bahwa nama paket bisa sama sekali tidak terkait dengan nama aplikasi. Jika Anda tidak dapat mengenali aplikasi dari daftar nama paket, coba temukan aplikasi di Google Play menggunakan browser. URL untuk aplikasi di Google Play berisi nama paket.

2) Dapatkan nama path lengkap file APK untuk paket yang diinginkan.

adb shell pm path com.example.someapp

Outputnya akan terlihat seperti
package: /data/app/com.example.someapp-2.apk
atau
paket: /data/app/com.example.someapp-nfFSVxn_CTafgra3Fr_rXQ == / base.apk

3) Menggunakan nama path lengkap dari Langkah 2, tarik file APK dari perangkat Android ke kotak pengembangan.

adb pull /data/app/com.example.someapp-2.apk path/to/desired/destination
Yojimbo
sumber
65
Ini adalah jawaban terbaik, tidak perlu rrot perangkat !! terima kasih banyak
Muhannad A.Alhariri
14
Ini berfungsi pada semua perangkat Android saya, dan seharusnya menjadi jawaban yang diterima.
b.mcewan
8
pm list packagesmendukung -fbendera, yang mencantumkan lokasi .apk untuk Anda, seperti package:/data/app/com.google.android.apps.maps-1.apk=com.google.android.apps.maps. Bantuan pm bawaan tidak berguna, tetapi pm juga dapat memfilter jenis paket juga, lihat developer.android.com/studio/command-line/adb.html#pm untuk info lebih lanjut. EDIT: cukup perhatikan bahwa jawaban di bawah ini mengatakan ini, tetapi jawaban itu hampir tidak tervotifikasi seperti ini.
Hitechcomputergeek
9
Tidak bekerja untuk saya. Saya mendapatkan error berikut: adb: error: remote object '/data/app/path.of.the.app-2/base.apk' does not exist. Jika saya menelusuri folder ini dengan browser file, folder tersebut kosong.
Bevor
8
Saya memiliki masalah yang sama dengan @Bevor, ketika menarik saya mendapat kesalahan bahwa apk "tidak ada". Aku tetap dengan menggunakan adb shelldan kemudian cp PathToApk /sdcard/dan kemudian menyalin dari sdcard.
Colin
124

Tidak diperlukan root:

Kode ini akan mendapatkan jalur paket pihak ke-3 dengan nama sehingga Anda dapat dengan mudah mengidentifikasi APK Anda

adb shell pm list packages -f -3

hasilnya akan

paket: /data/app/XX.XX.XX.apk=YY.YY.YY

sekarang tarik paket itu menggunakan kode di bawah ini:

adb pull /data/app/XX.XX.XX.apk

jika Anda menjalankan cmd di atas C:>\, maka Anda akan menemukan paket itu di sana.

Faris Al-Abed
sumber
1
Ini jawaban yang luar biasa! Terima kasih banyak :)
Tarik0
1
Untuk beberapa alasan saya tidak dapat menemukan APK di direktori / data / app / saya . Selalu ada subdirektori di sana.
IgorGanapolsky
untuk aplikasi sistem, gunakan -f -sbukannya-f -3
palindrom
57

Saya telah melihat bahwa banyak solusi untuk masalah ini baik Anda harus me-root ponsel Anda atau Anda harus menginstal aplikasi. Kemudian setelah banyak googling saya mendapatkan solusi ini untuk ponsel yang tidak di-root / di-root.

Untuk daftar aplikasi yang Anda dapatkan sejauh ini.

adb shell pm list packages

Maka Anda dapat memilih aplikasi, misalnya twitter

adb backup -apk com.twitter.android

Yang penting di sini adalah tidak menyiapkan kata sandi untuk mengenkripsi cadangan Anda

Ini akan membuat file bernama backup.ap, tetapi Anda masih tidak bisa membukanya. Untuk ini, Anda harus mengekstraknya lagi tetapi menggunakan perintah dd.

dd if=backup.ab bs=24 skip=1 | openssl zlib -d > backup.tar

Setelah ini yang harus Anda lakukan adalah mengekstrak konten tar dan selesai.

Semoga berhasil untuk kalian

Paulo Miguel Almeida
sumber
7
Dari blog.shvetsov.com/2013/02/... , jika openssl Anda tidak memiliki zlib, ini mungkin berfungsi: dd if = backup.ab bs = 1 lompat = 24 | python -c "import zlib, sys; sys.stdout.write (zlib.decompress (sys.stdin.read ()))" | tar -xvf -
kodi
1
Inilah yang berhasil bagi saya, bukan prosedur dalam jawaban yang diterima. Dan itu sangat membantu saya hari ini ketika saya membutuhkan APK dari salah satu aplikasi lama saya tetapi tidak tersedia bagi saya selain dari telepon saya.
zeeshan
1
Berikut adalah informasi lebih lanjut jika openssl Anda tidak memiliki dukungan zlib: stackoverflow.com/questions/29830981/…
Nico Wiedemann
19

Langkah-langkah untuk Mengunduh APK dari Perangkat ke Desktop

A) Pastikan Anda menjalankan (emulator / Perangkat nyata). Untuk memeriksa gunakan perintah ini

adb devices

B) Pilih semua daftar paket yang tersedia yang terpasang di perangkat Anda. Anda dapat menggunakan perintah grep untuk memilih paket spesifik yang ingin Anda unduh.

adb shell pm list packages
adb shell pm list packages -f -3

Output (Daftar paket yang tersedia)

package:/data/app/com.example.mytestapplication-sOzKi5USzfbYLPNDmaaK6g==/base.apk=com.example.mytestapplication
package:/data/app/com.example.myapplication-nd1I4FGnTZnQ9PyRbPDHhw==/base.apk=com.example.myapplication

C) Salin paket (yang ingin Anda unduh) dari tautan di atas. Dari formulir kami, saya memilih paket (com.example.myapplication) ini

Syntax : adb shell pm path [your_package_name]
Command: adb shell pm path com.example.myapplication

Keluaran

package:/data/app/com.example.myapplication-nd1I4FGnTZnQ9PyRbPDHhw==/base.apk

D) Akhirnya, Untuk mengunduh APK dari (emulator / perangkat nyata) Anda

Syntax : adb pull /data/app/[your_package_name]-1/base.apk  [your_destination_path]
Command: adb pull /data/app/com.example.myapplication-3j4CVk0Tb2gysElgjz5O6A==/base.apk /Users/$(whoami)/Documents/your_apk.apk

Contoh: Mencoba untuk menarik file CertInstaller.apk ini di mesin lokal Anda (Mac)

adb pull /system/app/CertInstaller/CertInstaller.apk /Users/$(whoami)/Documents/APK/download_apk/

E) Konfirmasikan di direktori lokal Anda

ls -la /Users/$(whoami)/Documents/
Farid Haq
sumber
Tujuannya adalah untuk mengekstrak satu apk, namun pada langkah 4 Anda menarik dua file tambahan tanpa penjelasan atau referensi sebelumnya.
Carles Alcolea
Saya memodifikasi posting ini dengan mengklarifikasi setiap langkah. Semoga modifikasi ini akan membantu dan mudah dimengerti.
Farid Haq
18
C:\Users\xyz>adb shell pm list packages -f | findstr whatsapp
package:/data/app/com.whatsapp-1/base.apk=com.whatsapp

C:\Users\xyz>adb pull /data/app/com.whatsapp-1/base.apk Desktop
/data/app/com.whatsapp-1/base.apk: 1 f.... 13.8 MB/s (32803925 bytes in 
2.269s)
RVR
sumber
Ini adalah cara yang paling mudah menurut saya. Terima kasih!
8bitcartridge
1
orang-orang menggunakan linux atau mac bukannya findstr menggunakan grep
Jeeva
10

Satu liner yang berfungsi untuk semua versi Android:

adb shell 'cat `pm path com.example.name | cut -d':' -f2`' > app.apk
Vitaly Dyatlov
sumber
1
@AlexP. apa yang ingin Anda sampaikan melalui tautan di atas?
Vitaly Dyatlov
7

Melengkapi jawaban @Yojimbo, inilah yang saya lakukan (Linux / Mac saja, tidak akan bekerja di luar kotak pada Windows ... mungkin di bash shell git):

for i in $(adb shell pm list packages -f -3 | cut -d= -f 1 | cut -d ":" -f 2); do adb pull $i; done

Ini jelek, tapi berhasil :)

EDIT: Ini tidak lagi berfungsi di AndroidM: semua file diberi nama "base.apk" di bawah dir lain. Harus "sepele" untuk memperbaikinya.

elcuco
sumber
7

Pada sistem unix, Anda dapat mencoba fungsi ini:

function android_pull_apk() {
    if [ -z "$1" ]; then
        echo "You must pass a package to this function!"
        echo "Ex.: android_pull_apk \"com.android.contacts\""
        return 1
    fi

    if [ -z "$(adb shell pm list packages | grep $1)" ]; then
        echo "You are typed a invalid package!"
        return 1
    fi

    apk_path="`adb shell pm path $1 | sed -e 's/package://g' | tr '\n' ' ' | tr -d '[:space:]'`"
    apk_name="`adb shell basename ${apk_path} | tr '\n' ' ' | tr -d '[:space:]'`"

    destination="$HOME/Documents/Android/APKs"
    mkdir -p "$destination"

    adb pull ${apk_path} ${destination}
    echo -e "\nAPK saved in \"$destination/$apk_name\""
}
  • Contoh :android_pull_apk com.android.contacts
  • Catatan : Untuk mengidentifikasi paket:adb shell pm list packages
Pedro Rodrigues
sumber
6

Seperti yang dikatakan di atas, Anda bisa mendapatkan apk dengan menggunakan perintah pull di adb.

Karena, Anda berbicara tentang aplikasi yang diinstal, silakan dan lihat di direktori / data / aplikasi sistem file Android Anda. Anda akan menemukan APK di sana.

Kemudian gunakan perintah adb - adb pull / data / data / appname.apk

aditya.gupta
sumber
6

Coba perintah bash one liner ini untuk mencadangkan semua aplikasi Anda:

for package in $(adb shell pm list packages -3 | tr -d '\r' | sed 's/package://g'); do apk=$(adb shell pm path $package | tr -d '\r' | sed 's/package://g'); echo "Pulling $apk"; adb pull -p $apk "$package".apk; done

Perintah ini berasal dari skrip Firelord . Saya baru saja mengganti nama semua apks ke nama paket mereka untuk menyelesaikan masalah dengan skrip elcuco's , yaitu base.apkfile yang sama ditimpa pada Android 6.0 "Marshmallow" dan di atasnya.

Perhatikan bahwa perintah ini hanya mencadangkan aplikasi pihak ke-3, karena saya tidak melihat titik untuk mencadangkan aplikasi bawaan. Tetapi jika Anda juga ingin mencadangkan aplikasi sistem, abaikan saja -3opsi tersebut.

HEXcube
sumber
5

Jika Anda tahu (atau jika Anda dapat "menebak") path ke .apk( sepertinya formatnya /data/app/com.example.someapp-{1,2,..}.apk, maka Anda dapat menyalinnya dari/data/app juga. Ini bekerja bahkan pada ponsel Android saya yang non-rooted, stock stock.

Cukup gunakan aplikasi Terminal Emulator (seperti ini ) dan jalankan:

# step 1: confirm path
ls /data/app/com.example.someapp-1.apk
# if it doesn't show up, try -2, -3. Note that globbing (using *) doesn't work here.
# step 2: copy (make sure you adapt the path to match what you discovered above)
cp /data/app/com.example.someapp-1.apk /mnt/sdcard/

Kemudian Anda dapat memindahkannya dari kartu-SD ke mana pun Anda inginkan (atau melampirkannya ke email dll). Bit terakhir mungkin secara teknis opsional, tetapi itu membuat hidup Anda jauh lebih mudah ketika mencoba melakukan sesuatu dengan .apkfile tersebut.

m01
sumber
5

Prosedur yang diuraikan di sini tidak berfungsi untuk Android 7 (Nougat) [dan mungkin Android 6, tapi saya tidak dapat memverifikasi]. Anda tidak dapat menarik file .apk langsung di bawah Nougat (kecuali dalam mode root, tetapi itu membutuhkan ponsel yang di-rooting). Tetapi, Anda dapat menyalin .apk ke jalur alternatif (mis. / Sdcard / Unduh) di ponsel menggunakan adb shell, lalu Anda dapat melakukan tarikan adb dari jalur alternatif.

SamG
sumber
3
Jawaban yang diterima (termasuk adb shellperintah dari komentar @Isa A) bekerja dengan baik untuk saya di Android 7.1.1, tidak di-root.
Jonathan Cottrill
4
  1. Buka aplikasi yang ingin Anda ekstrak APK di ponsel Anda.
  2. Dapatkan aplikasi yang saat ini dibuka dengan:

    adb shell dumpsys activity activities | grep mFocusedActivity
  3. Dapatkan path ke nama paket

    adb shell pm path <packagename.apk>

4. Salin jalur yang Anda dapatkan ke direktori sdcard

    adb shell cp /data/app/<packagename.apk> /sdcard

5.Tarik apk

    adb pull /sdcard/base.apk

Edit

Jika langkah no 2 tidak berhasil gunakan ini:

adb shell dumpsys window windows | grep mCurrentFocus
Oush
sumber
3

Begini cara melakukannya:

Unduh dan instal APK Extractor di perangkat Anda. Ini gratis, dan kompatibel di hampir semua perangkat Android. Poin plus lainnya adalah ia bahkan tidak memerlukan root atau apa pun untuk bekerja. Setelah Anda menginstalnya, luncurkan. Di sana Anda akan melihat daftar aplikasi yang ada di perangkat Anda, yang termasuk aplikasi yang Anda instal nanti, bersama dengan aplikasi sistem. Tekan lama aplikasi yang ingin Anda ekstrak (Anda dapat memilih beberapa atau semua aplikasi sekaligus), dan klik pada opsi ekstrak yang Anda lihat di atas. Anda juga akan memiliki opsi untuk dibagikan melalui Bluetooth atau perpesanan. Setelah selesai, Anda akan melihat aplikasi yang diekstrak sebagai AppName_AppPackage_AppVersionName_AppVersionCode.apk, yang akan disimpan di jalur / sdcard / ExtractedApks / secara default.

Untuk keterangan terperinci tentang cara mengekstrak file apk di android , kunjungi: http://appslova.com/how-to-extract-apk-files-in-android/

Pramod Mahato
sumber
3

Semua jawaban ini memerlukan beberapa langkah untuk setiap file apk yang diambil dari perangkat. 1. tentukan nama paket, 2. cari file, dan 3. unduh. Saya membuat apk_grabberskrip python sederhana untuk melakukan ini untuk aplikasi apa pun yang cocok dengan regex yang diberikan, dan kemudian mendekompilasi apks tersebut ke file jar.

Jeff Brateman
sumber
1

Saya belum menggunakan kode untuk menarik file .apk dari ponsel tetapi saya telah menggunakan perangkat lunak untuk mengekstrak file .apk dari ponsel dan perangkat lunak yang telah saya gunakan di bawah ini dengan tautan google play:

  1. Manajer File Explorer File ES
  2. ASTRO Cloud & File Manager 3. Kabel Data Perangkat Lunak

Semoga ini bisa membantu Anda.

surhidamatya
sumber
2
Saya menggunakan ES File Explorer. Saya tidak di-root. Saya baru saja pergi ke Tools -> App Manager dan menekan lama aplikasi yang saya inginkan untuk APK. Ini memilih aplikasi (dan memungkinkan saya untuk memilih yang lain). Saya pikir menekan tombol Bagikan dan dapat mengirim APK ke saya sendiri (menggunakan Push Bullet, tetapi apa yang pernah bekerja untuk Anda).
schultzter
Jika Anda tidak membusuk maka Anda dapat mencoba Pencadangan aplikasi dan mengembalikan play.google.com/store/apps/details?id=mobi.infolife.appbackup
surhidamatya
1

Tidak ada Root dan tidak ada alat ADB metode yang diperlukan. Instal aplikasi MyAppSharer dari play store.

moberme
sumber
1

Saya mendapat does not exist error

Inilah cara saya membuatnya bekerja

adb shell pm list packages -f | findstr zalo
package:/data/app/com.zing.zalo-1/base.apk=com.zing.zalo

adb shell
mido:/ $ cp /data/app/com.zing.zalo-1/base.apk /sdcard/zalo.apk
mido:/ $ exit


adb pull /sdcard/zalo.apk Desktop

/sdcard/zalo.apk: 1 file pulled. 7.7 MB/s (41895394 bytes in 5.200s)
vanduc1102
sumber
0

Namun skrip bash lainnya (yaitu akan berfungsi untuk sebagian besar sistem berbasis unix). Berdasarkan jawaban Pedro Rodrigues , tetapi sedikit lebih mudah digunakan.

Peningkatan atas versi Pedro:

  1. Pendekatan asli tidak bekerja untuk saya di Android 7: adb pullterus mengeluh tentang no such file or directorysementaraadb shell bisa mengakses file. Karenanya saya menggunakan pendekatan yang berbeda, dengan file sementara.
  2. Ketika diluncurkan tanpa argumen, skrip saya hanya akan mencantumkan semua paket yang tersedia. Ketika nama paket parsial disediakan, ia akan mencoba menebak nama paket lengkap. Akan mengeluh jika ada beberapa kemungkinan ekspansi.
  3. Saya tidak melakukan hardcode jalur tujuan; sebaliknya APK disimpan ke direktori kerja saat ini.

Simpan ini ke file yang dapat dieksekusi:

#!/bin/bash
# Obtain APK file for given package from the device connected over ADB

if [ -z "$1" ]; then
    echo "Available packages: "
    adb shell pm list packages | sed 's/^package://'
    echo "You must pass a package to this function!"
    echo "Ex.: android_pull_apk \"com.android.contacts\""
    exit 1
fi

fullname=$(adb shell pm list packages | sed 's/^package://' | grep $1)
if [ -z "$fullname" ]; then
    echo "Could not find package matching $1"
    exit 1
fi
if [ $(echo "$fullname" | wc -l) -ne 1 ]; then
    echo "Too many packages matched:"
    echo "$fullname"
    exit 1
fi
echo "Will fetch APK for package $fullname"

apk_path="`adb shell pm path $fullname | sed -e 's/package://g' | tr '\n' ' ' | tr -d '[:space:]'`"
apk_name="`basename ${apk_path} | tr '\n' ' ' | tr -d '[:space:]'`"

destination="${fullname}.apk"

tmp=$(mktemp --dry-run --tmpdir=/sdcard --suffix=.apk)
adb shell cp "${apk_path}" "$tmp"
adb pull "$tmp" "$destination"
adb shell rm "$tmp"

[ $? -eq 0 ] && echo -e "\nAPK saved in \"$destination\""
MarSoft
sumber
0

Yang paling sederhana adalah: Instal aplikasi "ShareIt" di ponsel. Sekarang instal aplikasi shareIt di PC atau telepon lain. Sekarang dari ponsel, tempat aplikasi diinstal, buka ShareIt dan kirim. Di ponsel atau PC lain, buka ShareIt dan terima.

Sirsendu
sumber
0

Saya sangat menyukai semua jawaban ini. Sebagian besar skrip untuk mengekspor dan mengganti nama semuanya ditulis dalam Bash. Saya membuat skrip Perl kecil yang melakukan hal yang sama (yang seharusnya berfungsi baik di Perl untuk windows dan linux, hanya diuji pada Ubuntu).

download-apk.pl

#!/usr/bin/perl -w
# Automatically export all available installed APK's using adb
use strict;
print "Connect your device...\n";
system("adb", "wait-for-device");
open(my $OUT, '-|', 'adb', 'shell', 'pm', 'list', 'package', '-f');
my @list = split(/\s*/, `adb shell pm list packages -f`);
my $count = 0;
while(my $line = <$OUT>) {
        $line =~ s/^\s*|\s*$//g;
        my ($type, $path, $package) = $line =~ /^(.*?):(.*)=(.*)$/ ? ($1,$2,$3) : die('invalid line: '.$line);
        my $category = $path =~ /^\/(.*?)\// ? $1 : 'unknown';
        my $baseFile = $path =~ /\/([^\/]*)$/ ? $1 : die('Unknown basefile in path: '.$path);
        my $targetFile = "$category-$package.apk";
        print "$type $category $path $package $baseFile >> $targetFile\n";
        system("adb", "pull", $path);
        rename $baseFile, $targetFile;
}
  1. Pastikan adb (.exe) ada di jalur Anda atau direktori yang sama
  2. Hubungkan ponsel Anda
  3. Jalankan unduh-apk.pl

Outputnya mirip dengan:

# ./download-apk.pl
Connect your device...
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
package system /system/app/YouTube/YouTube.apk com.google.android.youtube YouTube.apk >> system-com.google.android.youtube.apk
5054 KB/s (11149871 bytes in 2.154s)
package data /data/app/com.ghostsq.commander-1/base.apk com.ghostsq.commander base.apk >> data-com.ghostsq.commander.apk
3834 KB/s (1091570 bytes in 0.278s)
package data /data/app/de.blinkt.openvpn-2/base.apk de.blinkt.openvpn base.apk >> data-de.blinkt.openvpn.apk
5608 KB/s (16739178 bytes in 2.914s)
etc.
Gerben Versluis
sumber
-1

Ini akan membantu seseorang yang mencari jawaban non teknis

Ini hack sederhana

Unduh aplikasi App Share/Send Prodari google play store. Pilih aplikasi yang ingin Anda kirim dan metode kirim aplikasi.

Saya biasanya menggunakan Bluetooth untuk mengirim aplikasi ke komputer saya atau telepon lain.

Saahithyan Vigneswaran
sumber
Ini tidak mudah digunakan
APEXBoi