WhatsWhere

Печать

Записная книжка – иллюстрированный каталог с напоминаниями прямо на вашем телефоне, инструмент для сбора полезной информации. Программа использует для хранения и переноса два типа файлов WWB и WWI, здесь я приведу спецификацию обоих типов файлов.

Спецификация файла WWI
Спецификация файла wwb


Спецификация файла wwb

version 1.0

Заголовок

N Тип Константа Назначение Примечания
1 byte 0x57 Сигнатура файла. Magic code integer: 0x57574252
2 byte 0x57
4 byte 0x42
5 byte 0x52
3 integer 0x01 Версия структуры файла
6 integer Дата
  1. Тип integer (4 байта) и short (2 байта) сначала идет старший байт big-endian
  2. Тип float число с плавающей запятой  (4 байт), в соответствии IEEE 754-1985
  3. Тип double число с плавающей запятой двойной точности (8 байт), в соответствии IEEE 754-1985
  4. Дата хранится в формате unix-time
  5. Строки хранятся в кодировке UTF-8

Поддерживаемые типы объектов

После заголовка идут блоки данных (объектов), перед каждым из них идет идентификационный байт, который указывает на его тип.


Объект: Каталог

Назначение ТипПримечания
Типbyte Значение = 1
Тип записи в каталогеbyteПапка = 1, Страница = 2
ИД записиinteger
Дата созданияinteger
Родительinteger
Приоритетbyte
Наименованиеstring
Примечаниеstring

Объект: Данные

Назначение ТипПримечания
ТипbyteДанные = 2
ИД Записиinteger
ИД Родителяinteger
Сортировкаinteger
Флаг пометки удаленияbyte0 — активен, 1 — удален
WWI ОбъектWWI ObjectСмотрите спецификация wwi

Объект: Атрибуты

Назначение Тип Примечания
Тип byte Значение = 3
ИД Записиinteger
Тип записиbyteДанное поле в зависимости от контекста
Дата созданияinteger
Родительinteger
Наименованиеstring
Данные строкаstring
Данные типа Integerinteger
Данные типа Doubledouble

Объект: Preview

 N Назначение  Тип  Примечания 
1 Тип (4) byte  Значение = 4
2 ID ассоциированной страницы
3 Объект WWI типа файл wwi file  в поле filename имя исходного файла


Спецификация файла wwi

version 2.0

Заголовок

N Тип Константа Назначение Примечания
1 byte 0x57 Сигнатура файла. Magic code integer: 0x57574953
2 byte 0x57
4 byte 0x49
5 byte 0x53
3 integer 0x02 Версия структуры файла
6 integer Дата
7 byte Важность 0-4
8 string Наименование
9 string Описание
10 integer Длина данных изображения. JPEG
11 image-data Данные изображения
  1. Тип integer (4 байта) и short (2 байта) сначала идет старший байт big-endian
  2. Тип float число с плавающей запятой  (4 байт), в соответствии IEEE 754-1985
  3. Тип double число с плавающей запятой двойной точности (8 байт), в соответствии IEEE 754-1985
  4. Дата хранится в формате unix-time
  5. Строки хранятся в кодировке UTF-8

Поддерживаемые типы объектов

После заголовка идут блоки данных (объектов), перед каждым из них идет идентификационный байт, который указывает на его тип.


Объект: Текст

 N Назначение  Тип  Примечания 
1 Тип (2) byte
2 Дата создания объекта integer
3 Текст string

 

Объект: Файл

 N Назначение  Тип  Примечания 
1 Тип byte 1-Изображение
3-Произвольный файл
7-Голосовой файл
2 Дата создания объекта integer
3 Имя файла string
4 Подпись (Наименование объекта) string
5 MIME type string
6 Тело файла blob

 

Объект: Напоминание

 N Назначение  Тип  Примечания 
1 Тип (4) byte
2 Дата создания объекта integer
3 Наименование string
4 Дата и Время integer
5 Дни недели short
Monday 0x01
Tuesday 0x02
Wednesday 0x04
Thursday 0x08
Friday 0x10
Saturday 0x20
Sunday 0x40
6 Тип повторения short 0 – Без повтора
1 – Раз в день
2 – В определенные дни недели
3 – Раз в неделю
4 – Раз в месяц
5 – Раз в год

 Примечание: Если нужно два и более дней недели, просто объедените их по “ИЛИ”

Объект: Координаты

 N Назначение  Тип  Примечания 
1 Тип (5) byte
2 Дата создания объекта integer
3 Наименование string
4 Широта double latitude
5 Долгота double longitude
6 Масштаб float zoom

 

Объект: Техническое обслуживание автомобиля

 N Назначение  Тип  Примечания 
1 Тип (8) byte
2 Дата создания объекта integer
3 Наименование string
4 Пробег integer
5 Стоимость double

 

 

Используемые типы данных


Строка: тип string 

 N Назначение  Тип  Примечания 
1 Длина строки integer
2 Строка string-data

 

Данные: тип blob

 N Назначение  Тип  Примечания 
1 Длина данных integer
2 Данные blob-data

 

 

Одна идея о “WhatsWhere

  1. Andreas

    I Love the app! Why Dont You add an upgrade option to remove the ads?
    Althought they are not That annoying it would Be a Nice way format people to support You (And would Be pretier :p)

Добавить комментарий

Ваш e-mail не будет опубликован.