2011-06-21 16 views
0

BlackBerryアプリケーション用のOTAダウンロードを設定しています。私は、複数のCODファイルを含むJADファイルを含むフォルダと、JADファイルへのリンクを持つ単純なHTMLダウンロードページを持っています。ダウンロードは、各デバイスで初めて正常に動作しますが、更新されたバージョン(新しいJADとCODファイル)をインクリメントしたMIDlet-Version:をJADファイルに置き、デバイスからダウンロードすると、ダウンロード用の表示ページには古いバージョンを選択し、ダウンロードボタンをクリックすると、古いバージョン1.0を新しいバージョン1.0に置き換えるかどうかを尋ねるダイアログが表示されます。BlackBerryでWebブラウザのキャッシュをプログラムでクリアするにはどうすればよいですか?

オプション/キャッシュに行き、キャッシュをクリアしてからダウンロードページをリロードし、OTAリンクをクリックすると、新しいバージョンが1.1として正しく表示されるようになりました。それで、デバイス上の私のブラウザが古いJADファイルをキャッシュしているようです。

ブラウザのキャッシュをクリアすると問題が解決するため、プログラムでこれを行う方法はありますか?とにかく、私のBBアプリケーションからブラウザのインス​​タンスを開いているので、できるだけ簡単に実行できます。あるいは、キャッシュされないようにJADファイルに設定できるプロパティ/属性はありますか?

答えて

2

セキュリティ上の理由から、BlackBerryでは、サードパーティのアプリケーションがブラウザの履歴やキャッシュを操作することを許可していません。ただし、表示されている問題の回避策は、.jadファイルを提供するページにCache-Control: no-cache HTTPヘッダーを追加することです。これにより、BlackBerryブラウザは常に新しいバージョンを探すようになります。

+0

私は、JADファイルを提供するページでは、既にキャッシュなしのヘッダーを持っています。この問題は、JAD自体がキャッシュされているように見えます。 – MusiGenesis

+0

'JADファイルを提供しているページ'によって、実際の.jadファイルを参照すると、ヘッダが返されるか、jadファイルにアクセスするページを参照していることを意味しますか?後者の場合、jadファイルがまだキャッシュされている理由を説明します。 – Laepdjek

+0

@Laepdjek:「JADファイルを提供するページ」とは、JADファイルへのクリック可能なリンクを含むページを意味します。 BBブラウザは時々JADをキャッシュしているので、JAD/CODの新しいバージョンを自分のウェブサイトに置くと、ユーザーがダウンロードリンクをクリックすると、すでにある古いバージョンをインストールするかどうかを尋ねるポップアップが表示されます。このような場合は、ブラウザのキャッシュをクリアしてリンクをもう一度クリックし、*をクリックして最新バージョンのダウンロードを取得します。 – MusiGenesis

0

例:

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Cache-Control" content="no-cache"/> 
<meta http-equiv="Pragma" content="no-cache"/> 
<meta http-equiv="Expires" content="0"/> 
<title>my web Page</title> 
</head> 
<body>  
</body> 
</html> 
関連する問題