目次
文書の過去の版を表示しています。
adb - Android Debug Bridge
インストール
Fedora
$ dnf install android-tools
メタデータの期限切れの最終確認: 2:41:47 時間前の 2022年08月19日 09時08分59秒 に実施しました。 依存関係が解決しました。 ==================================================================================================== パッケージ アーキテクチャー バージョン リポジトリー サイズ ==================================================================================================== インストール: android-tools x86_64 1:31.0.2-3.fc36 fedora 1.5 M トランザクションの概要 ==================================================================================================== インストール 1 パッケージ ダウンロードサイズの合計: 1.5 M インストール後のサイズ: 4.2 M これでよろしいですか? [y/N]: y パッケージのダウンロード: android-tools-31.0.2-3.fc36.x86_64.rpm 493 kB/s | 1.5 MB 00:03 ---------------------------------------------------------------------------------------------------- 合計 289 kB/s | 1.5 MB 00:05 トランザクションの確認を実行中 トランザクションの確認に成功しました。 トランザクションのテストを実行中 トランザクションのテストに成功しました。 トランザクションを実行中 準備 : 1/1 インストール中 : android-tools-1:31.0.2-3.fc36.x86_64 1/1 scriptletの実行中: android-tools-1:31.0.2-3.fc36.x86_64 1/1 検証 : android-tools-1:31.0.2-3.fc36.x86_64 1/1 インストール済み: android-tools-1:31.0.2-3.fc36.x86_64 完了しました!
動作確認
$ adb version
Android Debug Bridge version 1.0.41 Version 31.0.2-android-tools Installed as /usr/bin/adb
Windows
$ scoop install adb
Installing 'adb' (33.0.2) [64bit] from main bucket platform-tools_r33.0.2-windows.zip (6.0 MB) [=============================================] 100% Checking hash of platform-tools_r33.0.2-windows.zip ... ok. Extracting platform-tools_r33.0.2-windows.zip ... done. Linking ~\scoop\apps\adb\current => ~\scoop\apps\adb\33.0.2 Creating shim for 'adb'. Creating shim for 'dmtracedump'. Creating shim for 'etc1tool'. Creating shim for 'fastboot'. Creating shim for 'hprof-conv'. 'adb' (33.0.2) was installed successfully!
使用方法
ヘルプ [help]
$ adb help
Android Debug Bridge version 1.0.41
Version 31.0.2-android-tools
Installed as /usr/bin/adb
global options:
-a listen on all network interfaces, not just localhost
-d use USB device (error if multiple devices connected)
-e use TCP/IP device (error if multiple TCP/IP devices available)
-s SERIAL use device with given serial (overrides $ANDROID_SERIAL)
-t ID use device with given transport id
-H name of adb server host [default=localhost]
-P port of adb server [default=5037]
-L SOCKET listen on given socket for adb server [default=tcp:localhost:5037]
general commands:
devices [-l] list connected devices (-l for long output)
help show this help message
version show version num
networking:
connect HOST[:PORT] connect to a device via TCP/IP [default port=5555]
disconnect [HOST[:PORT]]
disconnect from given TCP/IP device [default port=5555], or all
pair HOST[:PORT] [PAIRING CODE]
pair with a device for secure TCP/IP communication
forward --list list all forward socket connections
forward [--no-rebind] LOCAL REMOTE
forward socket connection using:
tcp: ( may be "tcp:0" to pick any open port)
localabstract:
localreserved:
localfilesystem:
dev:
jdwp: (remote only)
vsock:: (remote only)
acceptfd: (listen only)
forward --remove LOCAL remove specific forward socket connection
forward --remove-all remove all forward socket connections
ppp TTY [PARAMETER...] run PPP over USB
reverse --list list all reverse socket connections from device
reverse [--no-rebind] REMOTE LOCAL
reverse socket connection using:
tcp: ( may be "tcp:0" to pick any open port)
localabstract:
localreserved:
localfilesystem:
reverse --remove REMOTE remove specific reverse socket connection
reverse --remove-all remove all reverse socket connections from device
mdns check check if mdns discovery is available
mdns services list all discovered services
file transfer:
push [--sync] [-z ALGORITHM] [-Z] LOCAL... REMOTE
copy local files/directories to device
--sync: only push files that are newer on the host than the device
-n: dry run: push files to device without storing to the filesystem
-z: enable compression with a specified algorithm (any, none, brotli)
-Z: disable compression
pull [-a] [-z ALGORITHM] [-Z] REMOTE... LOCAL
copy files/dirs from device
-a: preserve file timestamp and mode
-z: enable compression with a specified algorithm (any, none, brotli)
-Z: disable compression
sync [-l] [-z ALGORITHM] [-Z] [all|data|odm|oem|product|system|system_ext|vendor]
sync a local build from $ANDROID_PRODUCT_OUT to the device (default all)
-n: dry run: push files to device without storing to the filesystem
-l: list files that would be copied, but don't copy them
-z: enable compression with a specified algorithm (any, none, brotli)
-Z: disable compression
shell:
shell [-e ESCAPE] [-n] [-Tt] [-x] [COMMAND...]
run remote shell command (interactive shell if no command given)
-e: choose escape character, or "none"; default '~'
-n: don't read from stdin
-T: disable pty allocation
-t: allocate a pty if on a tty (-tt: force pty allocation)
-x: disable remote exit codes and stdout/stderr separation
emu COMMAND run emulator console command
app installation (see also `adb shell cmd package help`):
install [-lrtsdg] [--instant] PACKAGE
push a single package to the device and install it
install-multiple [-lrtsdpg] [--instant] PACKAGE...
push multiple APKs to the device for a single package and install them
install-multi-package [-lrtsdpg] [--instant] PACKAGE...
push one or more packages to the device and install them atomically
-r: replace existing application
-t: allow test packages
-d: allow version code downgrade (debuggable packages only)
-p: partial application install (install-multiple only)
-g: grant all runtime permissions
--abi ABI: override platform's default ABI
--instant: cause the app to be installed as an ephemeral install app
--no-streaming: always push APK to device and invoke Package Manager as separate steps
--streaming: force streaming APK directly into Package Manager
--fastdeploy: use fast deploy
--no-fastdeploy: prevent use of fast deploy
--force-agent: force update of deployment agent when using fast deploy
--date-check-agent: update deployment agent when local version is newer and using fast deploy
--version-check-agent: update deployment agent when local version has different version code and using fast deploy
--local-agent: locate agent files from local source build (instead of SDK location)
(See also `adb shell pm help` for more options.)
uninstall [-k] PACKAGE
remove this app package from the device
'-k': keep the data and cache directories
debugging:
bugreport [PATH]
write bugreport to given PATH [default=bugreport.zip];
if PATH is a directory, the bug report is saved in that directory.
devices that don't support zipped bug reports output to stdout.
jdwp list pids of processes hosting a JDWP transport
logcat show device log (logcat --help for more)
security:
disable-verity disable dm-verity checking on userdebug builds
enable-verity re-enable dm-verity checking on userdebug builds
keygen FILE
generate adb public/private key; private key stored in FILE,
scripting:
wait-for[-TRANSPORT]-STATE...
wait for device to be in a given state
STATE: device, recovery, rescue, sideload, bootloader, or disconnect
TRANSPORT: usb, local, or any [default=any]
get-state print offline | bootloader | device
get-serialno print
get-devpath print
remount [-R]
remount partitions read-write. if a reboot is required, -R will
will automatically reboot the device.
reboot [bootloader|recovery|sideload|sideload-auto-reboot]
reboot the device; defaults to booting system image but
supports bootloader and recovery too. sideload reboots
into recovery and automatically starts sideload mode,
sideload-auto-reboot is the same but reboots after sideloading.
sideload OTAPACKAGE sideload the given full OTA package
root restart adbd with root permissions
unroot restart adbd without root permissions
usb restart adbd listening on USB
tcpip PORT restart adbd listening on TCP on PORT
internal debugging:
start-server ensure that there is a server running
kill-server kill the server if it is running
reconnect kick connection from host side to force reconnect
reconnect device kick connection from device side to force reconnect
reconnect offline reset offline/unauthorized devices to force reconnect
environment variables:
$ADB_TRACE
comma-separated list of debug info to log:
all,adb,sockets,packets,rwx,usb,sync,sysdeps,transport,jdwp
$ADB_VENDOR_KEYS colon-separated list of keys (files or directories)
$ANDROID_SERIAL serial number to connect to (see -s)
$ANDROID_LOG_TAGS tags to be used by logcat (see logcat --help)
$ADB_LOCAL_TRANSPORT_MAX_PORT max emulator scan port (default 5585, 16 emus)
$ADB_MDNS_AUTO_CONNECT comma-separated list of mdns services to allow auto-connect (default adb-tls-connect)
バックアップ [backup]
$ adb backup -all -f asus_z008d.ab
WARNING: adb backup is deprecated and may be removed in a future release Now unlock your device and confirm the backup operation...
リモート シェル コマンド実行 [shell]
$ adb shell
shell@Z008_1:/ $
ip
shell@Z008_1:/ $ ip addr show
1: lo:mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: sit0: mtu 1480 qdisc noop state DOWN link/sit 0.0.0.0 brd 0.0.0.0 3: wlan0: mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 08:62:66:64:60:45 brd ff:ff:ff:ff:ff:ff inet 172.16.78.171/24 brd 172.16.78.255 scope global wlan0 valid_lft forever preferred_lft forever inet6 fd36:83d1:f6fc:0:556f:c7c3:d802:fa3e/64 scope global temporary dynamic valid_lft 600019sec preferred_lft 81019sec inet6 fd36:83d1:f6fc:0:a62:66ff:fe64:6045/64 scope global dynamic valid_lft forever preferred_lft forever inet6 2405:6583:e5e0:f10:556f:c7c3:d802:fa3e/64 scope global temporary dynamic valid_lft 11258sec preferred_lft 11258sec inet6 2405:6583:e5e0:f10:a62:66ff:fe64:6045/64 scope global dynamic valid_lft 11258sec preferred_lft 11258sec inet6 fe80::a62:66ff:fe64:6045/64 scope link valid_lft forever preferred_lft forever 4: usb0: mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00 brd ff 5: usb1: mtu 1500 qdisc noop state DOWN qlen 1000 link/ether 00 brd ff 6: usb2: mtu 1500 qdisc noop state DOWN qlen 1000 link/ether 00 brd ff 7: usb3: mtu 1500 qdisc noop state DOWN qlen 1000 link/ether 00 brd ff 8: usb4: mtu 1500 qdisc noop state DOWN qlen 1000 link/ether 00 brd ff
pm
shell@Z008_1:/ $ pm
usage: pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [--user USER_ID] [FILTER]
pm list permission-groups
pm list permissions [-g] [-f] [-d] [-u] [GROUP]
pm list instrumentation [-f] [TARGET-PACKAGE]
pm list features
pm list libraries
pm list users
pm path PACKAGE
pm dump PACKAGE
pm install [-lrtsfd] [-i PACKAGE] [--user USER_ID] [PATH]
pm install-create [-lrtsfdp] [-i PACKAGE] [-S BYTES]
[--install-location 0/1/2]
[--force-uuid internal|UUID]
pm install-write [-S BYTES] SESSION_ID SPLIT_NAME [PATH]
pm install-commit SESSION_ID
pm install-abandon SESSION_ID
pm uninstall [-k] [--user USER_ID] PACKAGE
pm set-installer PACKAGE INSTALLER
pm move-package PACKAGE [internal|UUID]
pm move-primary-storage [internal|UUID]
pm clear [--user USER_ID] PACKAGE
pm enable [--user USER_ID] PACKAGE_OR_COMPONENT
pm disable [--user USER_ID] PACKAGE_OR_COMPONENT
pm disable-user [--user USER_ID] PACKAGE_OR_COMPONENT
pm disable-until-used [--user USER_ID] PACKAGE_OR_COMPONENT
pm hide [--user USER_ID] PACKAGE_OR_COMPONENT
pm unhide [--user USER_ID] PACKAGE_OR_COMPONENT
pm grant [--user USER_ID] PACKAGE PERMISSION
pm revoke [--user USER_ID] PACKAGE PERMISSION
pm reset-permissions
pm set-app-link [--user USER_ID] PACKAGE {always|ask|never|undefined}
pm get-app-link [--user USER_ID] PACKAGE
pm set-install-location [0/auto] [1/internal] [2/external]
pm get-install-location
pm set-permission-enforced PERMISSION [true|false]
pm trim-caches DESIRED_FREE_SPACE [internal|UUID]
pm create-user [--profileOf USER_ID] [--managed] USER_NAME
pm remove-user USER_ID
pm get-max-users
pm list packages: prints all packages, optionally only
those whose package name contains the text in FILTER. Options:
-f: see their associated file.
-d: filter to only show disbled packages.
-e: filter to only show enabled packages.
-s: filter to only show system packages.
-3: filter to only show third party packages.
-i: see the installer for the packages.
-u: also include uninstalled packages.
pm list permission-groups: prints all known permission groups.
pm list permissions: prints all known permissions, optionally only
those in GROUP. Options:
-g: organize by group.
-f: print all information.
-s: short summary.
-d: only list dangerous permissions.
-u: list only the permissions users will see.
pm list instrumentation: use to list all test packages; optionally
supply to list the test packages for a particular
application. Options:
-f: list the .apk file for the test package.
pm list features: prints all features of the system.
pm list users: prints all users on the system.
pm path: print the path to the .apk of the given PACKAGE.
pm dump: print system state associated with the given PACKAGE.
pm install: install a single legacy package
pm install-create: create an install session
-l: forward lock application
-r: replace existing application
-t: allow test packages
-i: specify the installer package name
-s: install application on sdcard
-f: install application on internal flash
-d: allow version code downgrade
-p: partial application install
-g: grant all runtime permissions
-S: size in bytes of entire session
pm install-write: write a package into existing session; path may
be '-' to read from stdin
-S: size in bytes of package, required for stdin
pm install-commit: perform install of fully staged session
pm install-abandon: abandon session
pm set-installer: set installer package name
pm uninstall: removes a package from the system. Options:
-k: keep the data and cache directories around after package removal.
pm clear: deletes all data associated with a package.
pm enable, disable, disable-user, disable-until-used: these commands
change the enabled state of a given package or component (written
as "package/class").
pm grant, revoke: these commands either grant or revoke permissions
to apps. The permissions must be declared as used in the app's
manifest, be runtime permissions (protection level dangerous),
and the app targeting SDK greater than Lollipop MR1.
pm reset-permissions: revert all runtime permissions to their default state.
pm get-install-location: returns the current install location.
0 [auto]: Let system decide the best location
1 [internal]: Install on internal device storage
2 [external]: Install on external media
pm set-install-location: changes the default install location.
NOTE: this is only intended for debugging; using this can cause
applications to break and other undersireable behavior.
0 [auto]: Let system decide the best location
1 [internal]: Install on internal device storage
2 [external]: Install on external media
pm trim-caches: trim cache files to reach the given free space.
pm create-user: create a new user with the given USER_NAME,
printing the new user identifier of the user.
pm remove-user: remove the user with the given USER_IDENTIFIER,
deleting all data associated with that user
df
shell@Z008_1:/ $ df
Filesystem Size Used Free Blksize /dev 981.5M 64.0K 981.4M 4096 /sys/fs/cgroup 981.5M 0.0K 981.5M 4096 /sys/fs/cgroup/memory: Permission denied /mnt 981.5M 4.0K 981.5M 4096 /system 2.2G 2.0G 148.3M 4096 /cache 248.0M 488.0K 247.5M 4096 /config 59.0M 2.0M 57.0M 4096 /data 11.3G 8.7G 2.6G 4096 /factory 27.5M 388.0K 27.1M 4096 /storage 981.5M 4.0K 981.5M 4096 /local_cfg/platform 2.2G 2.0G 148.3M 4096 /local_cfg/telephony_config 2.2G 2.0G 148.3M 4096 /local_cfg/audiocomms_config 2.2G 2.0G 148.3M 4096 /ADF 27.5M 44.0K 27.4M 4096 /mnt/runtime/default/emulated: Permission denied /storage/emulated 11.3G 8.7G 2.6G 4096 /mnt/runtime/read/emulated: Permission denied /mnt/runtime/write/emulated: Permission denied /mnt/media_rw/0000-0000: Permission denied /mnt/runtime/default/0000-0000: Permission denied /storage/0000-0000 59.6G 31.5G 28.1G 131072 /mnt/runtime/read/0000-0000: Permission denied /mnt/runtime/write/0000-0000: Permission denied
free
shell@Z008_1:/ $ free
total used free shared buffers Mem: 2058342400 2016772096 41570304 0 36704256 -/+ buffers/cache: 1980067840 78274560 Swap: 419426304 324648960 94777344
shell@Z008_1:/ $ free -m
total used free shared buffers Mem: 1962 1824 138 0 24 -/+ buffers/cache: 1800 162 Swap: 399 308 91
mount
shell@Z008_1:/ $ mount
rootfs / rootfs ro,seclabel 0 0 tmpfs /dev tmpfs rw,seclabel,nosuid,relatime,mode=755 0 0 devpts /dev/pts devpts rw,seclabel,relatime,mode=600 0 0 proc /proc proc rw,relatime 0 0 sysfs /sys sysfs rw,seclabel,relatime 0 0 selinuxfs /sys/fs/selinux selinuxfs rw,relatime 0 0 binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,relatime 0 0 none /sys/kernel/debug debugfs rw,seclabel,relatime,mode=755 0 0 none /acct cgroup rw,relatime,cpuacct 0 0 none /sys/fs/cgroup tmpfs rw,seclabel,relatime,mode=750,gid=1000 0 0 none /sys/fs/cgroup/memory cgroup rw,relatime,memory 0 0 tmpfs /mnt tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0 none /dev/memcg cgroup rw,relatime,memory 0 0 none /dev/cpuctl cgroup rw,relatime,cpu 0 0 none /dev/cpuset cgroup rw,relatime,cpuset,noprefix,release_agent=/sbin/cpuset_release_agent 0 0 pstore /sys/fs/pstore pstore rw,seclabel,relatime 0 0 sepfs /sys/fs/sepfs sepfs rw,relatime 0 0 /dev/block/by-name/system /system ext4 ro,seclabel,noatime,data=ordered 0 0 /dev/block/by-name/cache /cache ext4 rw,seclabel,nosuid,nodev,noatime,data=ordered 0 0 /dev/block/by-name/config /config ext4 rw,seclabel,nosuid,nodev,noatime,data=ordered 0 0 /dev/block/by-name/data /data ext4 rw,seclabel,nosuid,nodev,noatime,discard,noauto_da_alloc,data=ordered 0 0 /dev/block/by-name/factory /factory ext4 rw,seclabel,nosuid,nodev,noatime,data=ordered 0 0 adb /dev/usb-ffs/adb functionfs rw,relatime 0 0 tmpfs /storage tmpfs rw,seclabel,relatime,mode=755,gid=1000 0 0 /dev/block/by-name/system /local_cfg/platform ext4 ro,seclabel,noatime,data=ordered 0 0 /dev/block/by-name/system /local_cfg/telephony_config ext4 ro,seclabel,noatime,data=ordered 0 0 /dev/block/by-name/system /local_cfg/audiocomms_config ext4 ro,seclabel,noatime,data=ordered 0 0 /dev/block/by-name/ADF /ADF ext4 rw,seclabel,relatime,data=ordered 0 0 /dev/fuse /mnt/runtime/default/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0 /dev/fuse /storage/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0 /dev/fuse /mnt/runtime/read/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0 /dev/fuse /mnt/runtime/write/emulated fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0 /dev/block/vold/public:179,65 /mnt/media_rw/0000-0000 texfat rw,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,umask=0007,allow_utime=0020,codepage=437,iocharset=utf8,min_prealloc_size=64k,max_prealloc_size=61036k,readahead=4M,fail_safe,hidden=show,errors=continue 0 0 /dev/fuse /mnt/runtime/default/0000-0000 fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0 /dev/fuse /storage/0000-0000 fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0 /dev/fuse /mnt/runtime/read/0000-0000 fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0 /dev/fuse /mnt/runtime/write/0000-0000 fuse rw,nosuid,nodev,noexec,noatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
USB デバッグ経由での apk パッケージのインストール
$ adb install -r google-play-services-14-7-99-000300-223214910.apk