2017-08-13 186 views
0

Chrome擴展程序在嘗試打開popup時崩潰。錯誤信息出現在chrome://extensions/Chrome擴展程序在打開彈出窗口時損壞

This extension may have been corrupted. 

enter image description here

其他功能,如context menuoptions page工作正常。

問題僅在Chrome Store的版本中出現。調試版本在開發人員模式下工作正常

基本上可能發生了一些鉻更新後發生的問題。因爲擴展長期以來一直運行良好,並且沒有對代碼進行任何更改。

主要問題,我沒有信息來確定問題的原因,因爲即使chrome logs什麼也沒說。

問題:

有沒有辦法找出問題的原因是什麼?也許爲此目的存在一些特殊的日誌?

有沒有人在鉻面臨這樣的問題,並能夠解決它?

清單文件:

{ 
    "manifest_version": 2, 

    "name": "ReportJ", 
    "description": "The reporting helper for JIRA system.", 
    "homepage_url": "https://github.com/mishani0x0ef/reportj", 
    "version": "2.3.1", 
    "permissions": ["storage", "activeTab", "contextMenus"], 
    "background": { 
     "scripts": ["config.js", "js/urlService.js", "lib/jquery.min.js", "js/jira.js", "background.js"] 
    }, 
    "browser_action": { 
     "name": "ReportJ", 
     "default_icon": "img/logo.png", 
     "default_title": "ReportJ", 
     "options_page": "options.html", 
     "default_popup": "popup.html" 
    }, 
    "options_page": "options.html", 
    "icons": { 
     "16": "img/logo.png", 
     "48": "img/logo.png", 
     "128": "img/logo128x128.png" 
    }, 
    "content_scripts": [{ 
     "js": ["lib/jquery.min.js"], 
     "matches": ["*://*.localhost/*"] 
    }] 
} 
+2

爲什麼有'name'和''browser_action'內options_page'鑰匙?他們不屬於那裏... –

+0

@IvánNokonoko你是對的。我已經刪除它。然而,它不會幫助我的崩潰。 –

+0

您可能正在使用棄用的API。另外,我建議你在Chrome Canary中運行你的擴展。如果你有一個Linux,你可以嘗試通過終端運行鉻,它有這樣的更詳細的日誌。 – Deliaz

回答

2

如果在擴展一些文件有大小是4096的倍數,你可能打bug#720597,固定在Chrome 61

kingychiu's .py script測試尺寸:

import os 
import glob 
size_dir = {} 
for filename in glob.iglob('./**/*.*', recursive=True): 
    size =os.path.getsize(filename) 
    if size % 4096 == 0 and size != 0: 
    size_dir[filename] = os.path.getsize(filename) 

for name, size in size_dir.items(): 
    print(name, size) 

的Windows .bat文件:

@echo off 
for /r %1 %%a in (*) do (
    setlocal enableDelayedExpansion 
    set /a rem=%%~za %% 4096 
    if !rem! == 0 echo %%a 
    endlocal 
) 
pause 

的Windows .bat文件使用PowerShell的:

@powershell -c^
    "gci -r $(if('%1'){'%1'+'\*'}else{''}) | ?{ $_.Length%%4096 -eq 0 } | %%{ $_.FullName }" 
@pause 
相關問題