Разделение представлений Cordova в зависимости от устройства и ОС

Я работаю над гибридным приложением Cordova. Я хочу иметь отдельные представления html на основе совместимости. Проблема возникла из-за того, что угловой дизайн материала не слишком хорошо работал на старых устройствах. Я не хочу царапать экраны дизайна материалов для всех. Я планирую, что на новых устройствах будет работать один набор представлений, а на старых — другой. Это разделение будет основано на типе устройства и версии ОС.

Моя первоначальная мысль заключалась в том, чтобы указать два отдельных индексных файла для разных сборок. Таким образом, разделение может быть основано на флаге в моей сборке Gradle. Оставив мне 2 сборки, одну для новых устройств и одну для совместимости. Есть идеи?


person EJ_Westhuizen    schedule 27.10.2015    source источник


Ответы (1)


на основе http://docs.phonegap.com/en/1.0.0/phonegap_device_device.md.html вы можете получить «device.version» и действительно выполнить другой код в зависимости от версии.

person Lary Ciminera    schedule 27.10.2015
comment
Дело в том, что я хочу, чтобы мой javascript был согласован в обеих версиях, только мой html должен отличаться. Мне нужно чистое решение, в котором используется один из двух наборов html на основе флага в моей сборке gradle или что-то в этом роде. Такая же функциональность, но другой вид, изменение javascript для проверки версии требует многих изменений. - person EJ_Westhuizen; 27.10.2015
comment
хорошо, вы можете загрузить нужный html в зависимости от версии (api.jquery.com/load для jquery) (stackoverflow.com/questions/24496201/ для angular) - person Lary Ciminera; 27.10.2015
comment
Это по-прежнему потребует модификации каждого контроллера, который у меня есть? Возможно, я неправильно понимаю это, но это решение заключается в загрузке html в представление, а не в замене всего представления? Извините, если я ошибаюсь, я привык конкретно к андроиду, я новичок в гибридных html-приложениях. - person EJ_Westhuizen; 27.10.2015
comment
ммм, я не очень хорошо знаю angular, но не могли бы вы просто перенаправить на файл, скажем, window.location="index_ios7.html"; или window.location="index_ios6.html";, который использует один и тот же контроллер? - person Lary Ciminera; 27.10.2015