2016-07-22 14 views
4

Nach dem Programmrichtlinien für Entwickler Google (https://developer.chrome.com/webstore/program_policies) es ist durchaus akzeptabel, Anzeigen in Ihre Chrome-Erweiterung hinzuzufügen:Anzeigen in eine Chrome-Erweiterung implementieren?

Anzeigen in Zusammenhang präsentiert werden müssen Staat oder klar die App oder Erweiterung sie mit gebündelt sind. Anzeigen müssen auch leicht entfernbar sein, indem Sie entweder die Einstellungen anpassen oder die App oder die Erweiterung vollständig deinstallieren. Anzeigen dürfen Systembenachrichtigungen oder -warnungen nicht simulieren oder annehmen.

Deshalb versuche ich, Anzeigen hinzuzufügen, und ich verwende Chitika dafür, da AdSense nicht erlaubt ist. Es hat so lange gedauert, bis ich mit der Schaltung von Anzeigen fertig war. Ich musste Minifix-Dateien bearbeiten und so viel mehr, um mit dem Chrome-Erweiterungsmanifest content_security_policy konform zu sein. Wie auch immer, wie der gerade jetzt, nur 1 Unternehmens Anzeigen geschaltet werden, aber der Rest mit der Fehlermeldung blockiert werden:

getads.js:340 Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'self' https://www.google-analytics.com https://secure.adnxs.com https://gum.criteo.com https://ib.adnxs.com https://mm.chitika.net https://cdn.chitika.net". Either the 'unsafe-inline' keyword, a hash ('sha256-KaerrywnDX+trLhtIG9qlTDyP6iiK4PCLN7LWCvctFc='), or a nonce ('nonce-...') is required to enable inline execution.

Was kann ich dieses Problem beheben? Ich habe versucht, die keyworkd Hinzufügen unsafe-inline aber bekomme ich nur eine andere Fehlermeldung aus:

Ignored insecure CSP value "'unsafe-inline'" in directive 'object-src'.

Was kann ich an dieser Stelle tun? Ich kontrolliere nicht wirklich, wie die Anzeigen in meine Software eingebettet sind, also bin ich etwas eingeschränkt. Jeder hat eine Idee? Und wenn nicht, gibt es eine andere Anzeigenplattform, die mit Chrome-Erweiterungen gut funktioniert? Ich möchte nichts nerviges .. nur eine 320x50 Anzeige oder etwas .. und es wird so frustrierend, weil ich 8 Millionen Page Impressions auf meiner Chrom-Erweiterung pro Monat bekomme und ich kann kein Einkommen generieren!

Danke für die Hilfe.

Edit: Das ist mein Anzeigencode:

(function() { 
if (window.CHITIKA === undefined) { window.CHITIKA = { 'units' : [] }; }; 
var unit = {"calltype":"async[2]","publisher":"USER_NAME","width":300,"height":250,"sid":"Chitika Default"}; 
var placement_id = window.CHITIKA.units.length; 
window.CHITIKA.units.push(unit); 
document.write('<div id="chitikaAdBlock-' + placement_id + '"></div>'); 
}()); 

und Sie müssen enthalten:

<script type="text/javascript" src="../../js/getads.js" async></script>, die hier gefunden werden kann: http://cdn.chitika.net/getads.js. Ich habe den gesamten Domain-Namen durch die https Version ersetzt.

Edit 2: My content_security_policy sieht wie folgt aus:

"content_security_policy": "script-src 'self' https://www.google-analytics.com https://secure.adnxs.com https://gum.criteo.com https://ib.adnxs.com https://mm.chitika.net https://cdn.chitika.net; object-src 'self'", 
+1

Versuchen Sie, die Anzeige in iframe einzubetten. Vielleicht füge 'frame-src 'none'' zu CSP hinzu. Ich kann nur raten. – wOxxOm

+0

Können Sie bitte den Anzeigencode anzeigen? –

+1

Haben Sie die [Inhaltssicherheitsrichtlinie] von Google (https://developer.chrome.com/extensions/contentSecurityPolicy) und [diese SO-Frage] (http://stackoverflow.com/questions/31060722/cordova-refuse-to- execute-inline-event-handler-weil-es-verletzt-die-folge)? –

Antwort

-1

Wenn unsichere-inline nicht funktioniert, dann versuchen, einen Hash zu verwenden, jede der Skripte zu identifizieren, die Sie ausführen möchten. Wenn der Code, der im HTML-Code ausgeführt werden soll, den von Ihnen definierten Hashes entspricht, wird der Code ausgeführt. Mehr Informationen zu diesem hier: http://www.w3.org/TR/2015/CR-CSP2-20150721/#script-src-hash-usage

0

Auf der developer program policies Website Sie Bemerkung folgen finden:

Derzeit AdSense möglicherweise nicht um Anzeigen in Chrome Extensions oder Chrome-Apps verwendet werden, pro AdSense policies.

In der Tat bedeutet es, dass Sie jetzt keine Anzeigen in Ihren Chrome-Erweiterungen verwenden konnten.