Android adb push与 adb install简介

系统级别与用户级别的应用程序


Android应用程序分为用户级别和系统级别。

push 与install的区别

  • adb push是指定安装目录

    例如,adb push xxx.apk system/app,是安装到了system/app目录下,在该目录下的程序是系统级别的。

  • adb install是安装到data/app目录,属于用户级应用

通过命令行 adb push安装程序到系统目录下,而AndroidStudio是使用adb instanll安装到手机上的。

系统级别应用程序才具备的权限


众所周知,在6.0以下,软件在安装时候会被授予权限,在6.0及其以上,是动态申请权限。

但是,不是全部的权限都会被系统赋予,有些权限只能赋予系统级别运用程序。

以下,是无法赋予用户级别运用程序的权限列表(只能在系统级别程序使用的):

android.permission.ACCESS_CHECKIN_PROPERTIES
android.permission.ACCESS_SURFACE_FLINGER
android.permission.ACCOUNT_MANAGER
android.permission.BIND_APPWIDGET
android.permission.BIND_DEVICE_ADMIN
android.permission.BIND_INPUT_METHOD
android.permission.BIND_WALLPAPER
android.permission.BRICK
android.permission.BROADCAST_PACKAGE_REMOVED
android.permission.BROADCAST_SMS
android.permission.BROADCAST_WAP_PUSH
android.permission.CALL_PRIVILEGED
android.permission.CHANGE_COMPONENT_ENABLED_STATE
android.permission.CLEAR_APP_USER_DATA
android.permission.CONTROL_LOCATION_UPDATES
android.permission.DELETE_CACHE_FILES
android.permission.DELETE_PACKAGES
android.permission.DEVICE_POWER
android.permission.DIAGNOSTIC
android.permission.FACTORY_TEST
android.permission.FORCE_BACK
android.permission.GLOBAL_SEARCH
android.permission.HARDWARE_TEST
android.permission.INJECT_EVENTS
android.permission.INSTALL_LOCATION_PROVIDER
android.permission.INSTALL_PACKAGES
android.permission.INTERNAL_SYSTEM_WINDOW
android.permission.MANAGE_APP_TOKENS
android.permission.MASTER_CLEAR
android.permission.READ_FRAME_BUFFER
android.permission.READ_INPUT_STATE
android.permission.REBOOT
android.permission.SET_ACTIVITY_WATCHER
android.permission.SET_ORIENTATION
android.permission.SET_PREFERRED_APPLICATIONS
android.permission.SET_TIME
android.permission.STATUS_BAR
android.permission.UPDATE_DEVICE_STATS
android.permission.WRITE_GSERVICES
android.permission.WRITE_SECURE_SETTINGS

要获取这些权限,应用程序必须使用平台的系统密钥进行签名,即与系统保持一致的签名。但是,制造商不同,手机大厂不一样,基本排除了将这些权限赋予给用户级别的应
用程序。

个人觉得,这个目前适合,自家的系统定制的应用程序。

如何使用adb push命令行,下篇介绍。

