Html Phonegap ios应用程序

时间:2014-03-17 17:55:58

标签: php cordova phonegap-build

我用HTML,jQuery和jQuery Mobile构建了一个小应用程序,所有这些都在PhoneGap之上,公开到App Store并在iOS上运行。

我的问题是我内部的每个链接或每个广告都会打开InAppBrowser / WebUiView,我不知道如何设置后退按钮。

除了index.html之外的所有页面都在我的应用程序中加载.load()。

所以我希望在普通浏览器中打开超链接,浏览广告或其他广告,或者如果需要在应用内打开,我需要一个后退按钮。

另外,您是否相信使用PhoneGap这样的应用程序将通过Apple的审核流程,以便在App Store上提供?

我花了太多时间进行修改而没有运气!

以下是我的项目的示例代码:

<!doctype html>
<html>

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0" />
    <title>Mobile App</title>

    <link rel="stylesheet" type="text/css" href="mobile_css/style.css" media="all" />
    <link rel="stylesheet" href="jquerymobile/demos/css/themes/default/jquery.mobile-1.4.2.min.css">

    <script type="text/javascript" src="js/jquery-1.11.0.min.js"></script>
    <script src="jquerymobile/demos/js/jquery.mobile-1.4.2.min.js"></script>
    <script type="text/javascript" src="js/jquery.cookie.js"></script>
    <script type='application/javascript' src='js/fastclick.js'></script>
    <script type="text/javascript" charset="utf-8" src="cordova.js"></script>

    <script>
        $(function() {
            FastClick.attach(document.body);
        });
    </script>

    <script type="text/javascript">
        $(document).ready(function(){
            $(".secondpage").click(function(){
                $("#secondpageholder").load("http://www.mydomain.com/secondpage.html", function() { 
                    $("#secondpageholder").fadeIn("fast");
                });
            });
        });
    </script> 
</head>

<body>
    <div data-role="page" class="jqm-demos ui-responsive-panel" id="panel-responsive-page1" data-title="Test">

        <div style="width:320px; height:40px; margin:0 auto;">
            <div class="secondpage">
                <img src="nextpage.png">
            </div>
        </div>

        <div style="clear:both;"></div>

        <div style="width:320px; height:15px; color: #000; margin: 0 auto; margin-top:10px;">
            <a href="http://www.mydomain.com/anotherpageExternalPage.html" target="_blank">
        </div>
    </div>

    <div style="clear:both;"></div>

    <div id="secondpageholder" style="width:320px; height:15px; color: #000; margin: 0 auto; margin-top:10px; display:none;">
    </div>

    </div>

</body>

</html>

我的config.xml

<?xml version="1.0" encoding="UTF-8"?>

