我目前的理解是刷机就是重新给手机安装系统,目前了解到的刷机方式有【卡刷】和【线刷】。
(1)卡刷(较简单的刷机方式):系统在进行定制的时候,会编译出来一份zip压缩包,里面没有代码,而是上面提到的一些系统分区的镜像,方便用户进行 手动升级 和 恢复系统 用的。这个zip压缩包是内置在sdcard上的,并且需要在recovery模式下进行。进入recovery模式是通过按住关机键和音量下键进入recovery状态下,然后再进入BootLder界面。Note:有些手机可能没有预装recovery。
(2)线刷(较难、较底层的刷机方式):相较于recovery状态下的卡刷,线刷是用过fastboot工具进行刷机,是一种更底层的刷机方式。fastboot刷机方式是要有一根数据线链接电脑和手机。通过fastboot命令来控制刷机过程,这种刷机更安全。
3.adb工具adb是Android系统一个工具,全称是“Android Debug Bridge”,即安卓调试桥。
(1) adb的作用:Android手机在刷机(线刷)的时候,必须有一个adb工具。在刷机的时候,我们用数据线连接电脑和手机。使用adb命令来使手机进入重启、进入Recovery、进入fastboot、文件推送状态下。
(2)在Ubuntu18.04上安装adb:(a)更新apt,如果不更新,可能会存在安装不成功的可能:
sudo apt update
(b)通过apt-get命令安装:
sudo apt-get install android-tools-adb
(c)查看adb的版本
adb version3.可能会用到的adb命令:
(1)显示当前设备:
adb devices
(2)复制文件到手机:
adb push [电脑中要推送的文件的位置] [需要把文件推送到手机的那个位置] 例如: adb pull C:muzi.zip /sdcard
(3)复制手机中的文件到电脑:
adb pull [手机中文件的位置][要复制到电脑的那个位置] adb pull sdcard/muzisoft.zip c:
(4)重启设备
adb reboot
(5)重启设备到recovery模式
adb reboot recovery
(6)重启设备到bootloader模式
adb reboot bootloader
下面的两个命令暂时不是很理解
(7)安装.apk类文件(需要保证.apk文件的位置和adb文件在同一个目录下面)
adb install A.apk 假设安装的是A文件,类型是apk类型的。
(8)安装apk类文件到sd卡:(保证apk文件和adb在同一个目录下)
adb install -s A.apk4.fastboot工具:
通过上面的介绍可以知道,fastboot是Android手机在进行线刷的时候的必备工具,所以我们要在Ubuntu18.04上安装fastboot工具。
(1)Ubuntu 18.04上安装fastboot工具:sudo apt-get install android-tools-fastboot(2)权限问题的解决:
过以上的命令,我们可以找一个测试机试试能否在Ubuntu终端命令上发现进入fastboot状态下的手机。 *** 作步骤如下:
找一个测试机进入fastboot状态下,然后用数据线与电脑链接; 在Ubuntu上的终端命令下输入:fastboot devices 得到的结果是: no permission (user mi is not in the plugdev group); see [http://developer.android.com/tools/device.html] 这个mi是我的用户名
那么此时的一个解决方案就是(彻底解决问题):
参考链接:参考博主
下面是我的总结:
(a)切换目录:
cd /etc/udev/rules.d/
(b)通过sudo命令去编辑配置文件:
sudo vim 51-android.rules 进入编辑状态之后要按键盘【i】才能进行编辑
©将以下的配置信息复制进去:
# udev rule to detect android devices # These rules refer to http://developer.android.com/tools/device.html # Acer SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666", GROUP="plugdev" # Archos SUBSYSTEM=="usb", ATTR{idVendor}=="0e79", MODE="0666", GROUP="plugdev" # Asus SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666", GROUP="plugdev" # Azpen Onda SUBSYSTEM=="usb", ATTR{idVendor}=="1f3a", MODE="0666", GROUP="plugdev" # BQ SUBSYSTEM=="usb", ATTR{idVendor}=="2a47", MODE="0666", GROUP="plugdev" # Dell SUBSYSTEM=="usb", ATTR{idVendor}=="413c", MODE="0666", GROUP="plugdev" # Fairphone SUBSYSTEM=="usb", ATTR{idVendor}=="2ae5", MODE="0666", GROUP="plugdev" # Foxconn SUBSYSTEM=="usb", ATTR{idVendor}=="0489", MODE="0666", GROUP="plugdev" # Fujitsu Toshiba SUBSYSTEM=="usb", ATTR{idVendor}=="04c5", MODE="0666", GROUP="plugdev" # Garmin-Asus SUBSYSTEM=="usb", ATTR{idVendor}=="091e", MODE="0666", GROUP="plugdev" # Genesys SUBSYSTEM=="usb", ATTR{idVendor}=="d324", MODE="0666", GROUP="plugdev" # Google SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev" # Haier SUBSYSTEM=="usb", ATTR{idVendor}=="201e", MODE="0666", GROUP="plugdev" # Hisense SUBSYSTEM=="usb", ATTR{idVendor}=="109b", MODE="0666", GROUP="plugdev" # HTC, Wiko SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev" # Huawei SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666", GROUP="plugdev" # Intel SUBSYSTEM=="usb", ATTR{idVendor}=="8087", MODE="0666", GROUP="plugdev" # K-Touch SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", MODE="0666", GROUP="plugdev" # KT Tech SUBSYSTEM=="usb", ATTR{idVendor}=="2116", MODE="0666", GROUP="plugdev" # Kyocera SUBSYSTEM=="usb", ATTR{idVendor}=="0482", MODE="0666", GROUP="plugdev" # Lab126 SUBSYSTEM=="usb", ATTR{idVendor}=="1949", MODE="0666", GROUP="plugdev" # Lenovo SUBSYSTEM=="usb", ATTR{idVendor}=="17ef", MODE="0666", GROUP="plugdev" # LG SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666", GROUP="plugdev" # Mad Catz SUBSYSTEM=="usb", ATTR{idVendor}=="0738", MODE="0666", GROUP="plugdev" # Meizu SUBSYSTEM=="usb", ATTR{idVendor}=="2a45", MODE="0666", GROUP="plugdev" # Micromax SUBSYSTEM=="usb", ATTR{idVendor}=="1ebf", MODE="0666", GROUP="plugdev" # Motorola SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666", GROUP="plugdev" # MTK SUBSYSTEM=="usb", ATTR{idVendor}=="0e8d", MODE="0666", GROUP="plugdev" # NEC SUBSYSTEM=="usb", ATTR{idVendor}=="0409", MODE="0666", GROUP="plugdev" # Nokia SUBSYSTEM=="usb", ATTR{idVendor}=="0421", MODE="0666", GROUP="plugdev" # Nook SUBSYSTEM=="usb", ATTR{idVendor}=="2080", MODE="0666", GROUP="plugdev" # Nvidia SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0666", GROUP="plugdev" # onePlus Two (unknown vendor's name) SUBSYSTEM=="usb", ATTR{idVendor}=="2a70", MODE="0666", GROUP="plugdev" # Oppo SUBSYSTEM=="usb", ATTR{idVendor}=="22d9", MODE="0666", GROUP="plugdev" # OTGV SUBSYSTEM=="usb", ATTR{idVendor}=="2257", MODE="0666", GROUP="plugdev" # Pantech SUBSYSTEM=="usb", ATTR{idVendor}=="10a9", MODE="0666", GROUP="plugdev" # Pegatron SUBSYSTEM=="usb", ATTR{idVendor}=="1d4d", MODE="0666", GROUP="plugdev" # Philips SUBSYSTEM=="usb", ATTR{idVendor}=="0471", MODE="0666", GROUP="plugdev" # PMC-Sierra SUBSYSTEM=="usb", ATTR{idVendor}=="04da", MODE="0666", GROUP="plugdev" # Qualcomm SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666", GROUP="plugdev" # Rockcwell Electronics SUBSYSTEM=="usb", ATTR{idVendor}=="2207", MODE="0666", GROUP="plugdev" # SK Telesys SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", MODE="0666", GROUP="plugdev" # Samsung SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666", GROUP="plugdev" # Sharp SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666", GROUP="plugdev" # Sony SUBSYSTEM=="usb", ATTR{idVendor}=="054c", MODE="0666", GROUP="plugdev" # Sony Ericsson SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666", GROUP="plugdev" # Spreadtrum SUBSYSTEM=="usb", ATTR{idVendor}=="1782", MODE="0666", GROUP="plugdev" # T & A Mobile Phones SUBSYSTEM=="usb", ATTR{idVendor}=="1bbb", MODE="0666", GROUP="plugdev" # Teleepoch SUBSYSTEM=="usb", ATTR{idVendor}=="2340", MODE="0666", GROUP="plugdev" # Texas Instruments UsbBoot SUBSYSTEM=="usb", ATTR{idVendor}=="0451", MODE="0666", GROUP="plugdev" # Toshiba SUBSYSTEM=="usb", ATTR{idVendor}=="0930", MODE="0666", GROUP="plugdev" # Wearners SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666", GROUP="plugdev" # Wileyfox SUBSYSTEM=="usb", ATTR{idVendor}=="2970", MODE="0666", GROUP="plugdev" # XiaoMi SUBSYSTEM=="usb", ATTR{idVendor}=="2717", MODE="0666", GROUP="plugdev" # YU SUBSYSTEM=="usb", ATTR{idVendor}=="1ebf", MODE="0666", GROUP="plugdev" # Zebra SUBSYSTEM=="usb", ATTR{idVendor}=="05e0", MODE="0666", GROUP="plugdev" SUBSYSTEM=="usb", ATTR{idVendor}=="0451", MODE="0666", GROUP="plugdev" # ZTE SUBSYSTEM=="usb", ATTR{idVendor}=="19d2", MODE="0666", GROUP="plugdev" # ZUK SUBSYSTEM=="usb", ATTR{idVendor}=="2b4c", MODE="0666", GROUP="plugdev"
(d)保存退出文件:
首先按左上角的【esc】键盘 然后,输入【:wq!】
(e)分别去执行以下命令就能退出:
sudo chmod a+r 51-android.rules #将此目录下面的所有rules文件加上权限 sudo service udev restart adb kill-server adb devices
再去执行fastboot devices就能看见链接数据线的手机设备的型号了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)