资源参考

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
android adb shell 命令大全 1. 显示系统中全部Android平台: android list targets 2. 显示系统中全部AVD(模拟器): android list avd 3. 创建AVD(模拟器): android create avd --name 名称 --target 平台编号 4. 启动模拟器: emulator -avd 名称 -sdcard ~/名称.img (-skin 1280x800) 5. 删除AVD(模拟器): android delete avd --name 名称 6. 创建SDCard: mksdcard 1024M ~/名称.img 7. AVD(模拟器)所在位置: Linux(~/.android/avd) Windows(C:\Documents and Settings\Administrator\.android\avd) 8. 启动DDMS: ddms 9. 显示当前运行的全部模拟器: adb devices 10. 对某一模拟器执行命令: abd -s 模拟器编号 命令 11. 安装应用程序: adb install -r 应用程序.apk 12. 获取模拟器中的文件: adb pull 13. 向模拟器中写文件: adb push 14. 进入模拟器的shell模式: adb shell 15. 启动SDK,文档,实例下载管理器: android 16. 缷载apk包: adb shell cd data/app rm apk包 exit adb uninstall apk包的主包名 adb install -r apk包 17. 查看adb命令帮助信息: adb help 18. 在命令行中查看LOG信息: adb logcat -s 标签名 19. adb shell后面跟的命令主要来自: 源码\system\core\toolbox目录和源码\frameworks\base\cmds目录。 20. 删除系统应用adb remount (重新挂载系统分区,使系统分区重新可写)。 adb shell cd system/app rm *.apk 21. 获取管理员权限: adb root 22. 启动Activity: adb shell am start -n 包名/包名+类名(-n 类名,-a action,-d date,-m MIME-TYPE,-c category,-e 扩展数据,等)。 23、发布端口: 你可以设置任意的端口号,做为主机向模拟器或设备的请求端口。如: adb forward tcp:5555 tcp:8000 24、复制文件: 你可向一个设备或从一个设备中复制文件, 复制一个文件或目录到设备或模拟器上: adb push 如:adb push test.txt /tmp/test.txt 从设备或模拟器上复制一个文件或目录: adb pull 如:adb pull /addroid/lib/libwebcore.so . 25、搜索模拟器/设备的实例: 取得当前运行的模拟器/设备的实例的列表及每个实例的状态: adb devices 26、查看bug报告: adb bugreport 27、记录无线通讯日志: 一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录: adb shell logcat -b radio 28、获取设备的ID和序列号: adb get-product adb get-serialno 29、访问数据库SQLite3 adb shell sqlite3 #cd system/sd/data //进入系统内指定文件夹 #ls //列表显示当前文件夹内容 #rm -r xxx //删除名字为xxx的文件夹及其里面的所有文件 #rm xxx //删除文件xxx #rmdir xxx //删除xxx的文件夹
### 回答1: adb push是将本地计算机上的文件推送到连接的Android设备上。可以使用以下命令: adb push <本地文件路径> <设备目标路径> 例如: adb push C:\Users\username\Desktop\test.apk /sdcard/test.apk 这将把本地计算机上的test.apk文件推送到连接的Android设备的/sdcard/test.apk路径下。 adb install是将应用程序安装到连接的Android设备上。可以使用以下命令: adb install <应用程序路径> 例如: adb install C:\Users\username\Desktop\test.apk 这将安装本地计算机上的test.apk文件到连接的Android设备上。 ### 回答2: adbAndroid Debug Bridge的缩写,是一种用于Android设备与计算机之间进行通讯和控制的命令工具。在开发安卓应用的过程中,经常需要使用adb命令进行各种操作,其中最常用的就是adb pushadb installadb push命令可以将计算机中的文件或目录拷贝到Android设备中的指定位置。具体用法为使用adb push命令后跟上需要拷贝的文件的路径和目标路径,例如:adb push ~/Desktop/app.apk /sdcard/Download/。这个命令会将计算机中的app.apk文件拷贝到Android设备的sdcard/Download目录下。同时,如果设备未连接计算机,则需要连接设备并确保设备已经对计算机进行授权。 adb install命令则主要用于在Android设备中安装应用程序。具体用法为使用adb install命令后跟上需要安装的应用程序的路径和名称,例如:adb install ~/Desktop/app.apk。这个命令会将计算机中的app.apk文件安装到Android设备中。同时,如果应用已经安装,则可以通过加上 -r 参数来覆盖安装,例如:adb install -r ~/Desktop/app.apk。 总的来说,adb push命令可以将计算机中的文件或目录拷贝到Android设备中,而adb install命令则可以将应用程序安装到Android设备中。这两个命令是安卓开发人员日常开发过程中不可或缺的工具。 ### 回答3: adbAndroid Debug Bridge的缩写,是一种用于与连接到Android设备的计算机进行通信的工具。adb具有许多功能,其中两个常用的是adb pushadb install。下面分别进行解释: 1. adb pushadb push的作用是将位于计算机上的文件推送到连接到Android设备的文件系统上。可以使用以下命令执行adb push操作: `adb push <本地文件路径> <目标路径>` 其中,`<本地文件路径>`是将要传输的文件的本地路径,`<目标路径>`是将文件传输到Android设备上的目标路径。这些路径应传递给命令,以指示adb要在哪里查找文件并将其传输。 例如: `adb push D:\android\test.txt /sdcard/` 本例将当前计算机上的test.txt文件传输到连接到Android设备的文件系统的根目录的sdcard文件夹中。 2. adb installadb install的作用是将Android应用程序(APK文件)安装到连接到设备的Android设备上。可以使用以下命令执行adb install操作: `adb install <APK文件路径>` 其中,`<APK文件路径>`是将要安装的APK文件的路径。命令将在连接的Android设备上安装指定的APK文件。 例如: `adb install D:\android\app.apk` 本例将位于计算机上的app.apk文件安装到连接的Android设备上。 总的来说,adb pushadb installadb 命令的两种重要用法,分别用来将本地文件上传到设备以及安装应用程序。这两个命令都需要在与连接到Android设备的计算机上使用的 adb 命令中进行执行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值