2016-07-11 12 views
0

ich eine App hava, dass ich die Anzeigen nicht auf index.html zeigen wollen, aber sagen auf index1.htmlAdmob Probleme in der Intel XDK

Alles funktioniert auf index.html mit dem admob Skript unten, Banner und Interstitial taucht auf, aber ich don 't whont sie auf index.html, ich will sie auf index1.html. Ich lösche den Code von index.html und lege ihn in index1.html ab, keine Werbung erscheint?

Warum ist das?

Ich möchte, dass sie index1 ist, dass es nicht sehr benutzerfreundlich ist, ein interstitial zu haben, um 1sec nach appstart aufzutauchen.

Ich dachte auch, die Interstitial auf den ersten Klick klicken, aber ich kann nicht funktioniert entweder.

iam das AdMob Plugin Pro (cordova-plugin-admobpro)
in intel XDK

dies mit dem admobpro-Skript, das ich in der HTML-Datei verwenden:

<script type="text/javascript" src="cordova.js"></script> 
 
    <script>var admobid = {}; 
 
if(/(android)/i.test(navigator.userAgent)) { 
 
    admobid = { // for Android 
 
     banner: 'ca-app-pub-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 
 
     interstitial: 'ca-app-pub-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 
 
    }; 
 
} else if(/(ipod|iphone|ipad)/i.test(navigator.userAgent)) { 
 
    admobid = { // for iOS 
 
     banner: 'ca-app-pub-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 
 
     interstitial: 'ca-app-pub-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 
 
    }; 
 
} else { 
 
    admobid = { // for Windows Phone 
 
     banner: 'ca-app-pub-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', 
 
     interstitial: 'ca-app-pub-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 
 
    }; 
 
} 
 
if((/(ipad|iphone|ipod|android|windows phone)/i.test(navigator.userAgent))) { 
 
    document.addEventListener('deviceready', initApp, false); 
 
} else { 
 
    initApp(); 
 
} 
 
function initApp() { 
 
    if (! AdMob) { alert('admob plugin not ready'); return; } 
 

 
    AdMob.createBanner({ 
 
     adId: admobid.banner, 
 
     isTesting: false, 
 
     overlap: false, 
 
     offsetTopBar: false, 
 
     position: AdMob.AD_POSITION.BOTTOM_CENTER, 
 
     bgColor: 'black' 
 
    }); 
 
    AdMob.prepareInterstitial({ 
 
     adId: admobid.interstitial, 
 
     autoShow: true 
 
    }); 
 
}</script>

+0

Die Lösung liegt wahrscheinlich in den Teilen, die nicht in der Frage enthalten sind - die restlichen HTML-Dateien. – Eiko

Antwort

0

Wenn Sie eine "mehrseitige" App (mehrere HTML-Dateien) erstellen möchten, müssen Sie auf jeder HTML-Seite, die auf die JavaScript-Erweiterung zugreift, cordova.js einfügen s von Cordova Plugins zur Verfügung gestellt. Mit anderen Worten, nur die HTML-Seiten, die das magische Init-Skript cordova.js enthalten, können auf die Cordova-Plugin-APIs zugreifen.

Im Allgemeinen werden mehrseitige Web-Apps zum Erstellen von Cordova-Apps nicht empfohlen, da dieses Problem auftritt und beim Wechseln zwischen den Seiten Verzögerungen auftreten. Sie verlieren außerdem den JavaScript-Kontext, der zu logischen Problemen in Ihrer App führen kann.

Ich empfehle, dass Sie Ihre App neu erstellen, so dass es eine "Single-Page" App (auch bekannt als SPA) ist. Siehe this Cordova doc article, besonders der Abschnitt mit dem Titel SPA ist dein Freund!