Как сохранить данные Health.app

История о том, как я бекапил-ресторил информацию приложений Здоровье/Звонки/Смс на iPhone.

В современном мире борьба за пользователя выходит на первый план, когда дело касается персональных сведений. С начала это были поисковые запросы и электронная почта, позже Google заставил поделиться адресной книгой и календарём. Facebook придумал новый способ сбора информации о пользователе, его привычках, действиях, друзьях и прочими связями - графами.

Технологические гиганты трудятся над собственными экосистемами, которые объединяет и связывает различные технологии. Контакты, календарь, заметки - большинство из нас синхронизирует свои телефоны с облачными сервисами. Ну а над чем же работают ребята из Купертино? Решили создать своё облако - iCloud, которое поможет соединить устройства между собой. Mac, iPhone, iPad - потребительская электроника создаётся с одной целью - стать частичкой экосистемы iCloud.

Хочешь послушать музыку? Открой iTunes и наслаждайся!

Хочешь посмотреть новый фильм? Возьми напрокат через Apple TV.

Потерял телефон? Не переживай, мы сделали копию и ты сможешь восстановить свою информацию.

Дьявол кроется в мелочах

Я сохраняю резервную копию iPhone в облаке iCloud. Изредка создаю локальную копию через iTunes. Контакты и календарь синхронизируются через iCloud c Mac. Всем это очевидно. Мой iPhone 5S с рождения умеет считать шаги, информацию собирают сторонние программы, например, фитнес трекеры. Я пользовался приложением Moves.app (его приобрёл Facebook), помимо снятия информации с датчика движения M7, приложение отслеживает географическое передвижение.

Хочешь узнать, сколько времени ты простоял в пробке? Не проблема.

За сколько ты в среднем доезжаешь до работы? Пожалуйста.

Я с этим наигрался, но количество шагов не хотел терять. Вышла iOS8 со своим видением HealthKit - технология, которая объединяет персональную электронику устройства, отслеживает, собирает и предоставляет медицинскую информацию. До запуска Health.app фитнес трекеры заботились о хранении синхронизации собранных счётчиков. Пользовался месяц одним приложением, вышло новое приложение с интересными функциями, а перенести собранную информацию в него нельзя. Да, некоторые разработчики добавили синхронизацию между приложениями, но как правило, с она работает ограничениями.

Стандартное приложение Health.app разрабатывалось с целью объединения информации о здоровье в одном месте. Apple позаботилась о сохранности личной информации: приложения не хранят информацию у себя, не передают третьим лицам. Вне ограничения - отрисовка графики, чтение счётчиков.

У меня скопилась информация(количество шагов и вес) за год. Демонстрация графиков, установка целей, отслеживание прогресса. Выглядит чудно. Но вот незадача. Информация с Health.app не синхронизируется. Никак. Есть возможность создать резервную копию с установленным шифрованием. Восстановить информацию Health.app предлагается через восстановление полной копии iPhone. Как правило, этот процесс проходит без проблем, если вы восстанавливаетесь в рамках одной мажорной версии iOS(например, iOS8). Когда выйдет iOS9, откатиться на предыдущую версию прошивки не получиться. Если во время обновления произойдёт фатальная ошибка - информация (речь исключительно про Health.app) будет стёрта. Если купить новый iPhone, штатным способом нельзя перенести информацию из Health.app со старого телефона на новый.

На данный момент есть один способ экспортировать информацию из Health.app (Здоровье - Медданные - Все - Экспорт) через xml файлы.

Я провёл исследование, с целью избавить себя от такого досадного недоразумения.

Экспорт и импорт данных Здоровье [Health.app]

экспорт

Есть такие замечательные ребята как Quantified Self, которые выпустили приложение для экспорта информации из приложения Health.app в формате CSV.

QS Access - экспорт статистики из приложения Здоровье.

Чтобы экспортировать статистику по весу тела, выбираем показатель и выставляем интервал - 1 день. Один день, а не каждый час? Чтобы не забивать статистику нулями при импорте. Файл со статистикой отправляем себе по почте или любым другим способом.

импорт

Я нашёл одно приложение, которое направленно на импорт любой статистики напрямую в Health.app. Приложение так и называется - Health Importer, цена 169p.

я 10 лет бегаю и собираю статистику, хочешь сказать, я перенесу её на iPhone? Да.

После импорта статистики удаляем приложение. “У Вас есть данные с Health Importer в Медданных, Оставить/Удалить?” – отвечаем оставить.

Как я импортировал сообщения и историю звонков

Чтобы перенести историю звонков и сообщений со старого iPhone на новенький iPhone 6, воспользуйтесь утилитой:

iBackupbot

Программа достанет/загрузит информацию из архива с бекапом. В первую очередь достанем базы сообщений и звонков из старого бекапа(iPhone 5S), после этого создадим архив с нового iPhone 6 и заменим в нем историю сообщений и звонков от iPhone 5S. Путь к файлам для экспорта/импорта:

System Files \> HomeDomain \> Library \> SMS \> sms.db
System Files \> HomeDomain \> Library \> SMS \> Attachments  
System Files \> HomeDomain \> Library \> CallHistory  

После сохранения файлов истории, порядок для восстановления будет такой:

  1. Восстанавливаем iPhone/прошиваем на чистую прошивку через iTunes.
  2. Делаем локальный бекап через iTunes (отключаем шифрование).
  3. Открываем iBackupbot, заменяем в бекапе iPhone6 файлы sms.db и call history (от iPhone 5S).
  4. Восстанавливаем iPhone 6 на модифицированный бекап через iTunes.
  5. Готово!

Береги честь смолоду

Не теряйте свои данные. Относитесь бережно. Вот так просто перенести историю звонков и смс на новый телефон. Если есть более простой способ - поделитесь в комментариях!

iOS, iPhone