<!-- config.xml reference: https://build.phonegap.com/docs/config-xml -->
<widget xmlns     = "http://www.w3.org/ns/widgets"
        xmlns:gap = "http://phonegap.com/ns/1.0"
        id        = "com.celebrityposted.appcpca"
        version   = "1.0.0">

    <name>Mydomain.Com</name>

    <description>
        My description.
    </description>

    <author href="http://www.mydomain.com" email="info@mydomain.com">
        C Team
    </author>

    <!--
        If you do not want any permissions to be added to your app, add the
        following tag to your config.xml; you will still have the INTERNET
        permission on your app, which PhoneGap requires.
    -->
    <preference name="permissions"                value="none"/>

    <!-- Customize your app and platform with the preference element. -->
    <preference name="phonegap-version"           value="3.3.0" />          <!-- all: current version of PhoneGap -->
    <preference name="orientation"                value="portrait" />        <!-- all: default means both landscape and portrait are enabled -->
    <preference name="target-device"              value="universal" />      <!-- all: possible values handset, tablet, or universal -->
    <preference name="fullscreen"                 value="true" />           <!-- all: hides the status bar at the top of the screen -->    
    <preference name="disable-cursor"             value="false" />          <!-- blackberry: prevents a mouse-icon/cursor from being displayed on the app -->
    <preference name="android-minSdkVersion"      value="7" />              <!-- android: MIN SDK version supported on the target device. MAX version is blank by default. -->
    <preference name="android-installLocation"    value="auto" />           <!-- android: app install location. 'auto' will choose. 'internalOnly' is device memory. 'preferExternal' is SDCard. -->

    <!-- MY IOS -->
    <preference name="FadeSplashScreen"                value="false"/>
    <preference name="MediaPlaybackRequiresUserAction" value="true"/>
    <preference name="prerendered-icon"                value="true" />           <!-- ios: if icon is prerendered, iOS will not apply it's gloss to the app's icon on the user's home screen -->
    <preference name="ios-statusbarstyle"              value="black-opaque" />   <!-- ios: black-translucent will appear black because the PhoneGap webview doesn't go beneath the status bar -->
    <preference name="detect-data-types"               value="true" />           <!-- ios: controls whether data types (such as phone no. and dates) are automatically turned into links by the system -->
    <preference name="exit-on-suspend"                 value="false" />          <!-- ios: if set to true, app will terminate when home button is pressed -->
    <preference name="auto-hide-splash-screen"         value="true" />           <!-- ios: if set to false, the splash screen must be hidden using a JavaScript API -->
    <preference name="AllowInlineMediaPlayback"        value="true"/>
    <preference name="TopActivityIndicator"            value="black"/>
    <preference name="ShowSplashScreenSpinner"         value="true"/>
    <preference name="SuppressesIncrementalRendering"  value="false"/>
    <preference name="stay-in-webview"                 value="false" />

    <feature name="InAppBrowser">
    <param name="ios-package" value="CDVInAppBrowser" />
    </feature>

    <!-- Plugins -->

    <!-- Core plugins -->
    <gap:plugin name="org.apache.cordova.battery-status" />
    <!--<gap:plugin name="org.apache.cordova.camera" />-->
    <!--<gap:plugin name="org.apache.cordova.media-capture" />-->
    <gap:plugin name="org.apache.cordova.console" />
    <!--<gap:plugin name="org.apache.cordova.contacts" />-->
    <gap:plugin name="org.apache.cordova.device" />
    <gap:plugin name="org.apache.cordova.device-motion" />
    <gap:plugin name="org.apache.cordova.device-orientation" />
    <gap:plugin name="org.apache.cordova.dialogs" />
    <gap:plugin name="org.apache.cordova.file" />-->
    <gap:plugin name="org.apache.cordova.file-transfer" />-->
    <!--<gap:plugin name="org.apache.cordova.geolocation" />-->
    <gap:plugin name="org.apache.cordova.globalization" />
    <gap:plugin name="org.apache.cordova.inappbrowser" />
    <gap:plugin name="org.apache.cordova.media" />
    <gap:plugin name="org.apache.cordova.network-information" />
    <gap:plugin name="org.apache.cordova.splashscreen" />
    <!--<gap:plugin name="org.apache.cordova.vibration" />

    <!-- Third party plugins -->
    <!-- A list of available plugins are available at https://build.phonegap.com/plugins -->
    <!-- 
        <gap:plugin name="com.phonegap.plugins.barcodescanner" />
    -->

    <!-- Define app icon for each platform. -->
    <icon src="icon.png" />
    <icon src="res/icon/android/icon-36-ldpi.png"   gap:platform="android"    gap:density="ldpi" />
    <icon src="res/icon/android/icon-48-mdpi.png"   gap:platform="android"    gap:density="mdpi" />
    <icon src="res/icon/android/icon-72-hdpi.png"   gap:platform="android"    gap:density="hdpi" />
    <icon src="res/icon/android/icon-96-xhdpi.png"  gap:platform="android"    gap:density="xhdpi" />
    <icon src="res/icon/blackberry/icon-80.png"     gap:platform="blackberry" />
    <icon src="res/icon/blackberry/icon-80.png"     gap:platform="blackberry" gap:state="hover"/>

    <icon src="res/icon/ios/icon-57.png"            gap:platform="ios"        width="57" height="57" />
    <icon src="res/icon/ios/icon-72.png"            gap:platform="ios"        width="72" height="72" />
    <icon src="res/icon/ios/icon-57-2x.png"         gap:platform="ios"        width="114" height="114" />
    <icon src="res/icon/ios/icon-72-2x.png"         gap:platform="ios"        width="144" height="144" />

    <icon src="res/icon/webos/icon-64.png"          gap:platform="webos" />
    <icon src="res/icon/windows-phone/icon-48.png"  gap:platform="winphone" />
    <icon src="res/icon/windows-phone/icon-173.png" gap:platform="winphone"   gap:role="background" />

    <!-- Define app splash screen for each platform. -->
    <gap:splash src="res/screen/android/screen-ldpi-portrait.png"  gap:platform="android" gap:density="ldpi" />
    <gap:splash src="res/screen/android/screen-mdpi-portrait.png"  gap:platform="android" gap:density="mdpi" />
    <gap:splash src="res/screen/android/screen-hdpi-portrait.png"  gap:platform="android" gap:density="hdpi" />
    <gap:splash src="res/screen/android/screen-xhdpi-portrait.png" gap:platform="android" gap:density="xhdpi" />
    <gap:splash src="res/screen/blackberry/screen-225.png"         gap:platform="blackberry" />

    <gap:splash src="res/screen/ios/screen-iphone-portrait.png"    gap:platform="ios"     width="320" height="480" />
    <gap:splash src="res/screen/ios/screen-iphone-portrait-2x.png" gap:platform="ios"     width="640" height="960" />
    <gap:splash src="res/screen/ios/screen-ipad-portrait.png"      gap:platform="ios"     width="768" height="1024" />
    <gap:splash src="res/screen/ios/screen-ipad-landscape.png"     gap:platform="ios"     width="1024" height="768" />
    <gap:splash src="res/screen/ios/screen-iphone-portrait-568h-2x.png"     gap:platform="ios"     width="640" height="1136" />

    <gap:splash src="res/screen/windows-phone/screen-portrait.jpg" gap:platform="winphone" />


    <access origin="*" />
    <access uri="*" />


</widget>

我希望有人帮助我!

1 个答案:

答案 0 :(得分:0)

当我正在处理一个项目时,我和我的老年人一起为平板电脑和iPad构建应用程序。我们构建了一个基本模型,我们将其与其他所有脚本加载一起使用,然后我们创建一个具有动态主页面的容器。我们的应用程序已成功通过应用商店。