0

Safari 拡張機能をギャラリーにアップロードしようとしています。私がそれをするたびに、数日待った後にエラーメッセージが表示されます:

審査中に、拡張機能の自動更新をまだ有効にしていないことがわかりました。

涼しい!しかし、ドキュメントに従って正確に実行しました。ext を送信したとき、更新マニフェストとしてhttp://up.thefreedictionary.com/Info.plistという URL を記載しました。内容は次のとおりです。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0">
<dict>
<key>Extension Updates</key>
<array>
<dict>
<key>CFBundleIdentifier</key>
<string>dictionary</string>
<key>Developer Identifier</key>
<string>SZ9T8BXLWC</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>URL</key>
<string>
http://up.thefreedictionary.com/TheFreeDictionary.safariextz
</string>
</dict>
</array>
</dict>
</plist>

ここで何が間違っているのかもしれません。そして、自動更新なしでは、なぜ公開できないのでしょうか?

PS CFBuldleIdentifier は「辞書」です。私のアプリバンドルIDに対応しています。問題ですか?

4

3 に答える 3

1

ドキュメントページには次のように書かれています。

  • 拡張子が.plistのテキストファイルを作成し、Webサーバーに配置します
  • ExtensionBuilderの[マニフェストの更新]フィールドにファイルのURLを含めます

私はあなたが2番目のステップをしたと思います。

CFBundleIdentifierについては、ここで説明するように、逆引きDNS形式に従う必要があります。

バンドルID文字列は、英数字(AZ、az、0-9)、ハイフン(-)、およびピリオド(。)文字のみを含むURI(Uniform Type Identifier)である必要があります。文字列も逆引きDNS形式である必要があります。たとえば、会社のドメインがAjax.comで、Helloという名前のアプリを作成する場合、アプリのバンドル識別子として文字列com.Ajax.Helloを割り当てることができます。

ドキュメントの例では、識別子としてcom.yourCompany.safari.firstExtensionNameを使用しています。ただし、識別子に「safari」が含まれている必要はないと思います。

于 2012-11-12T17:20:14.640 に答える
1

見つけた!

問題は、info.plist (拡張機能の一部) で update.plist への URL について言及していなかったことです。私は単純に知りませんでした。提出フォームにこの URL を記載しましたが、これで十分だと思っていました。

ドキュメントを確認したところ、文字通り「拡張機能ビルダーの更新マニフェスト フィールドにファイルの URL を含めてください」と書かれています。代わりに、「拡張機能の一部であるファイルの URL を info.plist に追加してください」と言われれば、私は間違いなくそうします。しかし、私が個人的に拡張機能を開発しないとすぐに (この作業をチームの別のプログラマーに任せます)、「拡張機能ビルダー」と提出フォームを混同しました。

于 2012-11-13T04:49:09.073 に答える
0

Update.plist にはいくつかの問題があります。参考までに僕の1枚です。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Extension Updates</key>
    <array>
        <dict>
            <key>CFBundleIdentifier</key>
            <string>com.canisbos.ccnotepad</string>
            <key>Developer Identifier</key>
            <string>ZANVZTSER6</string>
            <key>CFBundleVersion</key>
            <string>104</string>
            <key>CFBundleShortVersionString</key>
            <string>1.0.4</string>
            <key>URL</key>
            <string>http://dl.dropbox.com/u/23990/Canisbos/ccNotepad.safariextz</string>
        </dict>
    </array>
</dict>
</plist>

上部の XML および DOCTYPE 宣言が欠落しているようですが、さらに重要なのは、CFBundleIdentifier キーとペアになっている文字列が正しくないことです。Info.plist のものと同じである必要があり、おそらく「辞書」にすることはできません。

編集: Update.plist であるはずのファイルに Info.plist という名前を付けているように見えますが、これが必要かどうかはわかりません。

于 2012-11-07T03:21:43.303 に答える