Змушуємо iphone зберігати кеш карт вічно - проект appstudio

Змушуємо iphone зберігати кеш карт вічно - проект appstudio
Програма «Карти» на iPhone працює досить дивно, не кажучи вже про всілякі проблеми з GPS. Воно має огидне властивість кожного разу довантажувати карти з Інтернету. Виходить, що нормально їм користуватися можна тільки при наявності безлімітного трафіку GPRS (що або рідкість, або розкіш), або Wi-Fi поблизу (вдома, на роботі, в кафе та ін.). Але ж «Карти» найчастіше потрібні саме в дорозі (особливо в зв'язці з GPS) - а це обернеться для вас величезними рахунками від мобільного оператора за трафік. І це в Росії, а якщо ви ризикнете користуватися картами за кордоном, то до цифр в цих рахунках додасться ще пара нулів праворуч. Що ж робити? Насправді, є цілих три виходи.

Вихід перший: не користуватися «Картами». Спосіб радикальний, але дієвий, благо що існує велика кількість альтернатив, не в приклад краще працюють з навігацією і мають оффлайн-кеш карт міст і доріг - iGO, Sygic, NAVIGON тощо. Головний їх мінус - цінник.

Вихід другий: створити для «Карт» кеш на комп'ютері. Вихід дуже хороший, але зараз ми його радити всім користувачам вже не можемо. З моменту виходу прошивки 3.1 багато чого змінилося в системі обробки кешей карт iPhone. Раніше справа йшла дуже просто - на комп'ютері викачують все зображення карт Google або Яндекса для вибраного вами ділянки місцевості, потім всі вони запаковуються в кеш, а вам залишається залити його в апарат.

Зараз є цілих дві проблеми:

  • iPhone за абсолютно несподіваної причини може відмовитися прийняти ваш кеш. Імовірність успіху - близько 35-40%. Іншими словами, годинник (а то і дні), убиті вами на викачування карт з Інтернету, можуть виявитися витраченими даремно.
  • Затирання залитого кеша при наявності доступу до Інтернету. Навіть якщо вам пощастило, і ви впоралися з першою проблемою, вас чекає друга. Кеш буде працювати до першого запуску «Карт» при включеному GPRS або Wi-Fi. Після цього залитий вами многомегабайтних файл з картами затрётся кілобайтний кешем. Щоб уникнути цього, можна повозитися в правами доступу на файл кеша карт. Навіть якщо заборонити його перезапис, то iPhone OS його просто зітре і створить новий (раніше замість цього кеш все одно вантажився). Якщо повністю заборонити перезапис не тільки кеша, але і вмісту всієї папки, в якій він лежить, почнеться повна містика - кеш буде лежати на місці, але карти все одно стануть грузиться не з нього, а з Мережі.

До чого ми все це говоримо? До того, що дане рішення, яке кілька місяців тому здавалося універсальним, тепер навряд чи можна назвати робочим. Тому залишається третій вихід.

Третій вихід: змусити iPhone вічно зберігати створюється додатком «Карти» кеш. Це не найкраще рішення, зате воно без проблем працює на прошивках 3.1, 3.1.2 та 3.1.3. Відмінність від другого варіанту в тому, що на комп'ютері нічого не створюється і в iPhone НЕ закачується. Ви просто забороняєте iPhone оновлювати вже одного разу закачаний кеш. Наприклад, ви можете підключитися до Wi-Fi, витратити годину-другу на вдумливе вивчення карти міста, і після цього спокійно їздити по місту з вимкненим GPRS або взагалі в авіарежіме.

Для того, щоб кеш карт iPhone зберігався вічно, вам буде потрібно безкоштовна утиліта Maps Enhancer з Cydia. Вона виконана у вигляді додаткового пункту в налаштуваннях iPhone. Там зібрано чимало налаштувань:

Змушуємо iphone зберігати кеш карт вічно - проект appstudio
Пробіжить по ним:

Keep maps cache - найголовніша настройка. Саме вона включає збереження кешу карт і захист його від видалення.

Над нею ви зможете стежити за розміром кеша. Майте на увазі, що пристойних розмірів місто в пристойному масштабі може займати більше гігабайти. Якщо це не входить у ваші плани, можете очистити збережений кеш кнопкою «Delete existing cache».

Секція «Maximum zoom level» задає зберігається масштаб карт. Чим вище індекс масштабу (він варіюється від 2 до 19), тим детальніше зображення на карті. Наприклад, при індексі 17 ви побачите всі номери будинків. Для комфортної роботи цілком вистачає 16-17 індексу. Знайте, що кожен наступний рівень індексу збільшує розмір кеша в рази. Іншими словами, 18й рівень мало що дасть вам, крім подвоєння (а то і потроєння) розміру кеша.

Змушуємо iphone зберігати кеш карт вічно - проект appstudio

Масштаб можна налаштувати окремо для режиму карти (Standard), супутника (Satellite) і гібридного уявлення (Hybrid).

Preferred language дозволяє вам форсувати вибір певної мови для підписів на карті. За замовчуванням це поточну мову iPhone OS, але можна вибрати будь-який інший.

Тепер про те, як перевірити Maps Enhancer в дії:

  1. Підключіться до Wi-Fi, знайдіть своє місце розташування і пошарте по околицях. Так ви збережете перші знімки в майбутній кеш.
  2. Закрийте «Карти», включите авіарежім, вимкніть Wi-Fi.
  3. Запустіть «Карти» знову.
  4. Якщо ви бачите карту - вважайте, що все вийшло. Але не зайвим буде спробувати вийти за межі раніше оглянутих на карті околиць. Ви повинні побачити наступну картину:

Змушуємо iphone зберігати кеш карт вічно - проект appstudio
Це і є межа між збереженим і Незбережені в кеші простором.

Сподіваємося, що Map Enhancer заощадить вам немало GPRS-трафіку. Завантажити програму можна з стандартного сховища Cydia - BigBoss.

Матеріали в тему

Схожі статті