package com.gh.common.util; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.text.TextUtils; import com.gh.gamecenter.MainActivity; import com.gh.gamecenter.NormalActivity; import com.gh.gamecenter.SplashScreenActivity; import com.gh.gamecenter.normal.NormalFragment; /** * @author CsHeng * @Date 2017/4/25 * @Time 16:39 */ public class EntranceUtils { public static final String KEY_TO = "to"; public static final String KEY_NEWSID = "newsId"; public static final String KEY_GAMEID = "gameId"; public static final String KEY_ID = "id"; public static final String KEY_URL = "url"; public static final String KEY_GAMENAME = "gameName"; public static final String HOST_ARTICLE = "article"; public static final String HOST_COMMUNITY_ARTICLE = "community.article"; public static final String HOST_GAME = "game"; public static final String HOST_GAME_DOWNLOAD = "game_download"; public static final String HOST_COLUMN = "column"; public static final String HOST_WEB = "web"; public static final String HOST_QQ = "qq"; public static final String HOST_DOWNLOAD = "download"; public static final String HOST_UPDATE = "update"; public static final String HOST_LIBAO = "libao"; public static final String HOST_COMMUNITY = "community"; public static final String HOST_SUGGESTION = "suggestion"; public static final String HOST_ANSWER = "answer"; public static final String HOST_QUESTION = "question"; public static final String KEY_DATA = "data"; public static final String KEY_MESSAGE = "message"; public static final String KEY_TYPE = "type"; public static final String KEY_NAME = "name"; public static final String KEY_ENTRANCE = "entrance"; public static final String KEY_TARGET = "target"; public static final String ENTRANCE_BROWSER = "(浏览器)"; public static final String ENTRANCE_WELCOME = "(启动弹窗)"; public static final String ENTRANCE_UMENG = "(友盟推送)"; public static final String ENTRANCE_MIPUSH = "(小米推送)"; public static final String ENTRANCE_DOWNLOAD = "(下载跳转)"; public static final String ENTRANCE_RECOMMEND = "(落地页)"; public static final String ENTRANCE_BLOCK_RECOMMEND = "(推荐入口)"; public static final String KEY_SUGGEST_HINT_TYPE = "suggestHintType"; public static final String KEY_PACKAGENAME = "packageName"; public static final String KEY_PLATFORM = "platform"; public static final String KEY_GAME_NAME = "game_name"; public static final String KEY_VERSION = "version"; public static final String KEY_CONTENT = "content"; public static final String KEY_PLUGIN = "plugin"; public static final String KEY_CURRENTITEM = "currentItem"; public static final String KEY_COMMENTID = "commentId"; public static final String KEY_PATH = "path"; public static final String KEY_OLDERUSER = "isOldUser"; public static final String KEY_SEARCHKEY = "searchKey"; public static final String KEY_HINT = "hint"; public static final String KEY_GAME_ICON_URL = "gameIconUrl"; public static final String KEY_SHARECONTENT = "shareContent"; public static final String KEY_SUGGESTTYPE = "suggestType"; public static final String KEY_PROLIST = "provinceList"; public static final String KEY_ORDER = "order"; public static final String KEY_TAGTYPE = "tagType"; public static final String KEY_ANSWER_ID = "answerId"; public static final String KEY_ANSWER_CONTENT = "answerContent"; public static final String KEY_QUESTIONS_ID = "questionsId"; public static final String KEY_QUESTIONS_TITLE = "questionsTitle"; public static final String KEY_ANSWER_OPEN_IN_NEW_PAGE = "openInNewPage"; public static final String KEY_QUESTIONS_PATCH = "questionsPatch"; public static final String KEY_INVITE_SEARCH_KEY = "inviteSearchKey"; public static final String KEY_MESSAGE_TYPE = "messageType"; public static final String KEY_QUESTIONS_SEARCH_KEY = "questionsSearchKey"; public static final String KEY_SHOW_ANSWER_COMMENT = "showAnswerComment"; public static final String KEY_RECOMMENDS_ANSWER = "isRecommendsAnswer"; public static final String KEY_VERSION_UPDATE = "versionUpdate"; public static final String KEY_CHECK_QUESTION_CONCERN = "check_question_concern"; public static final String KEY_DRAFT_ID = "draft_id"; public static final String KEY_KAIFU_LIST = "kaifuList"; public static final String KEY_CATEGORY_ID = "category_id"; public static final String KEY_CATEGORY_TITLE = "category_title"; public static final String KEY_CATEGORY_INIT_TITLE = "category_init_title"; public static final String KEY_BLOCK_DATA = "blockData"; public static final String KEY_ASK_TAG = "askTag"; public static final String KEY_ASK_COLUMN_TAG = "askColumnTag"; public static final String KEY_COMMUNITY_ID = "community_id"; public static final String KEY_COMMUNITY_NAME = "community_name"; public static final String KEY_COMMUNITY_DATA = "communityData"; public static final String KEY_TRACE_EVENT = "trace_event"; public static final String KEY_SUBJECT_DATA = "subjectData"; public static final String KEY_SHOW_SELECT_COMMUNITY = "show_select_community"; public static final String KEY_USER_ID = "user_id"; public static final String KEY_QUESTION_TAG = "question_tag"; public static final String KEY_COLUMN_ID = "column_id"; public static final String KEY_AUTO_DOWNLOAD = "auto_download"; public static final String KEY_AUTO_UPDATE = "auto_update"; public static final String KEY_HIDE_SUGGEST_HINT = "hide_suggest_hint"; public static final String KEY_COMMUNITY_ARTICLE_ID = "communityArticleId"; public static final String KEY_ARTICLE_COMMENT_ID = "articleCommentId"; public static void jumpActivity(Context context, Bundle bundle) { //TODO 把其他类似的跳转启动逻辑也处理掉 if (RunningUtils.isRunning(context) && MainActivity.class.getName().equals(RunningUtils.getBaseActivity(context))) { // 应用正在运行,前台或后台 String to = bundle.getString(KEY_TO); if (!TextUtils.isEmpty(to)) { Class clazz = ClassUtils.forName(to); if (clazz != null) { if (NormalFragment.class.isAssignableFrom(clazz)) { // 兼容NormalFragment NormalActivity.startFragmentNewTask(context, (Class) clazz, bundle); } else { Intent intent1 = new Intent(context, clazz); intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent1.putExtras(bundle); context.startActivity(intent1); } } } } else { // 应用未在运行 context.startActivity(SplashScreenActivity.getSplashScreenIntent(context, bundle)); } } }