/** * get instance of EaseUI * @return */ public synchronized static EaseUI getInstance(){ if(instance == null){ instance = new EaseUI(); } return instance; }
/** * get EaseUser according username * @param username * @return */ public static EaseUser getUserInfo(String username){ if(userProvider != null) return userProvider.getUser(username); return null; }
void initNotifier(){ notifier = createNotifier(); notifier.init(appContext); }
/** * handle the new message * this function can be override * * @param message */ public synchronized void onNewMsg(EMMessage message) { if(EaseCommonUtils.isSilentMessage(message)){ return; } EaseSettingsProvider settingsProvider = EaseUI.getInstance().getSettingsProvider(); if(!settingsProvider.isMsgNotifyAllowed(message)){ return; } // check if app running background if (!EasyUtils.isAppRunningForeground(appContext)) { EMLog.d(TAG, "app is running in backgroud"); sendNotification(message, false); } else { sendNotification(message, true); } vibrateAndPlayTone(message); }
@Override public void onStop() { super.onStop(); // unregister this event listener when this activity enters the // background EMClient.getInstance().chatManager().removeMessageListener(this); // remove activity from foreground activity list EaseUI.getInstance().popActivity(getActivity()); }
@Override protected void onResume() { super.onResume(); // cancel the notification EaseUI.getInstance().getNotifier().reset(); }
public boolean containsAtAll(String content){ String atAll = "@" + EaseUI.getInstance().getContext().getString(R.string.all_members); if(content.contains(atAll)){ return true; } return false; }
private void setSpeaker() { boolean speakerOn = EaseUI.getInstance().getSettingsProvider().isSpeakerOpened(); if (speakerOn) { audioManager.setMode(AudioManager.MODE_NORMAL); audioManager.setSpeakerphoneOn(true); mediaPlayer.setAudioStreamType(AudioManager.STREAM_RING); } else { audioManager.setSpeakerphoneOn(false);// 关闭扬声器 // 把声音设定成Earpiece(听筒)出来,设定为正在通话中 audioManager.setMode(AudioManager.MODE_IN_CALL); mediaPlayer.setAudioStreamType(AudioManager.STREAM_VOICE_CALL); } } }
/** * init helper * * @param context * application context */ public void init(Context context) { EMOptions options = initChatOptions(); if (EaseUI.getInstance().init(context, options)) { appContext = context; EMClient.getInstance().setDebugMode(BuildConfig.DEBUG); easeUI = EaseUI.getInstance(); PreferenceManager.init(context); } }
/** * handle the new message * this function can be override * * @param message */ public synchronized void onNewMsg(EMMessage message) { if(EaseCommonUtils.isSilentMessage(message)){ return; } EaseSettingsProvider settingsProvider = EaseUI.getInstance().getSettingsProvider(); if(!settingsProvider.isMsgNotifyAllowed(message)){ return; } // check if app running background if (!EasyUtils.isAppRunningForeground(appContext)) { EMLog.d(TAG, "app is running in backgroud"); sendNotification(message, false); } else { sendNotification(message, true); } vibrateAndPlayTone(message); }
@Override public void onStop() { super.onStop(); // unregister this event listener when this activity enters the // background EMClient.getInstance().chatManager().removeMessageListener(this); // remove activity from foreground activity list EaseUI.getInstance().popActivity(getActivity()); }
@Override protected void onResume() { super.onResume(); // cancel the notification EaseUI.getInstance().getNotifier().reset(); }
public boolean containsAtAll(String content){ String atAll = "@" + EaseUI.getInstance().getContext().getString(R.string.all_members); if(content.contains(atAll)){ return true; } return false; }
void initNotifier(){ notifier = createNotifier(); notifier.init(appContext); }
/** * get instance of EaseUI * @return */ public synchronized static EaseUI getInstance(){ if(instance == null){ instance = new EaseUI(); } return instance; }
/** * get EaseUser according username * @param username * @return */ public static EaseUser getUserInfo(String username){ if(userProvider != null) return userProvider.getUser(username); return null; }
public synchronized void onNewMesg(List<EMMessage> messages) { if(EaseCommonUtils.isSilentMessage(messages.get(messages.size()-1))){ return; } EaseSettingsProvider settingsProvider = EaseUI.getInstance().getSettingsProvider(); if(!settingsProvider.isMsgNotifyAllowed(null)){ return; } // check if app running background if (!EasyUtils.isAppRunningForeground(appContext)) { EMLog.d(TAG, "app is running in backgroud"); sendNotification(messages, false); } else { sendNotification(messages, true); } vibrateAndPlayTone(messages.get(messages.size()-1)); }
@SuppressLint("CommitPrefEdits") private EasePreferenceManager(){ mSharedPreferences = EaseUI.getInstance().getContext().getSharedPreferences("EM_SP_AT_MESSAGE", Context.MODE_PRIVATE); editor = mSharedPreferences.edit(); } private static EasePreferenceManager instance;
public synchronized void onNewMesg(List<EMMessage> messages) { if(EaseCommonUtils.isSilentMessage(messages.get(messages.size()-1))){ return; } EaseSettingsProvider settingsProvider = EaseUI.getInstance().getSettingsProvider(); if(!settingsProvider.isMsgNotifyAllowed(null)){ return; } // check if app running background if (!EasyUtils.isAppRunningForeground(appContext)) { EMLog.d(TAG, "app is running in backgroud"); sendNotification(messages, false); } else { sendNotification(messages, true); } vibrateAndPlayTone(messages.get(messages.size()-1)); }
@SuppressLint("CommitPrefEdits") private EasePreferenceManager(){ mSharedPreferences = EaseUI.getInstance().getContext().getSharedPreferences("EM_SP_AT_MESSAGE", Context.MODE_PRIVATE); editor = mSharedPreferences.edit(); } private static EasePreferenceManager instance;