Android と iOS の両方のプラットフォーム用のアプリを開発しています。私のアプリには、外部 src を持つ多くの画像もあります。
接続があれば、画像は正しく表示されます。アプリを閉じて機内モードにしてアプリを起動すると、画像は Android のブラウザー キャッシュから表示されますが、iOS では表示されませんか? iOS は phonegap アプリを閉じた後にブラウザーのキャッシュをクリアしますが、Android はクリアしませんか? または私はここに何かが欠けていますか?
2644 次
3 に答える
1
リポジトリHTMLにmanifest.phpを作成し、phoneGapアプリでプライマリHTMLファイルを読み込む必要があります。これは、キャッシュ内のWebアプリを表示する方法であり、デバイスがオフラインのときも同様です。
thaはphpファイルのコードです:
<?php
header('Content-Type: text/cache-manifest');
echo "CACHE MANIFEST\n";
$hashes = "";
$dir = new RecursiveDirectoryIterator(".");
foreach(new RecursiveIteratorIterator($dir) as $file) {
if ($file->IsFile() && $file != "./manifest.php" && substr($file->getFilename(), 0, 1) != ".") {
echo $file . "\n";
$hashes.= md5_file($file);
}
}
echo "# Hash: " . md5($hashes) . "\n"; ?>
これは、ページでコードを開始するために上部にあるhtmlファイルに必要なコードです。
<html manifest="manifest.php">
楽しみ。
于 2011-11-30T11:44:50.113 に答える
1
この質問には、それに関する情報がいくつかあります。(UIWebViewを使用していると思います。)ただし、その質問が書かれた時点で、iPhoneのURLキャッシュシステムでいくつかのバグが発生していました.それらのバグが修正されたかどうかはわかりません.
于 2011-11-30T11:17:41.940 に答える
1
このように取得したキャッシュディレクトリの話なら
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *cachePath = [paths objectAtIndex:0];
以前はそのまま残されていましたが、iOS 5 以降ではクリアできます。この関連記事を参照してください。Apple は iOS のベータ版でこの問題を修正しています (iTunes または iCloud に同期されない永続的なキャッシュ ファイルの可能性を考慮して)。
于 2011-11-30T11:19:41.080 に答える