Я знаю, что это старый пост, но я хочу написать свое личное решение проблемы:
Не удалось переименовать каталог C: \ android-sdk \ tools в C: \ android-sdk \ temp \ ToolPackage.old01.
Очевидно, у меня возникла та же проблема, и каждый раз, когда необходимо обновить инструменты Android, это кошмар.
Ни одно из найденных мной решений по поиску в сети не сработало для меня, но это жизненно важная задача для обновления Android SDK. Поэтому я начал искать альтернативный способ решения этой проблемы и наконец нашел его ... по крайней мере ... он работает для меня, даже если это немного сложно.
Основная проблема заключается в том, что пакетный файл android.bat поступает из папки ~ \ tools \, и он все еще находится в памяти (работает), а ту же папку ~ \ tools \ необходимо обновить (в наш случай, переименован).
Проблема в том, что android.bat запускает java для запуска swt.jar (инструмент SDK), и он по-прежнему бесполезно ожидает завершения этой java-программы.
Вы можете отредактировать android.bat и увидеть вызов в последней строке этого пакета:
call "%java_exe% %REMOTE_DEBUG%" "-Dcom.android.sdkmanager.toolsdir=%tools_dir%" "-Dcom.android.sdkmanager.workdir=%work_dir%" -classpath "%jar_path%;%swt_path%\swt.jar" com.android.sdkmanager.Main %*
Проблема в команде CMD "call". Он ожидает завершения вызванной внешней программы.
Но есть и другой способ запуска внешних программ из командного файла: команда "start" . Запускает внешнюю программу и завершает работу.
Так что я просто заменил команду «call» на «start», чтобы после изменения последняя строка моего android.bat была:
start "" "%java_exe% %REMOTE_DEBUG%" "-Dcom.android.sdkmanager.toolsdir=%tools_dir%" "-Dcom.android.sdkmanager.workdir=%work_dir%" -classpath "%jar_path%;%swt_path%\swt.jar" com.android.sdkmanager.Main %*
Примечание : удерживайте "" между запуском и путем приложения. Вы можете добавить текст в эти дефисы, и этот текст будет заголовком командного окна java.exe, которое вы увидите после изменений. В моем случае я оставил подпись как пустую строку, но вы можете написать там, что вы хотите.
После внесения изменений вы можете запустить SDK, и android.bat больше не будет ждать, оставляя инструмент SDK свободным для воспроизведения (и переименовывая папку ~ \ tools \ без головной боли).
Очевидно, что после обновления инструментов SDK необходимо повторить те же изменения в новом обновленном пакетном файле android.bat . Это может быть немного неудобно, но вам нужно просто не забыть внести изменения перед запуском инструмента SDK, и у вас не будет других проблем при обновлении Android.