Есть ли способ имитировать скорость на эмуляторе Android?
[edit] Цель этого — протестировать метод getSpeed().
Пример: я хочу, чтобы устройство двигалось со скоростью 20 миль в час.
Есть ли способ имитировать скорость на эмуляторе Android?
[edit] Цель этого — протестировать метод getSpeed().
Пример: я хочу, чтобы устройство двигалось со скоростью 20 миль в час.
Да, вы можете это сделать. Если вы используете Eclipse для разработки своего приложения, вам нужно перейти к перспективе DDMS. Там вы должны найти окно под названием Управление эмулятором. В этом окне вы можете отправить новые геолокации (GPS-координаты) на ваш эмулятор или устройство. Если вы хотите увеличить скорость, лучше использовать файлы GPX или KML. В этих файлах вы можете определить координаты GPS, и эти координаты затем считываются шаг за шагом. Выбрав эти координаты соответствующим образом, вы можете имитировать постоянную скорость.
У объекта Location есть метод для установки скорости устройства:
//the instance
Location location;
//retrieves the speed of the device
location.getSpeed()
// set the speed of the device of course for testing purporses, remember to
// remove this when deploying your appplication
location.setSpeed((float) 20.0)
Если вы хотите имитировать изменение скорости во времени, вы можете установить таймер и уменьшить или увеличить скорость в этот промежуток времени, например:
int secondsDelayed = 5;
new Handler().postDelayed(new Runnable() {
public void run() {
location.setSpeed((float) 50.0);
}
}, secondsDelayed * 1000);
Это увеличит скорость до 50 км/ч за 5 секунд.
Я столкнулся с той же проблемой на моем компьютере с высокой конфигурацией 3i 4GB , но эмулятор работает так медленно, что я нашел что-то, что сработало для меня, и надеюсь, что это может сработать для других, я хотел бы поделиться этим здесь.
я только что добавил Device ram size к моему существующему AVD и установил size to 1000MB (потому что у меня достаточно, чтобы выделить 4 ГБ). Нет, скорость моего AVD была конечной надеждой, что она может вам помочь.