У меня возникли проблемы с поиском путей для работы с Android-приложением AngularJS v1.2.0 и PhoneGap/Cordova. Я пришел довольно далеко с html5mode(true), установив <base href="."/> в index.html, а затем изменив $routeProvider.when('/') на $routeProvider.when('/android_asset/www/index.html'). После этого я могу получить redirectTo('login'), чтобы достигнуть $routeProvider.when('/login'), и там отобразится templateUrl: 'static/partials/login.html', как ожидалось.
Проблема заключается в том, что если я вместо этого попытаюсь перенаправить на страницу входа из моего кода Javascript с помощью $location.path('/login');, маршрут будет найден, но загрузка templateUrl не завершится с исключением insecurl.
Я пробовал доступ к файлу в белый список://с помощью нового модуля angular -sanitize, но это не помогает.
Как я могу сделать $location.path() делать те же вещи, что и redirectTo, чтобы частичная загрузка была загружена? Или есть другой способ решить эту проблему?
UPDATE: я получил бит вперед, добавив вызов функции replace() после функции пути, например:
$location.path('/login').replace();
но это похоже на хак, и это все равно приводит к тому, что templateUrl в противном случае будет терпеть неудачу с тем же исключением.
Любые идеи о том, что может быть неправильным? Является ли это то, что html5mode (true) просто не работает в данный момент с помощью Phonegap, и единственный способ исправить это - установить его в false и добавить хэштеги к каждому пути (например, это сделано в angular phonegap проект семян)?