2015-02-04 33 views
5

Chrome uzantım here ile ilgili başka bir soru yayınladım.
Ancak uzantıların kendileri hakkında bir sorum var. Sadece Tumblr-Dashboard'un, arka plan sayfasının veya başka bir şeyin değiştirilmesi için bir içerik betiğine ihtiyacım var, değil mi? Bu tamam olup olmadığını sormak,Chrome uzantısı: javascript dosyası yüklenemedi

{ 
    "name": "Tumblr - Tiled Dashboard", 
    "version": "0.0.54", 
    "manifest_version": 2, 
    "description": "This extension modifies the look of your Tumblr dashboard.", 
    "icons": { 
     "16": "images/icon_16.png", 
     "48": "images/icon_48.png", 
     "128": "images/icon_128.png" 
    }, 
    "content_scripts": [ 
     { 
      "matches": [ "*://*.tumblr.com/dashboard" ], 
      "css": [ "styles.css" ], 
      "js": [ "jquery-2.1.3.min.js", "masonry.min.js", "code.js" ] 
     } 
    ], 
    "homepage_url": "mypage", 
    "author": "myname" 
} 

başlatmak için: Burada

manifest.json dosyasıdır? manifest.json dosyası hakkında çok şey okudum ve yerel olarak uzantıyı denediğimde her şey iyi görünüyor. Ben uzantısı paketi ve yükleyin Fakat iki sorun vardır: Ben aradığımda

  1. Ben uzantısı bulamıyorum
  2. Ben uzantısı bulmak için linki kullanınız ve bunu yüklemek istediğinizde (2 farklı bilgisayarda denedim), jquery-2.1.3.min.js dosyasının yüklenemediğini söyleyen bir hata alıyorum. Bu yüzden jQuery dosyasıyla ilgili bir sorun olup olmadığını sınamak için JavaScript dosyalarının sırasını değiştirdim, ancak dizideki ilk dosyada masonry.min.js olması aynı hatayla sonuçlandı.

Bu neden oluyor? manifest.json dosyası tamam mı? Bazı özel izinlere ihtiyacım var mı?

Düzenleme: Bu benim (Ben de arama tarafından bulamıyorum) Chrome Web Mağazası'ndan uzantısı yüklemeye çalıştığınızda bir görüntü var.

Screenshot of when I try to install the package from the Web Store

+0

bir ekran güzel olurdu. Ve bu hatayı geliştirme, açılmamış sürümünüzle almazsınız diyorsunuz? – Xan

+0

Yukarıdaki ekran görüntüsünü ekledim (Almanca, üzgünüm). Paketlenmemiş/yerel uzantım düzgün çalışıyor! Söylemek istediğim bir başka şey ise, manifest dosyasındaki sırayı değiştirirsem, 'masonry.js' için aynı mesajı almamdır. –

+1

Yanlış şekilde paketlenmiş gibi görünüyor. Yüklediğiniz zip içindeki yapı nedir? Zip'in kökü içinde hem manifest.json hem de .js'nin dosyaları olmalı, bir fermuarın içindeki bir klasörde değil. – Xan

cevap

6

Ben indirmeden önce Uzantınızın ZIP dosyası içine bir göz aldık ve sonuç şu oldu:

zip

*

Rob Wu tarafından Chrome extension source viewer kullanılarak bir kontrol edilmelidir

Burada sorun, kaynak kodunuzun yerine ZIP dosyanızın içine paketlenmiş bir CRX dosyası yüklediniz. Bunun yerine, uzantınızın kökünü içeren bir ZIP dosyasını yüklemelisiniz. manifest.json dosyasını eklediğinizden, Web Deposu, uzantıyı yüklemeye çalışana kadar uzantıyı yüklemeye çalışana kadar yanlış bir şey fark etmiyor, çünkü Chromes bildirilen dosyalara erişmeye çalıştığında hata veriyor ve bir hata döndürüyor Çünkü bu dosyalar mevcut değil.

  • öğe dizinine değil, bir paketlenmiş CRX bir ZIP dosyası yükleyin: Bir öğeyi yükleme

    : Chrome Web Mağazası Geliştirici Gösterge Tablosu'nun yükleme sayfasından aktaran

    dosya.

  • Bildirimlerinize iyi tasarlanmış bir ürün simgesi ekleyin (more info). Uygulamaları oluşturma ve paketleme hakkında
  • Read the documentation.
  • Daha fazla yardıma mı ihtiyacınız var? Chrome Web Store developer documentation'a bakın.

Yani, uzantısının tüm dosyaları içeren, Uzantınızın kök dizinin bir Posta dosyası oluşturmak gerekir. Kişisel ZIP dosyası daha sonra aşağıdaki gibi görünmelidir: Hatanın

enter image description here

+0

Bana yardım ettiğin ve ona bir göz attığın için teşekkür ederim, cevabını ben işaretledim! Uzantımın kökü gerektiğine, bunun yerine oluşturulmuş * .crx dosyasına ihtiyacım olduğunu düşünmedim. Son bir sorum var: Web mağazasına göndermezseniz bu * .crx dosyasının amacı nedir? –

+1

@Eru Daha önce, Web Mağazası'nın dışında bir eklenti/uygulama barındırmak mümkündü. Bunun için bir CRX'e ihtiyacınız vardı. Şimdi bazı sınırlı durumlarda hala mümkündür, ancak CWS için Google sunucuları tarafından CRX'e işlenen düz bir ZIP yüklüyorsunuz. – Xan

+0

@Xan açıklama için teşekkür ederim, bence bir şekilde kafam karıştı. –