web-dev-qa-db-ja.com

Chromeからインストールされた拡張機能は、「パッケージが無効です。詳細:ファイルまたはディレクトリ名_metadata ...の拡張機能をロードできません。」

CRXがChromeウェブストアに追加されると、Googleはディレクトリ_metadata crxへ。 Chrome=の古いバージョンは、このディレクトリについて知らない(Chrome 27でテスト済み)、このエラーをスローする:

Package is invalid. Details: 'Cannot load extension with file or directory name
_metadata. Filenames starting with "_" are reserved for use by the system.'.

この拡張機能を古いバージョンのChromeにインストールしようとすると、このエラーが表示されます: https://chrome.google.com/webstore/detail/allcast-receiver/hjbljnpdahefgnopeohlaeohgkiidnoe

良い説明: https://groups.google.com/a/chromium.org/d/msg/chromium-apps/huDqSeaQx3Q/Z5GOMxA7lQIJ

これに対する回避策はありますか?これにより、古いバージョンのChromeをサポートできなくなります。

16
Don Rhummy

拡張機能の開発者として、このバグを回避することはできません。ディレクトリがChrome Web Store(CWS)によって追加されているためです。拡張機能を配布しますが、その拡張機能はChrome=ユーザーの大半は使用できません。これは、GoogleがCWSの外部からの拡張機能の取得を積極的に阻止しようとしたためです。

バグを修正できるのはCWSチームだけです。ユーザーエージェントがディレクトリをサポートしていない場合(Chrome 30-)、_metadataディレクトリなしでcrxファイルを提供する必要があります。このバグは https://code.google.com/p/chromium/issues/detail?id=377278 で追跡されています。これまでのところ、応答は次のとおりです。

Chromeの古いバージョンを修正することはできません。ウェブストア側はb/15176392で追跡されましたが、サポートをChrome 30に戻すことはほとんどありません。

問題にスターを付けて、更新の通知を受け取り、バグを修正することを本当に望んでいることを知らせます。十分なユーザー/開発者が苦情を言う場合、Googlemightがバグを修正します。

11
Rob W

CRXの解凍(必要に応じてサフィックス名を「.Zip」に変更)してから、Chromeで[設定]-> [拡張機能]の[開発者モード]を選択し、[アンパックされた拡張機能をロードします..]を選択し、抽出したフォルダーを選択します。

追伸「_」(アンダースコア)で始まるフォルダーの名前を変更し、マニフェストJSONから"default_locale":"en",行を削除して、それが機能するようにしなければなりませんでした

13
Adam l

この回答は、次のようなCRXファイルに適用されます:

  • Chrome Web Storeからダウンロード
  • 開梱してロードしようとしています

_localesフォルダーは問題になりません。マニフェストにdefault_localeキーが含まれている限り、Chrome=は展開された拡張機能を期待どおりにロードします。

_metadataは問題のあるフォルダーです。これらのファイルの改ざんを防ぐために、すべての拡張ファイルの暗号化ハッシュが含まれており、CWSによって自動的に追加されます。これは、展開された拡張機能のコンテキストでは意味がなく、他の用途はないため、このフォルダを削除するだけです

4
Xan

一部の人々は作品のリセットを発見しました。ごみ箱を空にする機能があることを発見した人もいます。誰も私のために働いた。再インストールしたchromeも動作しませんでした。

代わりに、これは私のために働いた(Xanが言ったことと同じ):私は.crxファイルをダウンロードし、それを解凍し、フォルダを消去する

_metadata

次に、手動でインストールします。これは私のために働いた。

0
George

_METADATAフォルダーを削除し、インターネットダウンロードマネージャーが拡張機能の1つとして追加されることを確認します。

0