am e944944f
: Merge "Add "Apply update from sdcard" to default recovery image."
* commit 'e944944fa58f66dad5483b6ee1ea9a2c0f9bedd2': Add "Apply update from sdcard" to default recovery image.
This commit is contained in:
commit
3dce9e761f
3 changed files with 44 additions and 20 deletions
14
README.md
Normal file
14
README.md
Normal file
|
@ -0,0 +1,14 @@
|
|||
The Recovery Image
|
||||
==================
|
||||
|
||||
Quick turn-around testing
|
||||
-------------------------
|
||||
|
||||
mm -j
|
||||
m ramdisk-nodeps
|
||||
m recoveryimage-nodeps
|
||||
adb reboot bootloader
|
||||
|
||||
# To boot into the new recovery image
|
||||
# without flashing the recovery partition:
|
||||
fastboot boot $ANDROID_PRODUCT_OUT/recovery.img
|
|
@ -20,19 +20,24 @@
|
|||
#include "device.h"
|
||||
#include "screen_ui.h"
|
||||
|
||||
static const char* HEADERS[] = { "Volume up/down to move highlight;",
|
||||
"enter button to select.",
|
||||
"",
|
||||
NULL };
|
||||
static const char* HEADERS[] = {
|
||||
"Volume up/down to move highlight.",
|
||||
"Power button to select.",
|
||||
"",
|
||||
NULL
|
||||
};
|
||||
|
||||
static const char* ITEMS[] = {"reboot system now",
|
||||
"apply update from ADB",
|
||||
"wipe data/factory reset",
|
||||
"wipe cache partition",
|
||||
"reboot to bootloader",
|
||||
"power down",
|
||||
"view recovery logs",
|
||||
NULL };
|
||||
static const char* ITEMS[] = {
|
||||
"Reboot system now",
|
||||
"Reboot to bootloader",
|
||||
"Apply update from ADB",
|
||||
"Apply update from SD card",
|
||||
"Wipe data/factory reset",
|
||||
"Wipe cache partition",
|
||||
"View recovery logs",
|
||||
"Power off",
|
||||
NULL
|
||||
};
|
||||
|
||||
class DefaultDevice : public Device {
|
||||
public:
|
||||
|
@ -65,12 +70,13 @@ class DefaultDevice : public Device {
|
|||
BuiltinAction InvokeMenuItem(int menu_position) {
|
||||
switch (menu_position) {
|
||||
case 0: return REBOOT;
|
||||
case 1: return APPLY_ADB_SIDELOAD;
|
||||
case 2: return WIPE_DATA;
|
||||
case 3: return WIPE_CACHE;
|
||||
case 4: return REBOOT_BOOTLOADER;
|
||||
case 5: return SHUTDOWN;
|
||||
case 1: return REBOOT_BOOTLOADER;
|
||||
case 2: return APPLY_ADB_SIDELOAD;
|
||||
case 3: return APPLY_EXT;
|
||||
case 4: return WIPE_DATA;
|
||||
case 5: return WIPE_CACHE;
|
||||
case 6: return READ_RECOVERY_LASTLOG;
|
||||
case 7: return SHUTDOWN;
|
||||
default: return NO_ACTION;
|
||||
}
|
||||
}
|
||||
|
|
10
recovery.cpp
10
recovery.cpp
|
@ -512,7 +512,7 @@ prepend_title(const char* const* headers) {
|
|||
|
||||
const char** new_headers = (const char**)malloc((count+1) * sizeof(char*));
|
||||
const char** h = new_headers;
|
||||
*(h++) = "Android system recovery <" EXPAND(RECOVERY_API_VERSION) "e>";
|
||||
*(h++) = "Android system recovery (API " EXPAND(RECOVERY_API_VERSION) ")";
|
||||
*(h++) = recovery_version;
|
||||
*(h++) = "";
|
||||
for (p = headers; *p; ++p, ++h) *h = *p;
|
||||
|
@ -877,7 +877,11 @@ prompt_and_wait(Device* device, int status) {
|
|||
break;
|
||||
|
||||
case Device::APPLY_EXT: {
|
||||
ensure_path_mounted(SDCARD_ROOT);
|
||||
if (ensure_path_mounted(SDCARD_ROOT) != 0) {
|
||||
ui->Print("\n-- Couldn't mount %s.\n", SDCARD_ROOT);
|
||||
break;
|
||||
}
|
||||
|
||||
char* path = browse_directory(SDCARD_ROOT, device);
|
||||
if (path == NULL) {
|
||||
ui->Print("\n-- No package file selected.\n", path);
|
||||
|
@ -910,7 +914,7 @@ prompt_and_wait(Device* device, int status) {
|
|||
} else if (!ui->IsTextVisible()) {
|
||||
return Device::NO_ACTION; // reboot if logs aren't visible
|
||||
} else {
|
||||
ui->Print("\nInstall from sdcard complete.\n");
|
||||
ui->Print("\nInstall from SD card complete.\n");
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
|
Loading…
Reference in a new issue