interface Listener {
void onKatokNotification(String title, String msg);
void onLineNotification(String title, String msg);
void onFacebookMsgNotification(String title, String msg);
}
@TargetApi(Build.VERSION_CODES.KITKAT)
public class NotificationManager extends NotificationListenerService implements Listener {
static final String KATOK_PACKAGE_NAME = "com.kakao.talk";
static final String LINE_PACKAGE_NAME = "jp.naver.line.android";
static final String FACEBOOK_MSG_PACKAGE_NAME = "com.facebook.orca";
boolean mKatokNoti;
boolean mLineNoti;
boolean mFacebookMsgNoti;
TTSManager tts = new TTSManager(getApplicationContext());
@Override
public void onNotificationPosted(StatusBarNotification sbn) {
Log.d("TAG", "onNotificationPosted");
String title = null;
String msg = null;
String pack = sbn.getPackageName();
Bundle extras = sbn.getNotification().extras;
title = extras.getString("android.title");
msg = extras.getString("android.text");
Log.e("TAG","title : "+title);
Log.e("TAG","msg : "+msg);
if (pack.equals(KATOK_PACKAGE_NAME)) {
onKatokNotification(title, msg);
} else if (pack.equals(LINE_PACKAGE_NAME)) {
onLineNotification(title, msg);
} else if (pack.equals(FACEBOOK_MSG_PACKAGE_NAME)) {
onFacebookMsgNotification(title, msg);
}
}
@Override
public void onKatokNotification(String title, String msg) {
// TODO Auto-generated method stub
tts.doTTS(title, msg);
}
@Override
public void onLineNotification(String title, String msg) {
// TODO Auto-generated method stub
tts.doTTS(title, msg);
}
@Override
public void onFacebookMsgNotification(String title, String msg) {
// TODO Auto-generated method stub
tts.doTTS(title, msg);
}
}
NotificationListenerService를 이용해서 노티피케이션들을 가로채서 TTS로 뿌려주는 중입니다.
TTS와 연결 과정에서 갑자기 되던 onNotificationPosted 가 호출이 안되네요 로그로 찍어봐도 안됩니다.