59

基本的にこれが私の問題です/

私は200台以上の携帯電話をストックAndroidで実行しており、(データのワイプ/ファクトリリセットの方法で)ワイプしてから、いくつかの追加のapkをインストールした新しいROMをインストールする必要があります。

現在、データのワイプ部分を除いてすべてが自動化されています。他のすべては、一連のコマンドを使用して.batを介して非常にうまく実行できますが、データをワイプするためにリカバリモードを模倣または強制する方法を一生理解することはできません。

私が現在試したこと:

  • 実行するはずのフォルダー(data、cache、sd-extなど)でrm-r*を使用してデータを自分でワイプします。これはワイプしますが、ROMが正しく機能せず、ブートループでスタックします。
  • 「adbinputkeyevent」を使用して、キーの押下を模倣しようとしています。それらは基本的にUNIXシェルにあるため、何にマップされているのかわかりません。それでも、OSがロードされていないため、「入力」はありません。
  • 実際にワイプ/リセットを実行しているシステム上のファイル/スクリプトを見つけて、それを手動で実行しようとしています。これはすでにどこかに書かれているので最も簡単な方法かもしれませんが、CWMのようなものでも、どこに隠されているのかわかりません。

誰かが.batまたはadbシェルを介してこのファクトリリセットを実行できる方法を持っている場合は、それを大いに感謝します。これを約2日間解決しようとしていますが、ほとんど進展がありません。

4

1 に答える 1

63

たくさん掘り下げた後、私はついにAndroidのリカバリセクションのソースコードをダウンロードすることになりました。実際にコマンドをリカバリに送信できることがわかりました。

 * The arguments which may be supplied in the recovery.command file:
 *   --send_intent=anystring - write the text out to recovery.intent
 *   --update_package=path - verify install an OTA package file
 *   --wipe_data - erase user data (and cache), then reboot
 *   --wipe_cache - wipe cache (but not user data), then reboot
 *   --set_encrypted_filesystem=on|off - enables / diasables encrypted fs

これらは私が見つけたコマンドに従って使用できるコマンドですが、moddedファイルでは異なる場合があります。したがって、adbを使用すると、次のことができます。

adb shell
recovery --wipe_data

--wipe_dataを使用すると、まだ完全にテストしていませんが、探していたことが便利であるように見えました。

編集:

このトピックをまだ使用している場合、これらのコマンドは、使用しているリカバリに基づいて変更される可能性があります。Clockwordリカバリを使用している場合でも、これらのコマンドは機能するはずです。他のコマンドは/cache/ restore/commandにあります

詳細については、こちらをご覧ください: https ://github.com/CyanogenMod/android_bootable_recovery/blob/cm-10.2/recovery.c

于 2012-05-31T08:02:10.200 に答える