-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
dobrinia
КОнечно не запустился потому что надо создать карту памяти как описано в факе и закинуть ОБЯЗАТЕЛЬНО папу навителконтент (там ключ активации и скин.) поэтому у тебя не запускался)
Не совсем так. Карту памяти я уже создавал раньше, когда была версия 3.5.0.165.sign. Там всё описанное уже есть. Но почему-то программа не запускалась. Когда же я снёс её и установил заново из дистрибутива (*.apk), то программа заработала с моей старой картой памяти без проблем.
Вроде бы есть ограничения по номеру COM порта, с которым работает эмулятор. По крайней мере у меня порты с номерами 10, 11, 12 не заработали, а вот COM1 - нормально.
Освежил в памяти проблемы с NMEA посылками. Была когда-то идея использовать команду geo, так вот она как раз не все типы посылок принимает. С командой gps всё нормал.
Надо бы выложить основные методы работы с Андроидом, например, как положить иконку на рабочий стол и т. д.
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
Papazol
Не совсем так. Карту памяти я уже создавал раньше, когда была версия 3.5.0.165.sign. Там всё описанное уже есть. Но почему-то программа не запускалась. Когда же я снёс её и установил заново из дистрибутива (*.apk), то программа заработала с моей старой картой памяти без проблем.
Вроде бы есть ограничения по номеру COM порта, с которым работает эмулятор. По крайней мере у меня порты с номерами 10, 11, 12 не заработали, а вот COM1 - нормально.
Освежил в памяти проблемы с NMEA посылками. Была когда-то идея использовать команду geo, так вот она как раз не все типы посылок принимает. С командой gps всё нормал.
Надо бы выложить основные методы работы с Андроидом, например, как положить иконку на рабочий стол и т. д.
Скин хранится на карте памяти. Из-за этого не запускалась только лишь!
Скрипт я написал, работает, извините что не выложил, отсыпался... скоро скомпилирую и выложу!
-
Re: Navitel Navigator (Android-эмулятор)
Попробовал создать свою собственную сборку. На всякий случай опишу процесс.
Итак, java и SDK уже скачаны и установлены.
С помощью SDK Setup скачиваем и устанавливаем выбранные из предлагаемого списка образы ОС. Я установил их три: API 7, 8 и 9.
Затем создаём виртуальное устройство Android (avd), указав какое-либо (любое) API. В дальнейшем можно будет поменять API на другое без помощи SDK.
И теперь начинаем собирать нужные нам файлы в одну папку, которую называем как хотим. Файлы нужно копировать.
Описание файлов, содержащихся в этой папке.
AdbWinApi.dll, AdbWinUsbApi.dll и adb.exe - относятся к программе adb, необходимой для установки программ в эмулятор. Изначально находятся в папке c:\Android\android-sdk-windows\platform-tools.
Файл emulator.exe - собственно эмулятор. Изначально находится в папке c:\Android\android-sdk-windows\tools.
Файлы kernel-qemu, ramdisk.img, system.img, userdata.img относятся к образу ОС Android соответствующей версии и изначально находятся в папках c:\Android\android-sdk-windows\platforms\android-X\images, где X - номер API ОС.
Файлы cache.img, userdata-qemu.img, sdcard.img относятся к данным виртуального устройства Android (avd) и изначально находятся в папке c:\Documents and Settings\UserName\.android\avd\avdName, где UserName и avdName - соответственно имя пользователя и название avd, назначенное при его создании.
Наполнение sdcard.img данными выходит за пределы данного текста.
Файлы Start (NO GPS).cmd и Start (GPS).cmd - командные файлы для запуска эмулятора с нужными ключами. Создаются вручную на основе файлов, предложенных уважаемым dobrinia. Главным образом имеет смысл менять разрешение экрана эмулятора.
Я ещё добавил файл app_install.cmd - командный файл для установки программ в эмулятор, чтобы каждый раз не набирать командную строку вручную. Файл содержит следующую запись:
adb install program.apk,
где program - название устанавливаемой программы.
Файл navitel.apk - дистрибутив.
После того, как файлы собраны, можно через SDK Setup удалить созданное виртуальное устройство Android (avd), освободив некоторое количество гигабайт памяти.
Программы устанавливаются в работающий эмулятор, иначе устройство не будет обнаружено и ничего никуда не установится!
После того, как программа adb.exe установит приложение в эмулятор, окно командной строки закроется, однако сам процесс adb.exe не будет выгружен из памяти. При каких-либо проблемах (а они, как правило, бывают) придётся запускать установку повторно, и в памяти будут находиться несколько процессов adb.exe. Поэтому настоятельно рекомендуется по завершению установки Навитела в эмулятор зайти в диспетчер задач и убить процесс adb.exe.
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
Papazol
Попробовал создать свою собственную сборку. На всякий случай опишу процесс.
Итак, java и SDK уже скачаны и установлены.
С помощью SDK Setup скачиваем и устанавливаем выбранные из предлагаемого списка образы ОС. Я установил их три: API 7, 8 и 9.
Затем создаём виртуальное устройство Android (avd), указав какое-либо (любое) API. В дальнейшем можно будет поменять API на другое без помощи SDK.
И теперь начинаем собирать нужные нам файлы в одну папку, которую называем как хотим. Файлы нужно копировать.
Описание файлов, содержащихся в этой папке.
AdbWinApi.dll, AdbWinUsbApi.dll и adb.exe - относятся к программе adb, необходимой для установки программ в эмулятор. Изначально находятся в папке c:\Android\android-sdk-windows\platform-tools.
Файл emulator.exe - собственно эмулятор. Изначально находится в папке c:\Android\android-sdk-windows\tools.
Файлы kernel-qemu, ramdisk.img, system.img, userdata.img относятся к образу ОС Android соответствующей версии и изначально находятся в папках c:\Android\android-sdk-windows\platforms\android-X\images, где X - номер API ОС.
Файлы cache.img, userdata-qemu.img, sdcard.img относятся к данным виртуального устройства Android (avd) и изначально находятся в папке c:\Documents and Settings\UserName\.android\avd\avdName, где UserName и avdName - соответственно имя пользователя и название avd, назначенное при его создании.
Наполнение sdcard.img данными выходит за пределы данного текста.
Файлы Start (NO GPS).cmd и Start (GPS).cmd - командные файлы для запуска эмулятора с нужными ключами. Создаются вручную на основе файлов, предложенных уважаемым dobrinia. Главным образом имеет смысл менять разрешение экрана эмулятора.
Я ещё добавил файл app_install.cmd - командный файл для установки программ в эмулятор, чтобы каждый раз не набирать командную строку вручную. Файл содержит следующую запись:
adb install program.apk,
где program - название устанавливаемой программы.
Файл navitel.apk - дистрибутив.
После того, как файлы собраны, можно через SDK Setup удалить созданное виртуальное устройство Android (avd), освободив некоторое количество гигабайт памяти.
Программы устанавливаются в работающий эмулятор, иначе устройство не будет обнаружено и ничего никуда не установится!
После того, как программа adb.exe установит приложение в эмулятор, окно командной строки закроется, однако сам процесс adb.exe не будет выгружен из памяти. При каких-либо проблемах (а они, как правило, бывают) придётся запускать установку повторно, и в памяти будут находиться несколько процессов adb.exe. Поэтому настоятельно рекомендуется по завершению установки Навитела в эмулятор зайти в диспетчер задач и убить процесс adb.exe.
Для отладки это важно, и я рад что хоть кто-то тоже пытается внести свой вклад в это дело. Отпиши пожалуйста следующие моменты:
1. У тебя двухядерник? Если да то на сколько процентов нагружате эмулятор твой проц?
2. Если найдешь любые методы оптимизации загрузки андроида то пиши!
На данный момент очень важно разобраться как кинуть навител в автозагрузку!
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
dobrinia
Для отладки это важно, и я рад что хоть кто-то тоже пытается внести свой вклад в это дело. Отпиши пожалуйста следующие моменты:
1. У тебя двухядерник? Если да то на сколько процентов нагружате эмулятор твой проц?
по мере сил и знаний внесу свои пять копеек:
запустил твою сборку на двух ядерном Е5400 2Гига оперативы. Эмуль запущен без ГПС и сделал симуляцию посредством самого Навитела. Кушает проц где то на 35-45% (постоянно скачет). пробки пашут. Для сравнения взял сборку на ВинМобиле Навител+ЯндексКарты. Эта зараза при пуске поставила чето для связи с интетом в итоге пробки все равно не заработали и теперь в Андройде тоже пробки не показывает (ну с этим разберусь) дык вот эмул на ВинМобиле жрет проц на 45-50%.
На Андройде тоже пока не все так гладко. Навител иногда не пускается с первого раза. Выдается сообщение что он повис и его можно закрыть принудительно (скрин забыл снять).
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
-= Nicki =-
по мере сил и знаний внесу свои пять копеек:
запустил твою сборку на двух ядерном Е5400 2Гига оперативы. Эмуль запущен без ГПС и сделал симуляцию посредством самого Навитела. Кушает проц где то на 35-45% (постоянно скачет). пробки пашут. Для сравнения взял сборку на ВинМобиле Навител+ЯндексКарты. Эта зараза при пуске поставила чето для связи с интетом в итоге пробки все равно не заработали и теперь в Андройде тоже пробки не показывает (ну с этим разберусь) дык вот эмул на ВинМобиле жрет проц на 45-50%.
На Андройде тоже пока не все так гладко. Навител иногда не пускается с первого раза. Выдается сообщение что он повис и его можно закрыть принудительно (скрин забыл снять).
Спасибо, по поводу процессора видно влияет мультиядерность, хренова ( запусти на 1 ядре (например на виртуалке VirtualBOX) и увидешь что ест все 100 процентов или около того.
По поводу запуска навитела... у меня всегда стартует с первого раза, ладе если некорректно закрыл. НО НЕЛЬЗЯ ЗАПУСКАТЬ НАВИТЕЛ ПОКА НЕ ПОДКЛЮЧЕНА ВИРТУАЛЬНАЧ КАРТА (в верхнем такскбаре можн онаблюдать), иначе навител не находит скин и происходит описаноое тобой действие!
Я таки отточил скрипт запуск, прикрепляю его на главной, версия пусть будет 1.0a. Качаем и отписываем. Описание необходимых программ и что куда ложить пишу на главной странице и в архиве со скриптом.
-
Re: Navitel Navigator (Android-эмулятор)
что-то в упор не вижу скрипта на главной.
да и редактировалась она последний раз 17 числа.
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
dobrinia
По поводу запуска навитела... у меня всегда стартует с первого раза, ладе если некорректно закрыл. НО НЕЛЬЗЯ ЗАПУСКАТЬ НАВИТЕЛ ПОКА НЕ ПОДКЛЮЧЕНА ВИРТУАЛЬНАЧ КАРТА (в верхнем такскбаре можн онаблюдать), иначе навител не находит скин и происходит описаноое тобой действие!
теперь ясно. Тока вот что скачивать я тоже непонял :confused:
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
dobrinia
1. У тебя двухядерник? Если да то на сколько процентов нагружате эмулятор твой проц?
У меня одноядерник. Проц нагружает весьма по-разному, но я хочу, чтобы вся эта вестчь работала на нетбуке, который можно возить!
Цитата:
Сообщение от
dobrinia
2. Если найдешь любые методы оптимизации загрузки андроида то пиши!
Непременно напишу, если чего найду.
Где же скрипт? И исходники хотелось бы тоже.:)
-
Re: Navitel Navigator (Android-эмулятор)
чето эмуль весьма не стабилен у меня, при использовании гпс... падает постоянно с ошибками в памяти... память я кстати поменял...
-
Re: Navitel Navigator (Android-эмулятор)
чет мне не нравится все таки эти танцы с тормозами....
даже на коре квад 3 Ггц тормозит.... что говорить об атоме.
-
Re: Navitel Navigator (Android-эмулятор)
У меня 2.8 ГГЦ и все летает, имхо у тебя что-то нетак. я писал так же про мультиядерность, проверь.
На главной таки вылажил скрипт, исходники приложу скоро, пойду поем, всю ночь не спал.
В машине атом 330, скоро отпишу как там работает и сравню с эмуляторами на винде.
А пока все качаем и наслаждаемся работой навитела без ошибок типа malloc и вылетами на четвертой букве при поиске. Это на мой взгляд давольно ощутимый плюс!
Жду отзывов!
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
dobrinia
А пока все качаем и наслаждаемся работой навитела без ошибок типа malloc и вылетами на четвертой букве при поиске. Это на мой взгляд давольно ощутимый плюс!
Жду отзывов!
У меня Навител на винмобиле не вылетал при поиске, Была один раз проблема с памятью. Хард ресет и все потом стало нормально работать.
Сссыку поправь. Надпись изменил, а ссылается на старый файл :) Качаю будем пробовать.
-
Re: Navitel Navigator (Android-эмулятор)
-
Re: Navitel Navigator (Android-эмулятор)
Нужны исходники скрипта. Ибо есть возможность использовать другие вспомогательные программы. Или хотя бы описание, что делает скрипт.
-
Re: Navitel Navigator (Android-эмулятор)
А как быть если вместо GpsGate используется Eltima Software Shared Serial Ports ?
Просто проще создать один COM порт для всех gps программ, чем плодить кучу портов GpsGate`ом.
-
Re: Navitel Navigator (Android-эмулятор)
В приципе, GPSGate для работы не нужен, если только не используется логгинг. Я вот сейчас поставил эмулятор на нетбук и подключил приёмник. При простом подключении (у меня это COM5) эмулятор закапризничал и не стал грузиться (как и положено!) Пришлось создать пару портов с помощью vspd. Запарил COM5 и COM6. Последний указал в ключе эмулятора. И запустилось всё. Жаль, что в доме приёмник не видит спутники, попробую в другой комнате у окна.
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
Papazol
В приципе, GPSGate для работы не нужен, если только не используется логгинг. Я вот сейчас поставил эмулятор на нетбук и подключил приёмник. При простом подключении (у меня это COM5) эмулятор закапризничал и не стал грузиться (как и положено!) Пришлось создать пару портов с помощью vspd. Запарил COM5 и COM6. Последний указал в ключе эмулятора. И запустилось всё. Жаль, что в доме приёмник не видит спутники, попробую в другой комнате у окна.
Отпишись мне в аську, если есть возможность !
При включении эмулятора на ком-порте не должно быть никаких данных, поэтому у тебя и запустилось!!! (ты сам пишешь, что не ловил GPS)
Если неверишь - запусти гипертерминал на порту и посомтри. Если данных нету, или их мало, то эмуль стартует!
Я бы с удовольствием сделал фильт какой-либо, не посылающий каждую милисекунду данные в ком порт. эТО ненужно и ГЛупо!!!
Выкладываю скрпит . каждая команда имеет описание:
Код HTML:
#include <Constants.au3>
#include <GUIConstantsEx.au3>
If WinExists(@ScriptName) Then Exit
AutoItWinSetTitle(@ScriptName)
$sLog = ''
$Config = @ScriptDir & "\config.ini" ; загружаем параметры из конфига
$ComConnectPatch = IniRead($Config, 'Emulator', 'ComConnectPatch','')
$GpsGatePatch = IniRead($Config, 'Emulator', 'GpsGatePatch','')
$EmulatorPatch = IniRead($Config, 'Emulator', 'EmulatorPatch','')
$ComConnectExe = IniRead($Config, 'Emulator', 'ComConnectExe','')
$GpsGateExe = IniRead($Config, 'Emulator', 'GpsGateExe','')
$EmulatorExe = IniRead($Config, 'Emulator', 'EmulatorExe','')
$Sleep1 = IniRead($Config, 'Emulator', 'Sleep1','500')
$Sleep2 = IniRead($Config, 'Emulator', 'Sleep2','400')
$Sleep3 = IniRead($Config, 'Emulator', 'Sleep3','100')
$Sleep4 = IniRead($Config, 'Emulator', 'Sleep4','100')
If ProcessExists('GpsGateXP.exe') Then
RunWait('taskkill /f /im GpsGateXP.exe') ; закрываем GpsGate
Sleep($Sleep1)
EndIf
If ProcessExists('emulator.exe') Then
RunWait('taskkill /f /im emulator.exe') ; закрываем эмулятор
EndIf
If Not ProcessExists('VSPEmulator.exe') Then
Run($ComConnectPatch)
Sleep($Sleep2) ; запускаем VSPE
EndIf
Sleep($Sleep3)
$hIPconfig = Run (@ComSpec & $EmulatorPatch, '' , @SW_HIDE , $STDOUT_CHILD)
Sleep($Sleep4)
WinWaitActive("[CLASS:#32770]","",3) ; ждём пока не появится окно
Send('{ENTER}') ; нажимаем ок
WinWaitActive("[CLASS:SDL_app]","",3) ; ждём появленяи эмулятора
While ProcessExists('emulator.exe')
$sLog = StdoutRead($hIPconfig)
Sleep(1000)
$array = StringRegExp ( $sLog, "Sucessfully mounted vfat filesystem" , 0 ) ; ждём загрузки эмулятора
If $array Then ExitLoop
WEnd
Sleep(100)
WinActivate("[CLASS:SDL_app]")
Send('{F2}')
Run($GpsGatePatch) ; запустить GpsGate
Exit
По поводу тормозов. Выключите нафиг 3д режим в нафителе. По мне так неудобно и безсмыслено. Сделайте меньше детализацию.
Если тормозит всеравно, то можете ставить меньше разрешение + выставить масштаб командой -scale 2 например, см в шапке описание и DPI -dpi-device 120
-
Re: Navitel Navigator (Android-эмулятор)
не могу никак понять зачем нужны две программы GPSGate и Virtual Serial port? Хочу запустить в полевых условиях, т.е. с приемником. Приемник висит на COM4. Для разветвления использую Shared Port. СОМ3 занят. Подскажи как поступить?
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
-= Nicki =-
не могу никак понять зачем нужны две программы GPSGate и Virtual Serial port? Хочу запустить в полевых условиях, т.е. с приемником. Приемник висит на COM4. Для разветвления использую Shared Port. СОМ3 занят. Подскажи как поступить?
Итак. суть проблемы:
При запуске эмулятора на ком порту, куда он цепляется, недолжно быть НИКАКИХ данных!!! т.е. c GPS приёмником этот ком-порт не может быть связан. Иначе получишь ошибку при запуске эмулятора.
Для разветвления можно юзать любую прогу, которую можно убить из командной строки и потом запустить командой. Советую GPSGate т.к. под него я писал скрипт, и с ним все хорошо работает. Если ты неможешь использовать GPSGate по каким-то веским причинам - пиши, будем пилить скрипт под другую прогу, хотя смысла нет т.к. они делают все одно и тоже.
Исходя из этого надо 1 прога что б создала вирт.комп порт(3) куда подрубится может много прог и устройств. К этому опрту при старте цепляется эмулятор и т.к. на нем не висит никаких передающих устройств типа GPS-приёмника эмулятор стартует удачно, после старта скрипт автоматом запускает GPSGate и данные спокойно идут на эмулятор и все проги которые висят на этом ком-порту(3). Туда надо повесить и икар и прочие эмуляторы и программы котоыре нуждаются в GPS-приёмнике.
В GpsGate на вкладке инпут ставим источник сигнала - ваш гпс приемник. на вкладке Аутпут указываем наш виртуальный комп порт(3) куда нужно подавать GPS-данные. ТАким образом все буедт работать, если будет непонятно - нарисую картинкой.
Советую свой комп-порт3 переименовать просто в свойствах(если не получится, пиши- покажу на скриншоте как это сделать)
-
Re: Navitel Navigator (Android-эмулятор)
в тестовом режиме заработало со скрипта даже без его модификации, осталось победить автозапуск Новитела и сохранение состояния эмулятора. Уже можно перенести в авто и там побаловатся. Думаю сегодня получится, вечером отпешусь.
-
Re: Navitel Navigator (Android-эмулятор)
Я правильно понял,если эмуль не запущен, то другие проги не получают gps данные?
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
Fedorych
Я правильно понял,если эмуль не запущен, то другие проги не получают gps данные?
нет неправильно,
пока эмуль запускается - другие проги не получают данные.
как только эмуль загрузился - все имеют доступ к гпс данным
-
Re: Navitel Navigator (Android-эмулятор)
Тоже попробовал готовую сборочку. На домашнем в тестовом режиме все завелось на ура, вынь 7 х64. Вечером пошел пробовать в машину. Но тут засада, физически ГПС у меня висит на сом3 и с этим я ни чего поделать не могу. Переименовать порт или повесить на другой сом девайс не вариант в силу некоторых особенностей. Как быть? Хотелось, чтобы девайс остался на своем порте, а в качестве виртуального использовать сом2. Что делал: в фаилике config порт менял на сом2, в gpsgate в input - com3, output - com2. Либо в vspe пытался создать новое устройство: device type - splitter, vertual serial port- com2, data source serial port - com3. Затем сохранял настройки конфига путем замены Вашего готового конфига vspe. В итоге при запуске android.exe ошибка и окно эмулятора закрывается.
-
Re: Navitel Navigator (Android-эмулятор)
у меня в машине тоже СОМ3 занят. GPS физически висит на СОМ4. Стоит Sheret port. Все проги которые хотят полчить данные конектятся именно к нему. В системе есть не используемый СОМ2. Чтобы не рушить все я сделал следующее:
1. в файле config.vspe нашел цифру 3 и заменил ее 2. Может не получится т.к. текстовые редакторы коверкать могут. Ну или загрузить эту конфигурацию в vspe и там отредактировать и сохранить (это правильнее просто мне лень было =)
2.Запустил vspe и gpsgate.
3. Настроил GPSGate intput СОМ4, output СОМ2. GPSGate закрыть/открыть чтобы гарантировать сохранность настроек.
4. в файле config.ini для скрипта android.exe - исправил СОМ3 на СОМ2.
5. запускаем android.exe. Все работает.
в виду того что сейчас зима и в машине у меня винда живет на флешке, запуск androidа происходит оооччччччееень долго, эмуль на винмобиле в разы быстрее запускается.
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
-= Nicki =-
у меня в машине тоже СОМ3 занят. GPS физически висит на СОМ4. Стоит Sheret port. Все проги которые хотят полчить данные конектятся именно к нему. В системе есть не используемый СОМ2. Чтобы не рушить все я сделал следующее:
1. в файле config.vspe нашел цифру 3 и заменил ее 2. Может не получится т.к. текстовые редакторы коверкать могут. Ну или загрузить эту конфигурацию в vspe и там отредактировать и сохранить (это правильнее просто мне лень было =)
2.Запустил vspe и gpsgate.
3. Настроил GPSGate intput СОМ4, output СОМ2. GPSGate закрыть/открыть чтобы гарантировать сохранность настроек.
4. в файле config.ini для скрипта android.exe - исправил СОМ3 на СОМ2.
5. запускаем android.exe. Все работает.
в виду того что сейчас зима и в машине у меня винда живет на флешке, запуск androidа происходит оооччччччееень долго, эмуль на винмобиле в разы быстрее запускается.
Всё описа ли сделал верно. ЗАпуск увы долгий, буду ковырять. Правда у меня винт простой сата и меня вполне устраивает, главное работает потом быстрее и без ошибок
-
Re: Navitel Navigator (Android-эмулятор)
Пасиб, будем тестить.
ЗЫ: у меня ssd, посмотрим как долго будет подыматься эмулятор
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
eclipsemmc
Пасиб, будем тестить.
ЗЫ: у меня ssd, посмотрим как долго будет подыматься эмулятор
Практика показывает, что долго только первый раз!
После установки навитела советую отключить поддержку отладки (в настройках андроида, на вкладке программы вроде). Там 3 галки, оставить только "никогда не блокировать экран" что то вроде этого.
-
Re: Navitel Navigator (Android-эмулятор)
Цитата:
Сообщение от
dobrinia
Практика показывает, что долго только первый раз!
После установки навитела советую отключить поддержку отладки (в настройках андроида, на вкладке программы вроде). Там 3 галки, оставить только "никогда не блокировать экран" что то вроде этого.
А можно скрин? а то я не понял где и в какой программе
-
Вложений: 1
Re: Navitel Navigator (Android-эмулятор)
Протестировав предложенный скрипт, я тут сделал некоторые выводы.
1) Гораздо удобнее применять не VSPE, а vspd. Потому что vspd не требует запуска всякий раз, когда нам нужно получить порты. Однажды настроили - и всё. Это упрощает и скрипт тоже. К тому же не требуется отдельный файл конфигурации.
2) Обойтись без GPSGate никак не возможно, потому что нужно выполнить уже известные противоречивые требования: на момент запуска эмулятора порт, с которым эмулятор работает, должен существовать, но данных на нём быть не должно. Таким образом, нужно иметь в системе заранее сформированную пару виртуальных (но считающихся физическими) портов, один из которых задействован для соединения с эмулятором, второй является выходом GPSGate. Если при старте эмулятора GPSGate закрыт, то на второй порт ничего не передаётся, а первый порт существует, что и требуется.
3) Скрипт я немного модифицировал. Из ini-файла убрал параметры VSPE и задержки. Смысла через ini выставлять задержки я не вижу, хотя мне пришлось некоторые временнЫе параметры изменить, но они и не были записаны в ini. Добавил параметр "Горячая клавиша Навитела". Также я изменил способ закрытия процессов, не нужных в данный момент, так как предложенный метод у меня приводил к ошибкам.
Код:
#include <Constants.au3>
#include <GUIConstantsEx.au3>
If WinExists(@ScriptName) Then Exit ; если окно скрипта с новым именем уже существует, выходим
AutoItWinSetTitle(@ScriptName) ; в противном случае даём окну новое имя
$sLog = '' ; лог обнуляем
$Config = @ScriptDir & "\config.ini" ; загружаем параметры из конфига
$EmulatorCommand = IniRead ( $Config, 'Emulator', 'EmulatorCommand','' ) ; командная строка эмулятора
$NavitelHotKey = IniRead ( $Config, 'Emulator', 'NavitelHotKey', '' ) ; горячая клавиша Навитела
$GPSGatePath = IniRead ( $Config, 'Emulator', 'GPSGatePath', '' ) ; путь к GPSGate
If ProcessExists ( 'GpsGateXP.exe' ) Then ; если GPSGate уже запущен, то
ProcessClose ( "GpsGateXP.exe" ) ; закрываем GpsGate
Sleep ( 500 ) ; пауза
EndIf
If ProcessExists ( 'emulator.exe' ) Then ; если эмулятор уже запущен, то
ProcessClose ( "emulator.exe" ) ; закрываем эмулятор
Sleep ( 500 ) ; пауза
EndIf
$EmulatorStart = Run ( @ComSpec & $EmulatorCommand, '' , @SW_HIDE , $STDOUT_CHILD ) ; запускаем эмулятор
WinWaitActive ( "[CLASS:#32770]","",5 ) ; ждём 5 сек появления окна свойств COM порта
Send ( '{ENTER}' ) ; нажимаем OK
WinWaitActive ( "[CLASS:SDL_app]","",5 ) ; ждём 5 сек появления окна эмулятора
While ProcessExists ( 'emulator.exe' ) ; пока существует процесс эмулятора,
$sLog = StdoutRead ( $EmulatorStart ) ; читаем из потока эмулятора
Sleep ( 1000 ) ; каждую секунду
$array = StringRegExp ( $sLog, "Sucessfully mounted vfat filesystem" , 0 ) ; если в поток вышло указанное сообщение,
If $array Then ExitLoop ; выходим из цикла
WEnd
Sleep ( 100 ) ; пауза
WinActivate ( "[CLASS:SDL_app]" ) ; переходим в окно эмулятора
Send ( '{F2}' ) ; жмём F2, разблокируем экран
Sleep ( 2000 ) ; ждём 2 сек
WinActivate("[CLASS:SDL_app]") ; переходим в окно эмулятора
Send ( "{F5 down}" ) ; жмём F5
Send ( "{"&$NavitelHotKey&"}" ) ; жмём горячую клавишу
Send ( "{F5 up}" ) ; отпускаем F5
Run ( $GPSGatePath ) ; запускаем GpsGate
Exit
4) В Андроиде есть фича: назначение на приложения клавиш быстрого доступа. Нажимать эти клавиши необходимо совместно с клавишей "Поиск", каковой в эмуляторе является клавиша F5. Если на Навител назначить клавишу, например, "n", то, нажав "F5+n", можно запустить программу. Остаётся только передать через скрипт это сочетание клавиш, и проблема автозапуска решена.:)
-
Re: Navitel Navigator (Android-эмулятор)
Протестировал всё это на нетбуке. Что же, мои худшие предположения вновь подтвердились. Ресурсов катастрофически не хватает. Никакие ухищрения с отключением ненужных служб не проходят. Сам эмулятор жрёт 100% CPU, ничего не поделаешь.
-
Вложений: 1
Re: Navitel Navigator (Android-эмулятор)
У меня то-же жутко тормозит на ноутбуке (Intel® Core™2 Duo Processor T7500 2.20 GHz). Загрузка одного ядра ЦП при симуляции маршрута 92-100%.
-
Re: Navitel Navigator (Android-эмулятор)
Эмулятор таки поднялся, но с портам все равно не разобрался, запутался уже. В навител не посылаются данные. Загрузка ЦП в норме. Камень Core 2 Duo E8200 OEM 2.6GHz.
-
Re: Navitel Navigator (Android-эмулятор)
Я делал так:
1) Установил vspd.
2) Установил GPSGate.
3) Определил, на каком порту у меня будет приёмник, оказался COM6 (это пример).
4) Открыл vspd и посмотрел, какие порты из первой пятёрки отсутствуют в списке физических. Оказалось, что COM1 и COM2 как раз отсутствуют.
5) Создал в vspd пару из портов COM1 и COM2.
6) В командной строке эмулятора прописал порт COM1.
7) Открыл GPSGate и назначил на выход порт COM2 (не виртуальный, а физический!)
8) На вход GPSGate назначил симулятор NMEA, так как приёмник в доме не ловит. (Потом нужно будет поменять на COM6!)
9) В симуляторе NMEA создал две точки, отличающиеся своими координатами (они должны обязательно попадать на карту, иначе гемор!).
10) Всё ещё раз проверил.
11) Отключил симулятор.
12) Запустил эмулятор (поэзия!:D).
13) Дождался полной загрузки и включил симулятор.
14) Запустил Навител.
15) Увидел указатель и движение карты.
16) Сделал рукой жест "Yesss!
Скрипт, который я выложил, выполняет пункты 11-14 автоматически.
-
Re: Navitel Navigator (Android-эмулятор)
Может стоит попробовать откатится обратно на WIN MOB :).
Вышла 5 версия навитела, уже есть и сломанная, может в ней поиск будет нормально работать.
http://i16.fastpic.ru/big/2011/0124/...f7198d4f5c.gif
Что нового в Навител Навигатор 5:
— Новый быстрый роутинг! Благодаря внесенным изменениям, скорость построения маршрутов в Навител 5 теперь занимает всего 2-3 секунды, независимо от сложности и длины маршрута.
— Существенно ускорена работа программы. Отображение карты и информации о пробках происходит очень быстро.
— Улучшен алгоритм адресного поиска. Теперь найти нужный объект или адрес на карте стало еще проще и быстрее.
— Внесены некоторые изменения в интерфейсе программы.
— Исправлены ошибки предыдущей версии, существенно повышена стабильность программы.
-
Re: Navitel Navigator (Android-эмулятор)
-
Re: Navitel Navigator (Android-эмулятор)
Уже качаю :) Ща машину в гараж погоню, заодно и затестю.
___
Разницы в работе не заметил особой. При поиске вылетает. Все равно кросмасть карты.
-
Re: Navitel Navigator (Android-эмулятор)
Снова я :) Все таки не догоняю? запутался с портами. Разъясните доступным языком пж. Как я понимаю... грубо, эмулятор андройда должен запускаться с уже открытым виртуальным портом на который инфа не должна посылаться, для этих целей служит прожка vspd. В моем случае для этого я указал в фаилике config.ini -gps COM2 и в конфигурационном фаилике config.vspe также com2. Далее, после запуска эмуля спустя какое-то время должен стартовать gps gate роль которого снимать инфу с приемника и посылать на виртуальный порт. В моем случае gps висит на com3. В настройках gps gate выставил input - Com Port 3, output - virtual com port 2. Внес изменения в gpsa gate и в vspd, далее закрываю их со всеми сохранениями. Запускаю android.exe, поднимается эмуль, запускаю навител и на этом все, в окне, где должны отображаться спутники ни чего нет. Что ни так делаю? Ну оч хочется под андройдом завести ибо на моем карписюке работает заметно шустрее моей мобаиловской сборки. Заранее пасиб.
-
Re: Navitel Navigator (Android-эмулятор)
не виртуальный порт а нормальный... в настройках гпсгейта
-
Re: Navitel Navigator (Android-эмулятор)
2layt, спасибо.
Ехоууу, оно работает :) Только что на работе оттестил. В качестве источника ГПС приемника был телефон HTC Hero на андройде, данные шли по блютусу на комп. Действительно, лажанулся с настройками gpsgate. Правда при загрузке навиглюка или при прокладке маршрута иногда зависал эмулятор с ошибкой.