6

アプリに表示されるカスタム destop アイコンを取得しようとしていますが、何らかの理由で何をしても同じデフォルトの Java アイコンが表示されます。私は思いつく限りのことを試してみましたが、自分の jnlp ファイルを、アイコンが正常に機能しているように見える他のファイルと比較しました。私が読んだすべてによると、以下はうまくいくはずです。しかしもちろん、そうではありません:

<information>
    <title>MikesApp</title>
    <vendor>Mike</vendor>
    <homepage href="http://www.mikesapp.com/"/>
    <description>Mikes App.</description>
    <icon kind="shortcut" href="res/icon64x64.png" width="64" height="64"/>
    <offline-allowed/>
    <shortcut>
        <desktop/>
    </shortcut>
</information>

どんなアイデアでも大歓迎です。

4

5 に答える 5

5

順番に、次のことを試します。

  1. サイズが 32x32 のアイコンを作成し、追加として追加し<icon kind="shortcut"...ます。仕様によると、サイズはデスクトップ アイコンに使用されます。
  2. 64x64 アイコンを「デフォルト」として使用します。たとえば、新しい<icon>要素は次のようになります。

    <icon href="res/icon64x64.png" width="64" height="64"/>
    <icon kind="shortcut" href="res/icon32x32.png" width="32" height="32"/>
    <icon kind="shortcut" href="res/icon64x64.png" width="64" height="64"/>
    
  3. 画像は、 xml 要素のcodebase属性に関連してアクセスされることに注意してください。jnlp

  4. これらのどれもうまくいかない場合は、あなたの JNLP を私のものと比較してみてください。

私は、この JNLP がちょっと面倒なことだと認識しています。これらのいずれかが機能することを願っています。

于 2010-01-19T16:12:34.710 に答える
3

同じ問題がありました。最初は問題なく動作していましたが、時間の経過とともに (いくつかの Java の更新でしょうか?) 動作しなくなりました。トラブルシューティングに取り掛かると、javaws が gzip 対応であることを送信しても、gzip 応答が処理されないことがわかりました。これらのアイコンの gzip をオフにすると、再び正常に機能しました。

于 2012-11-21T18:41:46.353 に答える
3

あなたの場合の問題は、CODEBASE属性が欠落していることだと思います。1 つの作業スニペットを参照してください。

<?xml version="1.0"?>
<jnlp spec="1.5+" 
      codebase="http://www.sweethome3d.com/" 
      href="SweetHome3D.jnlp">
  <information>
    <title>Sweet Home 3D</title>
    <vendor>eTeks</vendor>
    <homepage href="http://www.sweethome3d.com/"/>
    <description>Sweet Home 3D</description>
    <description kind="short">Arrange the furniture of your house</description>
    <icon href="SweetHome3DIcon.gif"/>
    <icon kind="splash" href="SweetHome3DSplashScreen.jpg"/>
    <offline-allowed/>
    <shortcut online="false">
      <desktop/>
      <menu submenu="eTeks Sweet Home 3D"/>
    </shortcut>
    <association extensions="sh3d sh3l sh3f sh3t sh3p" 
                 mime-type="application/SweetHome3D"/>
  </information>
于 2010-11-10T10:16:43.500 に答える
1

アクセスできる場合は、JavaFX in Action ブックにこれを行う方法の例があります。res/icon64x64.png ファイルが、JNLP の場所を基準にして、アプリがホストされているサイトから実際にダウンロードできることを確認する必要があります。ブラウザーに直接ロードして、使用可能/有効であることを確認してください。

于 2010-01-19T15:31:35.230 に答える
1

残念ながら具体的な答えはありませんが、Project MaiTaiは JavaFX で記述されたオープン ソース アプリケーションであり、カスタム デスクトップ アイコンがあります。

まだ行っていない場合は、MaiTai の JNLP コードを確認すると、いくつかの指針が得られるかもしれません。

于 2010-01-17T21:42:38.860 に答える