Объект работы с состоянием телефона
08.01.2017
Объект для отслеживания состояния телефона создаётся с помощью конструктора CreatePhoneState:
app.CreatePhoneState( [(str)] types )
Параметры:
- types - типы состояний, изменения которых нужно отслеживать:
- CellLocation: местоположение телефона (идентификатор базовой станции сотовой связи и код территории местонахождения телефона)
- DataConnection - состояние соединения
- DataActivity - направление передачи данных
- CallState - состояние вызова (данные и номер)
- ServiceState - состояние телефонной службы устройства
- SignalStrength - уровень сигнала
- CallForwarding - передача вызова на другой номер
- MessageWaiting - ожидание сообщения
Базовый пример
Выполнить в DS
Методы:
- GetType() - возвращает тип объекта:
myObject.GetType(); // возвращает "PhoneState"
- SetOnChange( callback( (str) type, {} data) ) - задаёт ФОВ для задания действий при изменении состояния. Система передаёт в параметре type - тип состояния и data - объект с информацией о данном состоянии:
- CellLocation:
- data.cellId - идентификатор соты
- data.areaCode - код области
- CallState:
- data.state:
- Idle - не активен
- OffHook - попытка вызова
- Ringing - соединение с абонентом
- DataActivity:
- None - нет передачи
- In - поступают
- Out - отправляются
- InOut - поступают и отправляются
- Dormant -спящий режим
- DataConnection:
- state:
- Disconnected - соединения нет
- Connected - соединение есть
- Suspended - подвешено
- Unknown - неизвестно
- networkType:
- CDMA - кодовый режим доступа к данным
- EDGE - надстройка над 2G и 2.5G (GPRS)-сетями
- EHRPD - усовершенствованная высокоскоростная пакетная передача данных
- EVDO_0 - 0.153 Мегабит/c
- EVDO_B - 27 Мегабит/c
- GPRS - пакетная радиосвязь 2.5G (надстройка над GSM с оплатой за объём данных)
- HSDPA - высокоскоростная пакетная передача данных к абоненту 3G
- HSPA - высокоскоростная пакетная передача данных 3.5G
- HSUPA - высокоскоростная пакетная передача данных от абонента"
- IDEN - Мобильная диспетчерская радиосвязь
- LTE - высокоскоростная передача данных 4G
- UMTS - универсальная система 3G
- Unknown - неизвестно
- MessageWaiting:
- true - ожидание сообщения
- false
- CallForwarding:
- true - передача вызова на другой номер
- false
- ServiceState:
- None - неизвестно
- EmergencyOnly - возможено использовать устройство только для вызова служб экстренной помощи
- InService - работает
- OutOfService - не работает
- PowerOff - отключено питание
myObject.SetOnChange( function( p_type, p_data ){ app.ShowPopup( 'Состояние изменилось ' + p_type} );
- Start() - запускает объект
- Stop() - останавливает объект