1

アプリにニュースページを実装しています。新しい画像をダウンロードして電話に保存するページが必要です。

私の質問は、どの画像がダウンロードされ、どの画像がダウンロードされていないかをどのように確認するのですか?

画像を yymmddhhss.png として保存することを考えていましたが、それはずさんなようです。誰かが url.hashCode() 実装を使用しているのを見ましたが、それが何をするかわからないので、私のアプリケーションで機能するかどうかわかりません。

組み込み関数またはファイル名のトリックを使用する実装を希望します。最後にダウンロードした画像の名前/日付を保存するように DB や設定をセットアップしたくありません。

4

1 に答える 1

2

hashCode() を使用しないでください。それはJava固有です。もっと調べてみると - hashCode()

Java アプリケーションの実行中に同じオブジェクトに対して複数回呼び出された場合は常に、オブジェクトの equals 比較で使用される情報が変更されていない限り、hashCode メソッドは一貫して同じ整数を返す必要があります。この整数は、あるアプリケーションの実行から同じアプリケーションの別の実行まで一貫性を保つ必要はありません。


最も簡単な解決策はmd5、完全な URL を使用し、それを使用してファイルに名前を付けることです。これにより、一貫したファイル名の長さが得られ、他の画像と競合する可能性が最小限に抑えられます。ファイルが書き込まれた時点から直接取得できるため、名前に日付を追加する必要はありません。

MD5 を取得する簡単な例 -

于 2012-10-18T05:10:57.853 に答える