如何从Android设备获取APK文件?或者如何将APK文件从设备传输到系统?

推荐答案

使用adb.使用adb pull ,当设备连接到USB时,您可以将文件从设备复制到系统.

当然,您还需要有访问文件所在目录的权限.如果没有,则需要先根设备.


如果你发现许多apk都被命名为"base.apk",你也可以使用这一行命令,在将任何"base.apk"名称重命名为软件包名称的同时,从你可以访问的手机中取出所有apk.这还修复了APK路径在名称后带有看似随机字符的目录未找到问题:

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 &> /dev/null 
done

如果您收到"adb:error:failed to stat remote object",表明您没有所需的权限.我在一个没有根目录的Moto Z2上运行了这个程序,能够下载除了youtube之外我没有卸载的所有APK(见下文).

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

(要查看用户,请运行ADB shell pm列表用户) 这是一种删除/卸载(不是从手机上,因为它恢复出厂设置)的方法,几乎ANY个没有root的应用程序,包括系统应用程序(提示一下更新您的电话线的烦人的更新应用程序它是否可以通过抓取"ccc"来找到)

Android相关问答推荐

view喷气背包中找不到模型组成

Jetpack编写Lazy列滑动删除动画不顺利结束

我怎样才能画一条线在喷气背包组成和有一个自定义的角落?

找不到类MultipartBody;的序列化程序

如何将.txtassets资源 转换为ArrayList<;字符串>;kotlin格式?

空数据来自改装

当 Firebase Firestore 发生变化时,Kotlin ViewModel 不会更新

Jetpack Compose:在屏幕外制作长水平图像的动画

当手表与手机断开连接时,有没有办法在我的 Wear OS 应用程序中显示操作系统级别的图标?

无法找到方法 ''java.io.File > org.jetbrains.kotlin.gradle.tasks.KotlinCompile.getDestinationDir()

compose 导航参数字符串包含花括号?

PayUCheckoutPro Android SDK 实现问题

自定义 Recyclerview [Android & Kotlin]

GridLayout 和 GridView 有什么好用和区别

如何将设备屏幕位置转换为发送事件位置?

并行运行两个挂起函数并在第一个返回时返回

react-native android项目未找到错误

如何使伴奏导航 BottomSheet 完全展开?

如何获取 Material Design 3 的底部导航栏高度?

如何增加 BottomSheetDialog 的高度以跟随垂直平移