2015-06-30 2 views
2

Я работаю над Cordova для разработки гибридного мобильного приложения с использованием HTML, CSS и Javascript.Apache Cordova - открытие гибридного мобильного приложения, как браузер Chrome, не похоже на приложение cordova

Как мы можем перенаправить с одной страницы на другие страницы, не похожие на приложение браузера, это должно быть приложение Кордовы.

Он работает хорошо в браузере, но если я создаю файл .apk и развертываю его на мобильном устройстве, он работает как веб-приложение, не похожее на приложение Кордовы. Здесь я использую кодирование как window.open(), window.location.href() и window.location.replace().

  $(document).ready(function() { 
      $("#btn4").click(function() { 
       $lname = $("#lname").val(); 
       $.ajax({ 
        url: 'http://localhost:8080/RESTfulDemoDerby/webresources/com.mss.mmxregistration/session', 
        data: {lname: $lname}, 
        type: 'GET', 
        crossDomain: true, 
        ContentType: 'html/text', 
        dataType: 'text', 
        cache: false 
      }).done(function(response) { 

        if (response== 'success') { 
    window.location.href='http://localhost:8383/HTML5Application1/listform.html'; 
        } 
        else { 
       window.location.replace("http://localhost:8383/HTML5Application1/login1.html"); 

        } 

      }).fail(function(request, textStatus, errorThrown) { 
        // alert(url); 

        alert(textStatus + " : " + errorThrown.toString()); 
       }); 
      }); 
     }); 

Позвольте мне уточнить, что мы можем добавить плагин PhoneGap в приложение Cordova? Потому что оба являются разными платформами для разработки гибридного приложения с использованием HTML, CSS и Javascript.

+0

cordova и phonegap - это то же самое, вы можете использовать плагины phonegap на проектах cordova. Существуют ли HTML5Application1/listform.html и HTML5Application1/login1.html внутри вашей кордовой папки www? – jcesarmobile

+0

@jcesarmobile yes –

+0

С приложениями Cordova и PhoneGap у вас есть **, чтобы дождаться события 'deviceready', вы не можете использовать' $ (document) .ready', потому что Cordova еще не загружена, когда документ готов. – Timo

ответ

2

Вы должны глубже изучить кордову/телефонный разговор и все об этом. Обычным способом создания гибридного приложения с помощью phonegap/cordova было бы создание одностраничного приложения.

Это означает, что вы используете каркас: Например - jquery mobil e. С помощью этой структуры вы можете настроить одностраничное приложение.

Например, вы можете настроить persistent toolbars. После этого вы можете перемещаться по страницам через обычный <a href="#pageID">Page 2</a>, где #pageID должен быть идентификатором со страницы, на которую вы хотите перейти.

Single-шаблон страницы приложения будет выглядеть следующим образом:

<div data-role="page" id="page1" data-title="Page 1"> 
    <div class="content"> 
     <a href="#page2">Testcontent Page 2 - Go to Page 2</a> 
    </div> 
</div> 

<div data-role="page" id="page2" data-title="Page 2"> 
    <div class="content"> 
     <a href="#page1">Testcontent Page 2 - Back to Page 1</a> 
    </div> 
</div> 

data-title="Page 1" это название, которое будет автоматически изменен с помощью JavaScript и jQuery. Он заменит содержимое тегов <h1></h1> внутри вашего постоянного заголовка.

Просто Google для одиночной страницы Приложение Cordova Tutorial или подобные вещи, есть масса результатов.

Cordova Documentation 5.0

плагинами Cordova

Кордова не будет столь же хорошо известно, как это, если бы не были эти большие плагины. Список плагинов почти бесконечен, и изо дня в день появляются новые.

Вы можете установить плагин через терминал.

  1. кд yourProject
  2. Cordova плагин добавить Cordova-плагин-pluginName где pluginName бы название этого плагина. Например: консоли
  3. Cordova плагин добавить Cordova-плагин-консоль

После добавлен такой плагин для вашего проекта, вы собираетесь запустить команду сборки (cordova build - интегрировать "плагин добавить процесс "внутри вашего обычного способа создания приложения.

Итак, теперь, после добавления плагина, который вы хотите, вы можете использовать команды, с которыми подключается плагин. Но внимание: вам нужно дождаться события deviceReady, прежде чем вы сможете использовать свои плагины.

Пример для DeviceReady событий

<!DOCTYPE html> 
<html> 
    <head> 
    <title>Device Ready Example</title> 

    <script type="text/javascript" charset="utf-8" src="cordova.js"></script> 
    <script type="text/javascript" charset="utf-8"> 

    // Wait for device API libraries to load 
    // 
    function onLoad() { 
     document.addEventListener("deviceready", onDeviceReady, false); 
    } 

    // device APIs are available 
    // 
    function onDeviceReady() { 
     // Now safe to use device APIs 
    } 

    </script> 
    </head> 
    <body onload="onLoad()"> 
    </body> 
</html> 

Вы можете найти подробную информацию об этом событии, и все другие события внутри cordova events docs.

+0

Я согласен с тем, что приложение страницы с сиглей - лучший выбор, но я не думаю, что это отвечает на вопрос, который он сделал – jcesarmobile

+0

. Он спросил «Как перенаправить с одной страницы на другую страницу» - вот о чем мой ответ. Тема «плагины» очень специфична сама по себе, но я собираюсь отредактировать свой ответ и предоставить некоторые подробности об этом. – Sithys

+0

@jcesarmobile Точно, потому что нужно вызвать Webservices и это не похоже на примерное приложение, оно включает в себя несколько страниц. –