В начале программы задаю listener (класс чуть ниже) ATCommand atc1 = new ATCommand(false); ATListenerB card_listener = new ATListenerB(); atc1.addListener(card_listener);
задаю комманду AT+CLIP=1
ATCommand atc1 = new ATCommand(false); String response=atc1.send("AT+CLIP=1\r"); response OK
чтобы при входящем RING отображался номер, функция ATEvent при входящем звонке обрабатывается нормально, но выходит только RING без номера и при опросе AT+CLIP? выходит 0,1 . Я уже принудительно засунул AT+CLIP=1 в ATEvent и упорно ATEvent выходит только Ring без номера. Если выйти в коммандный режим и забить комманду AT+CLIP=1 а затем вернутся и прогнать программу заново то ATEvent выдает RING + номер и т.д. Такое ощущение что при вызове Callback функции ATEvent скидывается настройка AT+CLIP=1 в 0??? Занимаюсь программированием недавно мож не знаю какой тонкости подскажите. Спасибо.
класс который содержит в себе Callback функции для ATEvent.
class ATListenerB implements ATCommandListener { /** * */ public void ATEvent(String Event) { ATCommand atc; String response; try {
outStream.write((new String(Event)).getBytes()); atc = new ATCommand(true); response = atc.send("AT+CLIP=1\r"); outStream.write((new String(response)).getBytes());
} catch (Exception e) { }
/* pe/* perform other actions */
/* perform other actions */
} }
|