iOS очищает кеш после выхода из моего телефонного промежутка? - PullRequest
1 голос
/ 30 ноября 2011

Я занимаюсь разработкой приложения для платформ Android и iOS. Мое приложение имеет много изображений, которые имеют внешний источник.
Когда соединение установлено, изображения отображаются правильно. Теперь, когда я закрываю приложение, перехожу в режим полета и запускаю приложение, изображения отображаются из кэша браузера в Android, а не в iOS? Так очищает ли кеш браузера iOS после того, как приложение phonegap закрывается, а Android нет? или я что-то здесь упускаю?

Ответы [ 3 ]

1 голос
/ 30 ноября 2011

Если вы говорите о каталоге кэша, полученном следующим образом

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *cachePath = [paths objectAtIndex:0];

Раньше он оставался нетронутым, но его можно очистить начиная с iOS 5, см. этот пост . Apple исправляет эту проблему в бета-версиях iOS (предоставляя возможность постоянного кэширования файлов, которые не синхронизируются с iTunes или iCloud).

1 голос
/ 30 ноября 2011

вам нужно создать файл manifest.php в репозитории HTML и загрузить основной HTML-файл в приложение phoneGap. Это способ увидеть веб-приложение в кеше, а также в автономном режиме.

это код для 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">

Наслаждайтесь.

1 голос
/ 30 ноября 2011

В этом вопросе есть информация . (Я предполагаю, что вы используете UIWebView.) Однако во время написания этого вопроса у них возникали некоторые ошибки в системе кэширования URL-адресов iPhone - я не знаю, были ли эти ошибки с тех пор исправлены.

...