Разработка на Android Studio 1.0.1, API 21. Ниже приведена структура папок -
По сути это приложение на основе AngularJS, которое я хочу обернуть внутри контейнера веб-просмотра и запустить на Android.
Моя сторона кода для Android -
WebView myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setDomStorageEnabled(true);
myWebView.setWebChromeClient(new WebChromeClient());
String filePath = "file:///android_asset/www/index.html";
myWebView.loadUrl(filePath);
Все ссылки в html являются относительными -
<script src="lib/jquery.min.js"></script>
<script src="lib/angular.min.js"></script>
<script src="lib/angular-route.min.js"></script>
<script src="lib/bootstrap.min.js"></script>
Но что интересно, я обыскал большинство мест, и я не уверен, где я иду не так. Мои ссылки не работают вообще! Поэтому я не могу получить доступ к моим файлам lib, моим сценариям, моему css. Кроме того, если я запускаю внешнюю угловую веб-страницу внутри веб-вида с тем же Java-кодом, она работает отлично!
Любая помощь приветствуется.
Примечание: Пожалуйста, не предлагайте использовать Cordova / PhoneGap. Это требование проекта, чтобы стать родным (и я, честно говоря, не понимаю почему, но я всего лишь разработчик, который не имеет права голоса в этом).
На заметке: Я столкнулся с той же проблемой с веб-обзором iOS. Ссылки не работают!
ОБНОВЛЕНИЕ
Пробовал следующие вещи:
Пробовал loadDataWithBaseURL()
, не работает.
Удалили все скрипты из папки и поместили их на корневой уровень, а также изменили ссылки, чтобы не было путей, просто имена файлов. Все еще не работает. И это слишком странно.