Commit f1ec9633 by Kim Jinsung

プッシュメッセージからチャット・協業開く時に毎回Activity作成する問題対応

チャット画面が表示中には新しくActivity作成するのではなく、その画面をリロードする処理
parent 6ffc5bed
...@@ -161,6 +161,10 @@ public class ShowPushMessageDailogActivity extends ABVUIActivity { ...@@ -161,6 +161,10 @@ public class ShowPushMessageDailogActivity extends ABVUIActivity {
String collaborationType = extras.getString(AppDefType.ChatPushMessageKey.collaborationType); String collaborationType = extras.getString(AppDefType.ChatPushMessageKey.collaborationType);
String roomType = extras.getString(AppDefType.ChatPushMessageKey.roomType); String roomType = extras.getString(AppDefType.ChatPushMessageKey.roomType);
if (roomId > 0 && !StringUtil.isNullOrEmpty(roomName)) { if (roomId > 0 && !StringUtil.isNullOrEmpty(roomName)) {
ChatWebViewActivity chatWebViewActivity= activityHandlingHelper.getChatWebViewActivity();
if (chatWebViewActivity != null) {
chatWebViewActivity.reloadRoomViewCollaboration(roomId, roomName, collaborationType);
} else {
if (StringUtil.isNullOrEmpty(collaborationType)) { if (StringUtil.isNullOrEmpty(collaborationType)) {
ActivityHandlingHelper.getInstance().startChatWebViewActivity(roomId, roomName, ChatWebViewActivity.class.getName(),""); ActivityHandlingHelper.getInstance().startChatWebViewActivity(roomId, roomName, ChatWebViewActivity.class.getName(),"");
} else { } else {
...@@ -173,6 +177,7 @@ public class ShowPushMessageDailogActivity extends ABVUIActivity { ...@@ -173,6 +177,7 @@ public class ShowPushMessageDailogActivity extends ABVUIActivity {
} }
} }
} }
}
/** /**
* 遠隔支援中(会議室接続中)はチャットルームにはいけない。 * 遠隔支援中(会議室接続中)はチャットルームにはいけない。
......
...@@ -1391,4 +1391,17 @@ public class ChatWebViewActivity extends CommunicationWebViewActivity implements ...@@ -1391,4 +1391,17 @@ public class ChatWebViewActivity extends CommunicationWebViewActivity implements
// 最後のチャットのルーム // 最後のチャットのルーム
PreferenceUtil.putUserPref(getApplicationContext(), AppDefType.UserPrefKey.CHAT_LAST_ROOMID, roomId); PreferenceUtil.putUserPref(getApplicationContext(), AppDefType.UserPrefKey.CHAT_LAST_ROOMID, roomId);
} }
/**
* プッシュメッセージ受信し、既にChatWebViewActivityが表示中の時、WebViewリロードする。
* @param roomId ルームID
* @param roomName ルーム名
* @param collaborationType 協業タイプ
*/
public void reloadRoomViewCollaboration(Long roomId, String roomName, String collaborationType) {
chatData.roomId = roomId;
chatData.roomName = roomName;
chatData.setStrCollaborationType(collaborationType);
registChatRoomPageLoader();
}
} }
...@@ -1885,6 +1885,20 @@ public class ActivityHandlingHelper extends ABookHelper implements RemoteObserve ...@@ -1885,6 +1885,20 @@ public class ActivityHandlingHelper extends ABookHelper implements RemoteObserve
} }
/** /**
* 使用中のChatWebViewActivityを返す
* @return 使用中のChatWebViewActivity
*/
public ChatWebViewActivity getChatWebViewActivity() {
if (!currentActivityStack.isEmpty()) {
for (final ABVAuthenticatedActivity activity : currentActivityStack) {
if (activity instanceof ChatWebViewActivity) {
return (ChatWebViewActivity)activity;
}
}
}
return null;
}
/**
* 設定画面から戻る用 * 設定画面から戻る用
* @return 設定画面へ遷移前の画面 * @return 設定画面へ遷移前の画面
*/ */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment