Compare commits
15 Commits
dev
...
feat/GHZSC
| Author | SHA1 | Date | |
|---|---|---|---|
| a055dc6316 | |||
| 644e3b008f | |||
| 4467168947 | |||
| 8a70833107 | |||
| 827ba86966 | |||
| fd36a16dde | |||
| bcf287f837 | |||
| f9c26e748f | |||
| 32e27d5d32 | |||
| 9e232aba7b | |||
| a3c7f7b433 | |||
| ccee0647ef | |||
| 254b0b8696 | |||
| 5c16292019 | |||
| 8fcf0d8099 |
@ -19,7 +19,6 @@ import com.gh.common.util.EntranceUtils.jumpActivity
|
||||
import com.gh.common.util.EntranceUtils.jumpActivityCompat
|
||||
import com.gh.gamecenter.*
|
||||
import com.gh.gamecenter.amway.AmwayActivity
|
||||
import com.gh.gamecenter.category2.CategoryV2Activity
|
||||
import com.gh.gamecenter.common.base.activity.BaseActivity
|
||||
import com.gh.gamecenter.common.base.activity.BaseActivity_TabLayout
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity
|
||||
@ -47,7 +46,6 @@ import com.gh.gamecenter.feature.provider.IConcernInfoProvider
|
||||
import com.gh.gamecenter.forum.detail.ForumDetailActivity
|
||||
import com.gh.gamecenter.forum.home.CommunityActivity
|
||||
import com.gh.gamecenter.forum.search.ForumOrUserSearchActivity
|
||||
import com.gh.gamecenter.game.columncollection.detail.ColumnCollectionDetailActivity
|
||||
import com.gh.gamecenter.game.columncollection.detail.ColumnCollectionDetailFragment
|
||||
import com.gh.gamecenter.game.commoncollection.detail.CustomCommonCollectionDetailActivity
|
||||
import com.gh.gamecenter.game.upload.GameSubmissionActivity
|
||||
@ -69,11 +67,6 @@ import com.gh.gamecenter.newsdetail.NewsDetailActivity
|
||||
import com.gh.gamecenter.personalhome.background.PersonalityBackgroundActivity
|
||||
import com.gh.gamecenter.personalhome.border.AvatarBorderActivity
|
||||
import com.gh.gamecenter.personalhome.home.UserHistoryViewModel
|
||||
import com.gh.gamecenter.qa.answer.detail.SimpleAnswerDetailActivity
|
||||
import com.gh.gamecenter.qa.article.detail.ArticleDetailActivity
|
||||
import com.gh.gamecenter.qa.questions.newdetail.NewQuestionDetailActivity
|
||||
import com.gh.gamecenter.qa.subject.CommunitySubjectActivity
|
||||
import com.gh.gamecenter.qa.video.detail.ForumVideoDetailActivity
|
||||
import com.gh.gamecenter.retrofit.RetrofitManager
|
||||
import com.gh.gamecenter.servers.GameServerTestActivity
|
||||
import com.gh.gamecenter.servers.GameServersActivity
|
||||
@ -83,9 +76,7 @@ import com.gh.gamecenter.subject.SubjectActivity
|
||||
import com.gh.gamecenter.tag.TagsActivity
|
||||
import com.gh.gamecenter.toolbox.ToolBoxActivity
|
||||
import com.gh.gamecenter.video.data.VideoDataActivity
|
||||
import com.gh.gamecenter.video.detail.VideoDetailActivity
|
||||
import com.gh.gamecenter.video.detail.VideoDetailContainerViewModel
|
||||
import com.gh.gamecenter.video.game.GameVideoActivity
|
||||
import com.gh.gamecenter.video.videomanager.VideoManagerActivity
|
||||
import com.gh.gamecenter.wrapper.MainWrapperRepository
|
||||
import com.gh.gamecenter.wrapper.ToolbarWrapperActivity
|
||||
@ -680,20 +671,27 @@ object DirectUtils {
|
||||
showSubjectTab: Boolean = false
|
||||
) {
|
||||
if (id.isEmpty()) return
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_TO, ColumnCollectionDetailActivity::class.java.name)
|
||||
bundle.putString(KEY_ENTRANCE, entrance)
|
||||
bundle.putString(KEY_COLLECTION_ID, id)
|
||||
bundle.putString(KEY_COLUMNNAME, columnName)
|
||||
bundle.putString(KEY_BLOCK_ID, blockId)
|
||||
bundle.putString(KEY_BLOCK_NAME, blockName)
|
||||
bundle.putString(KEY_COLUMN_COLLECTION_STYLE, style)
|
||||
bundle.putInt(KEY_POSITION, position)
|
||||
bundle.putBoolean(KEY_SHOW_SUBJECT_TAB, showSubjectTab)
|
||||
if (exposureEvent != null) {
|
||||
bundle.putParcelableArrayList(EntranceConsts.KEY_EXPOSURE_SOURCE_LIST, ArrayList(exposureEvent.source))
|
||||
}
|
||||
jumpActivity(context, bundle)
|
||||
val uri = Uri.Builder()
|
||||
.path(RouteConsts.activity.columnCollectionDetailActivity)
|
||||
.appendQueryParameter(KEY_ENTRANCE, entrance)
|
||||
.appendQueryParameter(KEY_COLLECTION_ID, id)
|
||||
.appendQueryParameter(KEY_COLUMN_NAME, columnName)
|
||||
.appendQueryParameter(KEY_BLOCK_ID, blockId)
|
||||
.appendQueryParameter(KEY_BLOCK_NAME, blockName)
|
||||
.appendQueryParameter(KEY_COLUMN_COLLECTION_STYLE, style)
|
||||
.build()
|
||||
|
||||
TheRouter
|
||||
.build(uri.toString())
|
||||
.fillParams { bundle ->
|
||||
bundle.putString(KEY_COLUMN_COLLECTION_STYLE, style)
|
||||
bundle.putInt(KEY_POSITION, position)
|
||||
bundle.putBoolean(KEY_SHOW_SUBJECT_TAB, showSubjectTab)
|
||||
if (exposureEvent != null) {
|
||||
bundle.putParcelableArrayList(KEY_EXPOSURE_SOURCE_LIST, ArrayList(exposureEvent.source))
|
||||
}
|
||||
}
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
/**
|
||||
@ -745,7 +743,7 @@ object DirectUtils {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
bundle.putString(KEY_TO, NewsDetailActivity::class.java.name)
|
||||
bundle.putString(KEY_NEWSID, id)
|
||||
bundle.putString(KEY_NEWS_ID, id)
|
||||
if (entrance?.contains("隐私政策") == true) {
|
||||
bundle.putBoolean(KEY_HIDE_USELESS_INFO, true)
|
||||
}
|
||||
@ -761,7 +759,7 @@ object DirectUtils {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
bundle.putString(KEY_TO, NewsDetailActivity::class.java.name)
|
||||
bundle.putString(KEY_NEWSID, id)
|
||||
bundle.putString(KEY_NEWS_ID, id)
|
||||
bundle.putBoolean(KEY_HIDE_USELESS_INFO, hideUselessInfo)
|
||||
jumpActivity(context, bundle)
|
||||
}
|
||||
@ -898,13 +896,15 @@ object DirectUtils {
|
||||
*/
|
||||
@JvmStatic
|
||||
fun directToGameDetailVideoStreaming(context: Context, id: String, entrance: String? = null) {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_TO, GameVideoActivity::class.java.name)
|
||||
bundle.putString(KEY_ENTRANCE, entrance)
|
||||
bundle.putString(KEY_GAMEID, id)
|
||||
bundle.putBoolean(KEY_OPEN_VIDEO_STREAMING, true)
|
||||
bundle.putString(KEY_TARGET, EntranceConsts.TAB_TYPE_DESC)
|
||||
jumpActivity(context, bundle)
|
||||
val uri = Uri.Builder()
|
||||
.path(RouteConsts.activity.gameVideoActivity)
|
||||
.appendQueryParameter(KEY_ENTRANCE, entrance)
|
||||
.appendQueryParameter(KEY_GAME_ID, id)
|
||||
.build()
|
||||
|
||||
TheRouter
|
||||
.build(uri.toString())
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ -1068,23 +1068,31 @@ object DirectUtils {
|
||||
|
||||
@JvmStatic
|
||||
fun directToToolbox(context: Context, gameId: String, toolboxUrl: String, entrance: String = ENTRANCE_BROWSER) {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_ENTRANCE, entrance)
|
||||
bundle.putString(KEY_TO, ToolBoxActivity::class.java.name)
|
||||
bundle.putString(KEY_GAMEID, gameId)
|
||||
bundle.putString(KEY_URL, toolboxUrl)
|
||||
jumpActivity(context, bundle)
|
||||
val uri = Uri.Builder()
|
||||
.path(RouteConsts.activity.toolBoxActivity)
|
||||
.appendQueryParameter(KEY_ENTRANCE, entrance)
|
||||
.appendQueryParameter(KEY_GAME_ID, gameId)
|
||||
.appendQueryParameter(KEY_URL, toolboxUrl)
|
||||
.build()
|
||||
|
||||
TheRouter
|
||||
.build(uri.toString())
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
fun directToAnswerDetail(context: Context, id: String, entrance: String? = null, path: String? = null) {
|
||||
if (id.isEmpty()) return
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
bundle.putString(KEY_TO, SimpleAnswerDetailActivity::class.java.name)
|
||||
bundle.putString(KEY_PATH, path)
|
||||
bundle.putString(KEY_ANSWER_ID, id)
|
||||
jumpActivity(context, bundle)
|
||||
val uri = Uri.Builder()
|
||||
.path(RouteConsts.activity.answerDetailActivity)
|
||||
.appendQueryParameter(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
.appendQueryParameter(KEY_PATH, path)
|
||||
.appendQueryParameter(KEY_ANSWER_ID, id)
|
||||
.build()
|
||||
|
||||
TheRouter
|
||||
.build(uri.toString())
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ -1096,13 +1104,17 @@ object DirectUtils {
|
||||
sourceEntrance: String = ""
|
||||
) {
|
||||
if (id.isEmpty()) return
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
bundle.putString(KEY_TO, NewQuestionDetailActivity::class.java.name)
|
||||
bundle.putString(KEY_PATH, path)
|
||||
bundle.putString(KEY_QUESTIONS_ID, id)
|
||||
bundle.putString(KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
jumpActivity(context, bundle)
|
||||
val uri = Uri.Builder()
|
||||
.path(RouteConsts.activity.questionDetailActivity)
|
||||
.appendQueryParameter(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
.appendQueryParameter(KEY_PATH, path)
|
||||
.appendQueryParameter(KEY_QUESTIONS_ID, id)
|
||||
.appendQueryParameter(KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
.build()
|
||||
|
||||
TheRouter
|
||||
.build(uri.toString())
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ -1229,14 +1241,20 @@ object DirectUtils {
|
||||
path: String?,
|
||||
sourceEntrance: String = ""
|
||||
) {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
bundle.putString(KEY_PATH, path)
|
||||
bundle.putString(KEY_TO, ArticleDetailActivity::class.java.name)
|
||||
bundle.putString(KEY_COMMUNITY_ARTICLE_ID, articleId)
|
||||
bundle.putString(KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
bundle.putParcelable(KEY_COMMUNITY_DATA, CommunityEntity(id = communityId!!))
|
||||
jumpActivity(context, bundle)
|
||||
val uri = Uri.Builder()
|
||||
.path(RouteConsts.activity.articleDetailActivity)
|
||||
.appendQueryParameter(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
.appendQueryParameter(KEY_PATH, path)
|
||||
.appendQueryParameter(KEY_COMMUNITY_ARTICLE_ID, articleId)
|
||||
.appendQueryParameter(KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
.build()
|
||||
|
||||
TheRouter
|
||||
.build(uri.toString())
|
||||
.fillParams {
|
||||
it.putParcelable(KEY_COMMUNITY_DATA, CommunityEntity(id = communityId!!))
|
||||
}
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ -1249,14 +1267,21 @@ object DirectUtils {
|
||||
sourceEntrance: String = "",
|
||||
) {
|
||||
if (articleId.isNullOrEmpty()) return
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
bundle.putString(KEY_PATH, path)
|
||||
bundle.putString(KEY_TO, ArticleDetailActivity::class.java.name)
|
||||
bundle.putString(KEY_COMMUNITY_ARTICLE_ID, articleId)
|
||||
bundle.putString(KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
bundle.putParcelable(KEY_COMMUNITY_DATA, community)
|
||||
jumpActivity(context, bundle)
|
||||
|
||||
val uri = Uri.Builder()
|
||||
.path(RouteConsts.activity.articleDetailActivity)
|
||||
.appendQueryParameter(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
.appendQueryParameter(KEY_PATH, path)
|
||||
.appendQueryParameter(KEY_COMMUNITY_ARTICLE_ID, articleId)
|
||||
.appendQueryParameter(KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
.build()
|
||||
|
||||
TheRouter
|
||||
.build(uri.toString())
|
||||
.fillParams {
|
||||
it.putParcelable(KEY_COMMUNITY_DATA, community)
|
||||
}
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1271,13 +1296,20 @@ object DirectUtils {
|
||||
path: String?
|
||||
) {
|
||||
if (subjectId.isEmpty()) return
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_PATH, path)
|
||||
bundle.putString(KEY_TO, CommunitySubjectActivity::class.java.name)
|
||||
bundle.putString(KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
bundle.putString(KEY_COLUMN_ID, subjectId)
|
||||
bundle.putParcelable(KEY_COMMUNITY_DATA, community)
|
||||
jumpActivity(context, bundle)
|
||||
|
||||
val uri = Uri.Builder()
|
||||
.path(RouteConsts.activity.communitySubjectActivity)
|
||||
.appendQueryParameter(KEY_PATH, path)
|
||||
.appendQueryParameter(KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
.appendQueryParameter(KEY_COLUMN_ID, subjectId)
|
||||
.build()
|
||||
|
||||
TheRouter
|
||||
.build(uri.toString())
|
||||
.fillParams {
|
||||
it.putParcelable(KEY_COMMUNITY_DATA, community)
|
||||
}
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ -1287,17 +1319,17 @@ object DirectUtils {
|
||||
path: String? = "",
|
||||
sourceEntrance: String = ""
|
||||
) {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
bundle.putString(KEY_TO, ForumVideoDetailActivity::class.java.name)
|
||||
bundle.putString(KEY_VIDEO_ID, videoId);
|
||||
bundle.putString(KEY_PATH, path)
|
||||
bundle.putString(KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
jumpActivity(context, bundle)
|
||||
} else {
|
||||
DialogHelper.showVideoUnsupportedDialog(context)
|
||||
}
|
||||
val uri = Uri.Builder()
|
||||
.path(RouteConsts.activity.forumVideoDetailActivity)
|
||||
.appendQueryParameter(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
.appendQueryParameter(KEY_PATH, path)
|
||||
.appendQueryParameter(KEY_VIDEO_ID, videoId)
|
||||
.appendQueryParameter(KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
.build()
|
||||
|
||||
TheRouter
|
||||
.build(uri.toString())
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1322,28 +1354,31 @@ object DirectUtils {
|
||||
isHomeVideo: Boolean = false,
|
||||
sourceEntrance: String = ""
|
||||
) {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
bundle.putString(KEY_TO, VideoDetailActivity::class.java.name)
|
||||
bundle.putString(KEY_VIDEO_ID, videoId);
|
||||
bundle.putString(KEY_PATH, path)
|
||||
bundle.putString(KEY_ID, videoId)
|
||||
bundle.putString(KEY_GAMEID, gameId)
|
||||
bundle.putString(KEY_LOCATION, fromLocation)
|
||||
bundle.putBoolean(KEY_SHOW_COMMENT, showComment)
|
||||
bundle.putString(KEY_REFERER, referer)
|
||||
bundle.putString(KEY_TYPE, type)
|
||||
bundle.putString(KEY_ACTIVITY_NAME, act)
|
||||
bundle.putString(KEY_PAGINATION_TYPE, paginationType)
|
||||
bundle.putString(KEY_FIELD_ID, fieldId)
|
||||
bundle.putString(KEY_SECTION_NAME, sectionName)
|
||||
bundle.putBoolean(KEY_IS_HOME_VIDEO, isHomeVideo)
|
||||
SensorsBridge.trackAccessVideoStreaming(sourceEntrance)
|
||||
jumpActivity(context, bundle)
|
||||
} else {
|
||||
DialogHelper.showVideoUnsupportedDialog(context)
|
||||
}
|
||||
SensorsBridge.trackAccessVideoStreaming(sourceEntrance)
|
||||
|
||||
val uri = Uri.Builder()
|
||||
.path(RouteConsts.activity.videoDetailActivity)
|
||||
.appendQueryParameter(KEY_ENTRANCE, entrance ?: ENTRANCE_BROWSER)
|
||||
.appendQueryParameter(KEY_PATH, path)
|
||||
.appendQueryParameter(KEY_VIDEO_ID, videoId)
|
||||
.appendQueryParameter(KEY_GAME_ID, gameId)
|
||||
.appendQueryParameter(KEY_ACTIVITY_NAME, act)
|
||||
.appendQueryParameter(KEY_PAGINATION_TYPE, paginationType)
|
||||
.appendQueryParameter(KEY_FIELD_ID, fieldId)
|
||||
.appendQueryParameter(KEY_SECTION_NAME, sectionName)
|
||||
.build()
|
||||
|
||||
TheRouter
|
||||
.build(uri.toString())
|
||||
.fillParams { bundle ->
|
||||
bundle.putString(KEY_ID, videoId)
|
||||
bundle.putString(KEY_REFERER, referer)
|
||||
bundle.putString(KEY_TYPE, type)
|
||||
bundle.putBoolean(KEY_SHOW_COMMENT, showComment)
|
||||
bundle.putString(KEY_LOCATION, fromLocation)
|
||||
bundle.putBoolean(KEY_IS_HOME_VIDEO, isHomeVideo)
|
||||
}
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ -1438,8 +1473,8 @@ object DirectUtils {
|
||||
) {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_PATH, path)
|
||||
bundle.putParcelable(VideoLinkEntity::class.java.simpleName, linkEntity)
|
||||
bundle.putParcelable(SimpleGameEntity::class.java.simpleName, simpleGameEntity)
|
||||
bundle.putParcelable(KEY_VIDEO_LINK_ENTITY, linkEntity)
|
||||
bundle.putParcelable(KEY_SIMPLE_GAME_ENTITY, simpleGameEntity)
|
||||
bundle.putString(KEY_TO, VideoManagerActivity::class.java.name)
|
||||
bundle.putString(KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
jumpActivity(context, bundle)
|
||||
@ -1472,13 +1507,16 @@ object DirectUtils {
|
||||
@JvmStatic
|
||||
fun directToGameVideo(context: Context, gameId: String, entrance: String? = null, path: String? = "") {
|
||||
if (gameId.isEmpty()) return
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_PATH, path)
|
||||
bundle.putString(KEY_TO, GameVideoActivity::class.java.name)
|
||||
bundle.putString(KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
bundle.putString(KEY_GAMEID, gameId)
|
||||
// context.startActivity(GameVideoActivity.getIntent(context, gameId, entrance, path))
|
||||
jumpActivity(context, bundle)
|
||||
val uri = Uri.Builder()
|
||||
.path(RouteConsts.activity.gameVideoActivity)
|
||||
.appendQueryParameter(KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
.appendQueryParameter(KEY_PATH, path)
|
||||
.appendQueryParameter(KEY_GAME_ID, gameId)
|
||||
.build()
|
||||
|
||||
TheRouter
|
||||
.build(uri.toString())
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ -1503,16 +1541,23 @@ object DirectUtils {
|
||||
exposureEvent: ExposureEvent? = null,
|
||||
) {
|
||||
if (categoryId.isEmpty()) return
|
||||
val bundle = Bundle()
|
||||
bundle.putString(KEY_TO, CategoryV2Activity::class.java.name)
|
||||
bundle.putString(KEY_CATEGORY_ID, categoryId)
|
||||
bundle.putString(KEY_CATEGORY_TITLE, categoryTitle)
|
||||
bundle.putString(KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
if (exposureEvent != null) bundle.putParcelableArrayList(
|
||||
KEY_EXPOSURE_SOURCE_LIST,
|
||||
ArrayList(exposureEvent.source)
|
||||
)
|
||||
jumpActivity(context, bundle)
|
||||
|
||||
val uri = Uri.Builder()
|
||||
.path(RouteConsts.activity.categoryV2Activity)
|
||||
.appendQueryParameter(KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
.appendQueryParameter(KEY_CATEGORY_ID, categoryId)
|
||||
.appendQueryParameter(KEY_CATEGORY_TITLE, categoryTitle)
|
||||
.build()
|
||||
|
||||
TheRouter
|
||||
.build(uri.toString())
|
||||
.fillParams {
|
||||
if (exposureEvent != null) it.putParcelableArrayList(
|
||||
KEY_EXPOSURE_SOURCE_LIST,
|
||||
ArrayList(exposureEvent.source)
|
||||
)
|
||||
}
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@ -2,12 +2,10 @@ package com.gh.common.util
|
||||
|
||||
import android.os.Bundle
|
||||
import androidx.fragment.app.Fragment
|
||||
import com.therouter.TheRouter
|
||||
import com.gh.common.iinterface.ISuperiorChain
|
||||
import com.gh.gamecenter.amway.AmwayFragment
|
||||
import com.gh.gamecenter.category2.CategoryV2Fragment
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.common.entity.LinkEntity
|
||||
import com.gh.gamecenter.common.provider.IHelpAndFeedbackProvider
|
||||
import com.gh.gamecenter.discovery.DiscoveryFragment
|
||||
@ -38,6 +36,7 @@ import com.gh.gamecenter.toolbox.ToolboxFragment
|
||||
import com.gh.gamecenter.video.detail.HomeVideoFragment
|
||||
import com.gh.gamecenter.wrapper.ToolbarWrapperFragment
|
||||
import com.halo.assistant.fragment.WebFragment
|
||||
import com.therouter.TheRouter
|
||||
|
||||
/**
|
||||
* 通用跳转Fragment方法
|
||||
@ -182,7 +181,7 @@ object ViewPagerFragmentHelper {
|
||||
className = ColumnCollectionDetailFragment::class.java.name
|
||||
bundle.putString(EntranceConsts.KEY_COLLECTION_ID, entity.link)
|
||||
bundle.putInt(EntranceConsts.KEY_POSITION, 0)
|
||||
bundle.putString(EntranceConsts.KEY_COLUMNNAME, entity.text)
|
||||
bundle.putString(EntranceConsts.KEY_COLUMN_NAME, entity.text)
|
||||
bundle.putBoolean(EntranceConsts.KEY_IS_COLUMN_COLLECTION, true)
|
||||
bundle.putString(EntranceConsts.KEY_SUBJECT_TYPE, "tab")
|
||||
}
|
||||
@ -208,7 +207,7 @@ object ViewPagerFragmentHelper {
|
||||
TYPE_COMMON_COLLECTION -> {
|
||||
className = CustomCommonCollectionDetailFragment::class.java.name
|
||||
bundle.putString(EntranceConsts.KEY_COLLECTION_ID, entity.link)
|
||||
bundle.putString(EntranceConsts.KEY_COLUMNNAME, entity.text)
|
||||
bundle.putString(EntranceConsts.KEY_COLUMN_NAME, entity.text)
|
||||
}
|
||||
// web链接
|
||||
TYPE_WEB -> {
|
||||
@ -238,7 +237,7 @@ object ViewPagerFragmentHelper {
|
||||
// 文章
|
||||
TYPE_ARTICLE -> {
|
||||
className = NewsDetailFragment::class.java.name
|
||||
bundle.putString(EntranceConsts.KEY_NEWSID, entity.link)
|
||||
bundle.putString(EntranceConsts.KEY_NEWS_ID, entity.link)
|
||||
}
|
||||
// 社区专题
|
||||
TYPE_COMMUNITY_COLUMN -> {
|
||||
|
||||
@ -48,7 +48,7 @@ public class MessageDetailActivity extends ToolBarActivity {
|
||||
public static Intent getMessageDetailIntent(Context context, CommentEntity entity, String newsId) {
|
||||
Intent intent = new Intent(context, MessageDetailActivity.class);
|
||||
intent.putExtra("commentNum", -1);
|
||||
intent.putExtra(EntranceConsts.KEY_NEWSID, newsId);
|
||||
intent.putExtra(EntranceConsts.KEY_NEWS_ID, newsId);
|
||||
intent.putExtra("openSoftInput", true);
|
||||
intent.putExtra(CommentEntity.TAG, entity);
|
||||
|
||||
@ -66,7 +66,7 @@ public class MessageDetailActivity extends ToolBarActivity {
|
||||
|
||||
public static Intent getIntentById(Context context, String newsId, Integer commentNum, Boolean openSoftInput, String entrance) {
|
||||
Intent intent = new Intent(context, MessageDetailActivity.class);
|
||||
intent.putExtra(EntranceConsts.KEY_NEWSID, newsId);
|
||||
intent.putExtra(EntranceConsts.KEY_NEWS_ID, newsId);
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
intent.putExtra("commentNum", commentNum);
|
||||
intent.putExtra("openSoftInput", openSoftInput);
|
||||
@ -86,10 +86,10 @@ public class MessageDetailActivity extends ToolBarActivity {
|
||||
if (fragment.getArguments() != null) {
|
||||
Object concernEntity = HaloApp.get(ConcernEntity.TAG, false);
|
||||
Object commentEntity = fragment.requireArguments().getParcelable(CommentEntity.TAG);
|
||||
if (fragment.getArguments().getString(EntranceConsts.KEY_NEWSID) != null && commentEntity != null) {
|
||||
return new Pair(((CommentEntity) commentEntity).getId(), fragment.getArguments().getString(EntranceConsts.KEY_NEWSID));
|
||||
} else if (fragment.getArguments().getString(EntranceConsts.KEY_NEWSID) != null) {
|
||||
return new Pair(fragment.getArguments().getString(EntranceConsts.KEY_NEWSID), "");
|
||||
if (fragment.getArguments().getString(EntranceConsts.KEY_NEWS_ID) != null && commentEntity != null) {
|
||||
return new Pair(((CommentEntity) commentEntity).getId(), fragment.getArguments().getString(EntranceConsts.KEY_NEWS_ID));
|
||||
} else if (fragment.getArguments().getString(EntranceConsts.KEY_NEWS_ID) != null) {
|
||||
return new Pair(fragment.getArguments().getString(EntranceConsts.KEY_NEWS_ID), "");
|
||||
} else if (concernEntity != null) {
|
||||
return new Pair(((ConcernEntity) concernEntity).getId(), "");
|
||||
} else {
|
||||
|
||||
@ -55,7 +55,7 @@ public class ShareCardActivity extends ToolBarActivity {
|
||||
bundle.putString(EntranceConsts.KEY_GAME_ICON_URL, concernEntity.getGameIcon());
|
||||
bundle.putString(EntranceConsts.KEY_SHARECONTENT, shareContent);
|
||||
if (concernEntity.getLink() == null) {
|
||||
bundle.putString(EntranceConsts.KEY_NEWSID, concernEntity.getId());
|
||||
bundle.putString(EntranceConsts.KEY_NEWS_ID, concernEntity.getId());
|
||||
}
|
||||
intent.putExtras(bundle);
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, "(资讯:关注[2-4])");
|
||||
@ -83,7 +83,7 @@ public class ShareCardActivity extends ToolBarActivity {
|
||||
gameName = extras.getString(EntranceConsts.KEY_GAMENAME);
|
||||
gameIconUrl = extras.getString(EntranceConsts.KEY_GAME_ICON_URL);
|
||||
shareContent = extras.getString(EntranceConsts.KEY_SHARECONTENT);
|
||||
newsId = extras.getString(EntranceConsts.KEY_NEWSID);
|
||||
newsId = extras.getString(EntranceConsts.KEY_NEWS_ID);
|
||||
|
||||
picName = "shareImg.jpg";
|
||||
|
||||
|
||||
@ -26,14 +26,14 @@ import com.facebook.drawee.controller.ControllerListener;
|
||||
import com.facebook.drawee.interfaces.DraweeController;
|
||||
import com.facebook.drawee.view.SimpleDraweeView;
|
||||
import com.facebook.imagepipeline.image.ImageInfo;
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity;
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts;
|
||||
import com.gh.gamecenter.common.utils.ImageUtils;
|
||||
import com.gh.common.util.MessageShareUtils;
|
||||
import com.gh.common.util.QRCodeUtils;
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity;
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts;
|
||||
import com.gh.gamecenter.common.retrofit.ObservableUtil;
|
||||
import com.gh.gamecenter.common.utils.ImageUtils;
|
||||
import com.gh.gamecenter.core.utils.StringUtils;
|
||||
import com.gh.gamecenter.feature.entity.ConcernEntity;
|
||||
import com.gh.gamecenter.common.retrofit.ObservableUtil;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
@ -96,7 +96,7 @@ public class ShareCardPicActivity extends ToolBarActivity {
|
||||
bundle.putString(EntranceConsts.KEY_GAME_ICON_URL, concernEntity.getGameIcon());
|
||||
bundle.putString(EntranceConsts.KEY_SHARECONTENT, shareContent);
|
||||
if (concernEntity.getLink() == null) {
|
||||
bundle.putString(EntranceConsts.KEY_NEWSID, concernEntity.getId());
|
||||
bundle.putString(EntranceConsts.KEY_NEWS_ID, concernEntity.getId());
|
||||
}
|
||||
if (concernEntity.getImg() != null && concernEntity.getImg().size() > 0) {
|
||||
bundle.putStringArrayList(KEY_SHARE_ARRIMG, (ArrayList<String>) concernEntity.getImg());
|
||||
@ -121,7 +121,7 @@ public class ShareCardPicActivity extends ToolBarActivity {
|
||||
gameName = extras.getString(EntranceConsts.KEY_GAMENAME);
|
||||
gameIconUrl = extras.getString(EntranceConsts.KEY_GAME_ICON_URL);
|
||||
shareContent = extras.getString(EntranceConsts.KEY_SHARECONTENT);
|
||||
newsId = extras.getString(EntranceConsts.KEY_NEWSID);
|
||||
newsId = extras.getString(EntranceConsts.KEY_NEWS_ID);
|
||||
List<String> arrImg = extras.getStringArrayList(KEY_SHARE_ARRIMG);
|
||||
|
||||
picName = "shareImgPic.jpg";
|
||||
|
||||
@ -5,6 +5,7 @@ import static com.gh.gamecenter.common.constant.EntranceConsts.ENTRANCE_PUSH;
|
||||
import static com.gh.gamecenter.common.constant.EntranceConsts.HOST_ANSWER;
|
||||
import static com.gh.gamecenter.common.constant.EntranceConsts.HOST_ARCHIVE_LOGIN;
|
||||
import static com.gh.gamecenter.common.constant.EntranceConsts.HOST_ARTICLE;
|
||||
import static com.gh.gamecenter.common.constant.EntranceConsts.HOST_CATEGORY;
|
||||
import static com.gh.gamecenter.common.constant.EntranceConsts.HOST_COLUMN;
|
||||
import static com.gh.gamecenter.common.constant.EntranceConsts.HOST_COLUMN_COLLECTION;
|
||||
import static com.gh.gamecenter.common.constant.EntranceConsts.HOST_COMMUNITY;
|
||||
@ -313,7 +314,10 @@ public class SkipActivity extends BaseActivity {
|
||||
String columnId = uri.getQueryParameter("column_id");
|
||||
DirectUtils.directToCommunityColumn(this, community, columnId, entrance, "");
|
||||
break;
|
||||
|
||||
case HOST_CATEGORY:
|
||||
title = uri.getQueryParameter("title");
|
||||
DirectUtils.directCategoryV2(this, path, title, entrance, pathName, null);
|
||||
break;
|
||||
case HOST_COLUMN_COLLECTION:
|
||||
DirectUtils.directToColumnCollection(this, path, -1, entrance, "", "", "", "", null,false);
|
||||
break;
|
||||
|
||||
@ -6,17 +6,17 @@ import android.os.Bundle
|
||||
import android.text.TextUtils
|
||||
import android.view.KeyEvent
|
||||
import android.view.View
|
||||
import com.therouter.router.Route
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity
|
||||
import com.gh.gamecenter.common.constant.Constants
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.common.entity.ToolBoxEntity
|
||||
import com.gh.gamecenter.common.utils.EnvHelper
|
||||
import com.gh.gamecenter.common.utils.updateStatusBarColor
|
||||
import com.gh.gamecenter.feature.entity.ConcernEntity
|
||||
import com.gh.gamecenter.feature.entity.NewsEntity
|
||||
import com.gh.gamecenter.common.entity.ToolBoxEntity
|
||||
import com.halo.assistant.fragment.WebFragment
|
||||
import com.therouter.router.Route
|
||||
|
||||
@Route(path = RouteConsts.activity.webActivity)
|
||||
open class WebActivity : ToolBarActivity() {
|
||||
@ -193,7 +193,7 @@ open class WebActivity : ToolBarActivity() {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(EntranceConsts.KEY_URL, concernLink)
|
||||
bundle.putString(EntranceConsts.KEY_GAMENAME, concernGameName)
|
||||
bundle.putString(EntranceConsts.KEY_NEWSID, concernId)
|
||||
bundle.putString(EntranceConsts.KEY_NEWS_ID, concernId)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
return getTargetIntent(
|
||||
context,
|
||||
@ -208,7 +208,7 @@ open class WebActivity : ToolBarActivity() {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(EntranceConsts.KEY_URL, newsEntity.link)
|
||||
bundle.putString(EntranceConsts.KEY_GAMENAME, newsEntity.gameName)
|
||||
bundle.putString(EntranceConsts.KEY_NEWSID, newsEntity.id)
|
||||
bundle.putString(EntranceConsts.KEY_NEWS_ID, newsEntity.id)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
return getTargetIntent(
|
||||
context,
|
||||
|
||||
@ -328,7 +328,7 @@ public class MessageDetailAdapter extends BaseRecyclerAdapter<ViewHolder> {
|
||||
, StringUtils.buildString(mEntrance, "+(消息详情)")));
|
||||
} else {
|
||||
Intent intent = new Intent(mContext, NewsDetailActivity.class);
|
||||
intent.putExtra(EntranceConsts.KEY_NEWSID, mConcernEntity.getId());
|
||||
intent.putExtra(EntranceConsts.KEY_NEWS_ID, mConcernEntity.getId());
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, StringUtils.buildString(mEntrance, "+(消息详情)"));
|
||||
mContext.startActivity(intent);
|
||||
}
|
||||
|
||||
@ -6,13 +6,30 @@ import android.os.Bundle
|
||||
import com.gh.base.DownloadToolbarActivity
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.common.utils.updateStatusBarColor
|
||||
import com.therouter.TheRouter
|
||||
import com.therouter.router.Autowired
|
||||
import com.therouter.router.Route
|
||||
|
||||
/**
|
||||
* 新分类2.0
|
||||
*/
|
||||
@Route(path = RouteConsts.activity.categoryV2Activity, description = "新分类2.0")
|
||||
class CategoryV2Activity : DownloadToolbarActivity() {
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_CATEGORY_ID, description = "分类ID", required = true)
|
||||
var categoryId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_CATEGORY_TITLE, description = "分类标题", required = true)
|
||||
var categoryTitle: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
var entrance: String? = ""
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
updateStatusBarColor(com.gh.gamecenter.common.R.color.ui_surface, com.gh.gamecenter.common.R.color.ui_surface)
|
||||
@ -23,7 +40,7 @@ class CategoryV2Activity : DownloadToolbarActivity() {
|
||||
}
|
||||
|
||||
override fun provideNormalIntent(): Intent {
|
||||
return getTargetIntent(this, CategoryV2Activity::class.java, CategoryV2Fragment::class.java)
|
||||
return getTargetIntent(this, CategoryV2Activity::class.java, CategoryV2Fragment::class.java, intent.extras)
|
||||
}
|
||||
|
||||
override fun isAutoResetViewBackgroundEnabled() = true
|
||||
@ -36,11 +53,13 @@ class CategoryV2Activity : DownloadToolbarActivity() {
|
||||
|
||||
companion object {
|
||||
fun getIntent(context: Context, catalogId: String, catalogTitle: String, entrance: String): Intent {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(EntranceConsts.KEY_CATEGORY_ID, catalogId)
|
||||
bundle.putString(EntranceConsts.KEY_CATEGORY_TITLE, catalogTitle)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
return getTargetIntent(context, CategoryV2Activity::class.java, CategoryV2Fragment::class.java, bundle)
|
||||
val navigator = TheRouter.build(RouteConsts.activity.articleDetailActivity)
|
||||
.fillParams { bundle ->
|
||||
bundle.putString(EntranceConsts.KEY_CATEGORY_ID, catalogId)
|
||||
bundle.putString(EntranceConsts.KEY_CATEGORY_TITLE, catalogTitle)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -76,7 +76,6 @@ import com.gh.gamecenter.eventbus.EBTopCommunityChanged
|
||||
import com.gh.gamecenter.eventbus.EBTypeChange
|
||||
import com.gh.gamecenter.feature.entity.AnswerEntity
|
||||
import com.gh.gamecenter.feature.entity.ForumVideoEntity
|
||||
import com.gh.gamecenter.feature.entity.GameEntity
|
||||
import com.gh.gamecenter.feature.entity.UserEntity
|
||||
import com.gh.gamecenter.forum.home.CommunityHomeFragment
|
||||
import com.gh.gamecenter.forum.moderator.ApplyModeratorActivity
|
||||
|
||||
@ -19,7 +19,6 @@ import androidx.lifecycle.Observer
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import androidx.recyclerview.widget.RecyclerView.OnScrollListener
|
||||
import com.therouter.TheRouter
|
||||
import com.gh.common.util.CheckLoginUtils
|
||||
import com.gh.common.util.DirectUtils
|
||||
import com.gh.gamecenter.GameDetailActivity
|
||||
@ -54,6 +53,7 @@ import com.gh.gamecenter.login.user.UserManager
|
||||
import com.gh.gamecenter.login.user.UserViewModel
|
||||
import com.gh.gamecenter.newsdetail.NewsShareDialog
|
||||
import com.shuyu.gsyvideoplayer.video.base.GSYVideoView
|
||||
import com.therouter.TheRouter
|
||||
import org.greenrobot.eventbus.Subscribe
|
||||
import org.greenrobot.eventbus.ThreadMode
|
||||
|
||||
@ -309,7 +309,7 @@ class FollowHomeFragment : LazyFragment(), IScrollable {
|
||||
|
||||
newDetailDestination.observe(viewLifecycleOwner, EventObserver {
|
||||
TheRouter.build(RouteConsts.activity.newsDetailActivity)
|
||||
.withString(EntranceConsts.KEY_NEWSID, it)
|
||||
.withString(EntranceConsts.KEY_NEWS_ID, it)
|
||||
.withString(EntranceConsts.KEY_ENTRANCE, "")
|
||||
.navigation(requireActivity())
|
||||
})
|
||||
|
||||
@ -4,13 +4,41 @@ import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.common.utils.updateStatusBarColor
|
||||
import com.therouter.router.Autowired
|
||||
import com.therouter.router.Route
|
||||
|
||||
/**
|
||||
* 游戏专题合集详情页
|
||||
*/
|
||||
@Route(path = RouteConsts.activity.columnCollectionDetailActivity, description = "专题合集详情")
|
||||
class ColumnCollectionDetailActivity : ToolBarActivity() {
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_COLLECTION_ID, description = "合集ID", required = true)
|
||||
var collectionId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_COLUMN_NAME, description = "专题名", required = true)
|
||||
var columnName: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_BLOCK_ID, description = "板块ID")
|
||||
var blockId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_BLOCK_NAME, description = "板块名称")
|
||||
var blockName: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_COLUMN_COLLECTION_STYLE, description = "专题合集样式")
|
||||
var columnCollectionStyle: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
var entrance: String? = ""
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
updateStatusBarColor(com.gh.gamecenter.common.R.color.ui_surface, com.gh.gamecenter.common.R.color.ui_surface)
|
||||
@ -32,13 +60,6 @@ class ColumnCollectionDetailActivity : ToolBarActivity() {
|
||||
updateStatusBarColor(com.gh.gamecenter.common.R.color.ui_surface, com.gh.gamecenter.common.R.color.ui_surface)
|
||||
}
|
||||
|
||||
override fun getBusinessId(): Pair<String, String> {
|
||||
val fragment = targetFragment as? ColumnCollectionDetailFragment?
|
||||
return if (fragment?.arguments != null) {
|
||||
Pair(fragment.requireArguments().getString(EntranceConsts.KEY_COLLECTION_ID) ?: "", "")
|
||||
} else {
|
||||
super.getBusinessId()
|
||||
}
|
||||
}
|
||||
override fun getBusinessId(): Pair<String, String> = Pair(collectionId ?: "", "")
|
||||
|
||||
}
|
||||
@ -86,7 +86,6 @@ import com.gh.gamecenter.home.video.ScrollCalculatorHelper
|
||||
import com.gh.gamecenter.login.user.UserViewModel
|
||||
import com.gh.gamecenter.newsdetail.NewsDetailActivity
|
||||
import com.gh.gamecenter.packagehelper.PackageViewModel
|
||||
import com.gh.gamecenter.SearchActivity
|
||||
import com.gh.gamecenter.simulatorgame.SimulatorGameActivity
|
||||
import com.gh.gamecenter.tag.TagsActivity
|
||||
import com.gh.gamecenter.video.detail.CustomManager
|
||||
|
||||
@ -19,9 +19,8 @@ import com.gh.gamecenter.adapter.viewholder.LibaoNormalViewHolder;
|
||||
import com.gh.gamecenter.common.callback.OnRequestCallBackListener;
|
||||
import com.gh.gamecenter.common.retrofit.Response;
|
||||
import com.gh.gamecenter.common.utils.DialogHelper;
|
||||
import com.gh.gamecenter.common.utils.SensorsBridge;
|
||||
import com.gh.gamecenter.feature.utils.PlatformUtils;
|
||||
import com.gh.gamecenter.common.utils.ExtensionsKt;
|
||||
import com.gh.gamecenter.common.utils.SensorsBridge;
|
||||
import com.gh.gamecenter.common.view.BugFixedPopupWindow;
|
||||
import com.gh.gamecenter.common.viewholder.FooterViewHolder;
|
||||
import com.gh.gamecenter.core.utils.TimeUtils;
|
||||
@ -32,6 +31,7 @@ import com.gh.gamecenter.feature.entity.LibaoStatusEntity;
|
||||
import com.gh.gamecenter.feature.entity.MeEntity;
|
||||
import com.gh.gamecenter.feature.entity.UserDataLibaoEntity;
|
||||
import com.gh.gamecenter.feature.game.GameItemViewHolder;
|
||||
import com.gh.gamecenter.feature.utils.PlatformUtils;
|
||||
import com.gh.gamecenter.login.user.UserManager;
|
||||
import com.gh.gamecenter.retrofit.RetrofitManager;
|
||||
import com.lightgame.adapter.BaseRecyclerAdapter;
|
||||
|
||||
@ -6,13 +6,16 @@ import android.os.Bundle;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.therouter.router.Route;
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity;
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts;
|
||||
import com.gh.gamecenter.common.constant.RouteConsts;
|
||||
import com.gh.gamecenter.common.utils.ExtensionsKt;
|
||||
import com.gh.gamecenter.feature.entity.LibaoEntity;
|
||||
import com.halo.assistant.HaloApp;
|
||||
import com.therouter.TheRouter;
|
||||
import com.therouter.router.Autowired;
|
||||
import com.therouter.router.Navigator;
|
||||
import com.therouter.router.Route;
|
||||
|
||||
import kotlin.Pair;
|
||||
|
||||
@ -20,19 +23,27 @@ import kotlin.Pair;
|
||||
* Created by khy on 2016/12/13.
|
||||
* 礼包详情
|
||||
*/
|
||||
@Route(path = RouteConsts.activity.libaoDetailActivity)
|
||||
@Route(path = RouteConsts.activity.libaoDetailActivity, description = "礼包详情")
|
||||
public class LibaoDetailActivity extends ToolBarActivity {
|
||||
@Autowired(name = EntranceConsts.KEY_LIBAO_ID, description = "礼包ID", required = true)
|
||||
public String libaoId;
|
||||
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
public String entrance;
|
||||
@Override
|
||||
protected Intent provideNormalIntent() {
|
||||
return getTargetIntent(this, LibaoDetailActivity.class, LibaoDetailFragment.class, getIntent().getExtras());
|
||||
}
|
||||
|
||||
public static Intent getIntent(Context context, LibaoEntity libaoEntity, boolean isClickReceiveBtnIn, String entrance) {
|
||||
Bundle bundle = new Bundle();
|
||||
HaloApp.put(LibaoEntity.TAG, libaoEntity);
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
bundle.putBoolean(EntranceConsts.KEY_IS_CLICK_RECEIVE_BTN, isClickReceiveBtnIn);
|
||||
return getTargetIntent(context, LibaoDetailActivity.class, LibaoDetailFragment.class, bundle);
|
||||
Navigator navigator = TheRouter.build(RouteConsts.activity.libaoDetailActivity)
|
||||
.fillParams(bundle -> {
|
||||
HaloApp.put(EntranceConsts.KEY_LIBAO_ENTITY, libaoEntity);
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
bundle.putBoolean(EntranceConsts.KEY_IS_CLICK_RECEIVE_BTN, isClickReceiveBtnIn);
|
||||
return null;
|
||||
});
|
||||
return navigator.createIntent(context);
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@ -42,14 +53,19 @@ public class LibaoDetailActivity extends ToolBarActivity {
|
||||
|
||||
@NonNull
|
||||
public static Intent getIntentById(Context context, String id, String entrance) {
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
bundle.putString(EntranceConsts.KEY_ID, id);
|
||||
return getTargetIntent(context, LibaoDetailActivity.class, LibaoDetailFragment.class, bundle);
|
||||
Navigator navigator = TheRouter.build(RouteConsts.activity.libaoDetailActivity)
|
||||
.fillParams(bundle -> {
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
bundle.putString(EntranceConsts.KEY_LIBAO_ID, id);
|
||||
return null;
|
||||
});
|
||||
return navigator.createIntent(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
TheRouter.inject(this);
|
||||
|
||||
super.onCreate(savedInstanceState);
|
||||
ExtensionsKt.updateStatusBarColor(this, com.gh.gamecenter.common.R.color.ui_surface, com.gh.gamecenter.common.R.color.ui_surface);
|
||||
}
|
||||
@ -67,9 +83,9 @@ public class LibaoDetailActivity extends ToolBarActivity {
|
||||
libaoEntity = ((LibaoDetailFragment) getTargetFragment()).getLibaoEntity();
|
||||
}
|
||||
if (libaoEntity != null) {
|
||||
return new Pair(libaoEntity.getId(), "");
|
||||
} else if (getIntent().getStringExtra(EntranceConsts.KEY_ID) != null) {
|
||||
return new Pair(getIntent().getStringExtra(EntranceConsts.KEY_ID), "");
|
||||
return new Pair<>(libaoEntity.getId(), "");
|
||||
} else if (libaoId != null) {
|
||||
return new Pair<>(libaoId, "");
|
||||
} else {
|
||||
return super.getBusinessId();
|
||||
}
|
||||
|
||||
@ -159,7 +159,7 @@ public class LibaoDetailFragment extends ToolbarFragment implements LibaoDetailA
|
||||
@Override
|
||||
public void onSaveInstanceState(@NonNull Bundle outState) {
|
||||
super.onSaveInstanceState(outState);
|
||||
HaloApp.put(LibaoEntity.TAG, mAdapter.getLibaoEntity());
|
||||
HaloApp.put(EntranceConsts.KEY_LIBAO_ENTITY, mAdapter.getLibaoEntity());
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -178,7 +178,7 @@ public class LibaoDetailFragment extends ToolbarFragment implements LibaoDetailA
|
||||
|
||||
mName = getString(R.string.libao_detail);
|
||||
setNavigationTitle(mName);
|
||||
mLibaoEntity = (LibaoEntity) HaloApp.get(LibaoEntity.TAG, false);
|
||||
mLibaoEntity = (LibaoEntity) HaloApp.get(EntranceConsts.KEY_LIBAO_ENTITY, false);
|
||||
isClickReceiveBtnIn = requireArguments().getBoolean(EntranceConsts.KEY_IS_CLICK_RECEIVE_BTN, false);
|
||||
if (mLibaoEntity != null) {
|
||||
mLibaoEntity.setClickReceiveBtnIn(isClickReceiveBtnIn);
|
||||
@ -204,7 +204,7 @@ public class LibaoDetailFragment extends ToolbarFragment implements LibaoDetailA
|
||||
});
|
||||
|
||||
if (mLibaoEntity == null) {
|
||||
String id = requireArguments().getString(EntranceConsts.KEY_ID);
|
||||
String id = requireArguments().getString(EntranceConsts.KEY_LIBAO_ID);
|
||||
if (!TextUtils.isEmpty(id)) {
|
||||
getLibaoDigest(id);
|
||||
}
|
||||
|
||||
@ -139,7 +139,7 @@ public class MessageDetailFragment extends ToolbarFragment implements OnCommentC
|
||||
mConcernEntity = (ConcernEntity) HaloApp.get(ConcernEntity.TAG, true);
|
||||
mCommentEntity = args.getParcelable(CommentEntity.TAG);
|
||||
|
||||
newsId = args.getString(EntranceConsts.KEY_NEWSID);
|
||||
newsId = args.getString(EntranceConsts.KEY_NEWS_ID);
|
||||
commentNum = args.getInt("commentNum", -1);
|
||||
|
||||
//复用问题 mConcernEntity对应的文章有可能和跳转之前的文章不一致
|
||||
|
||||
@ -7,7 +7,6 @@ import android.text.TextUtils;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.therouter.router.Route;
|
||||
import com.gh.base.DownloadToolbarActivity;
|
||||
import com.gh.gamecenter.WebActivity;
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts;
|
||||
@ -15,6 +14,10 @@ import com.gh.gamecenter.common.constant.RouteConsts;
|
||||
import com.gh.gamecenter.common.utils.ExtensionsKt;
|
||||
import com.gh.gamecenter.core.utils.MtaHelper;
|
||||
import com.gh.gamecenter.feature.entity.NewsEntity;
|
||||
import com.therouter.TheRouter;
|
||||
import com.therouter.router.Autowired;
|
||||
import com.therouter.router.Navigator;
|
||||
import com.therouter.router.Route;
|
||||
|
||||
import kotlin.Pair;
|
||||
|
||||
@ -24,9 +27,21 @@ import kotlin.Pair;
|
||||
*
|
||||
* @author 黄壮华
|
||||
*/
|
||||
@Route(path = RouteConsts.activity.newsDetailActivity)
|
||||
@Route(path = RouteConsts.activity.newsDetailActivity, description = "新闻详情")
|
||||
public class NewsDetailActivity extends DownloadToolbarActivity {
|
||||
|
||||
@Autowired(name = EntranceConsts.KEY_NEWS_ID, description = "新闻ID", required = true)
|
||||
public String newsId;
|
||||
|
||||
@Autowired(name = EntranceConsts.KEY_NEWS_ENTITY, description = "新闻实体,如果你不懂这个是什么,那么不要用它,直接传入新闻ID即可")
|
||||
public NewsEntity newsEntity;
|
||||
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
public String entrance;
|
||||
|
||||
@Autowired(name = EntranceConsts.KEY_IS_COLLECTION_NEWS, description = "是否收藏的文章")
|
||||
public boolean isCollectionNews;
|
||||
|
||||
/**
|
||||
* 启动新闻详情页面
|
||||
*/
|
||||
@ -35,12 +50,14 @@ public class NewsDetailActivity extends DownloadToolbarActivity {
|
||||
if (newsEntity != null && !TextUtils.isEmpty(newsEntity.getLink())) {
|
||||
context.startActivity(WebActivity.getIntentByNews(context, newsEntity, entrance));
|
||||
} else {
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
bundle.putParcelable(NewsEntity.TAG, newsEntity);
|
||||
Intent intent = getTargetIntent(context, NewsDetailActivity.class, NewsDetailFragment.class, bundle);
|
||||
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
context.startActivity(intent);
|
||||
TheRouter
|
||||
.build(RouteConsts.activity.newsDetailActivity)
|
||||
.fillParams(bundle -> {
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
bundle.putParcelable(EntranceConsts.KEY_NEWS_ENTITY, newsEntity);
|
||||
return null;
|
||||
})
|
||||
.navigation(context);
|
||||
}
|
||||
}
|
||||
|
||||
@ -53,32 +70,40 @@ public class NewsDetailActivity extends DownloadToolbarActivity {
|
||||
Intent intent = WebActivity.getIntentByNews(context, newsEntity, entrance);
|
||||
context.startActivity(intent);
|
||||
} else {
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
bundle.putParcelable(NewsEntity.TAG, newsEntity);
|
||||
bundle.putBoolean(NewsDetailFragment.KEY_COLLECTIONNEWS, true);
|
||||
Intent intent = getTargetIntent(context, NewsDetailActivity.class, NewsDetailFragment.class, bundle);
|
||||
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
context.startActivity(intent);
|
||||
TheRouter
|
||||
.build(RouteConsts.activity.newsDetailActivity)
|
||||
.fillParams(bundle -> {
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
bundle.putParcelable(EntranceConsts.KEY_NEWS_ENTITY, newsEntity);
|
||||
bundle.putBoolean(EntranceConsts.KEY_IS_COLLECTION_NEWS, true);
|
||||
return null;
|
||||
})
|
||||
.navigation(context);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public static Intent getIntentById(Context context, String newsId, boolean isCollectionNews, String entrance) {
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
bundle.putBoolean(NewsDetailFragment.KEY_COLLECTIONNEWS, isCollectionNews);
|
||||
bundle.putString(EntranceConsts.KEY_NEWSID, newsId);
|
||||
return getTargetIntent(context, NewsDetailActivity.class, NewsDetailFragment.class, bundle);
|
||||
Navigator navigator = TheRouter.build(RouteConsts.activity.libaoDetailActivity)
|
||||
.fillParams(bundle -> {
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
bundle.putBoolean(EntranceConsts.KEY_IS_COLLECTION_NEWS, isCollectionNews);
|
||||
bundle.putString(EntranceConsts.KEY_NEWS_ID, newsId);
|
||||
return null;
|
||||
});
|
||||
return navigator.createIntent(context);
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public static Intent getIntentById(Context context, String newsId, String entrance) {
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
bundle.putString(EntranceConsts.KEY_NEWSID, newsId);
|
||||
return getTargetIntent(context, NewsDetailActivity.class, NewsDetailFragment.class, bundle);
|
||||
Navigator navigator = TheRouter.build(RouteConsts.activity.libaoDetailActivity)
|
||||
.fillParams(bundle -> {
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance);
|
||||
bundle.putString(EntranceConsts.KEY_NEWS_ID, newsId);
|
||||
return null;
|
||||
});
|
||||
return navigator.createIntent(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -88,6 +113,8 @@ public class NewsDetailActivity extends DownloadToolbarActivity {
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
TheRouter.inject(this);
|
||||
|
||||
super.onCreate(savedInstanceState);
|
||||
ExtensionsKt.updateStatusBarColor(this, com.gh.gamecenter.common.R.color.ui_surface, com.gh.gamecenter.common.R.color.ui_surface);
|
||||
}
|
||||
@ -105,15 +132,10 @@ public class NewsDetailActivity extends DownloadToolbarActivity {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> getBusinessId() {
|
||||
NewsEntity newsEntity = null;
|
||||
Bundle bundle = getIntent().getBundleExtra(NORMAL_FRAGMENT_BUNDLE);
|
||||
if (bundle != null) {
|
||||
newsEntity = bundle.getParcelable(NewsEntity.TAG);
|
||||
}
|
||||
if (getIntent().getStringExtra(EntranceConsts.KEY_NEWSID) != null) {
|
||||
return new Pair(getIntent().getStringExtra(EntranceConsts.KEY_NEWSID), "");
|
||||
if (newsId != null) {
|
||||
return new Pair<>(newsId, "");
|
||||
} else if (newsEntity != null) {
|
||||
return new Pair(newsEntity.getId(), "");
|
||||
return new Pair<>(newsEntity.getId(), "");
|
||||
} else {
|
||||
return super.getBusinessId();
|
||||
}
|
||||
|
||||
@ -99,8 +99,6 @@ public class NewsDetailFragment extends ToolbarFragment {
|
||||
|
||||
private NewsDetailAdapter adapter;
|
||||
|
||||
public static final String KEY_COLLECTIONNEWS = "isCollectionNews";
|
||||
|
||||
private boolean isSentReport = false;
|
||||
private boolean isSecondDown = false;
|
||||
private boolean mIsCollectionNews;
|
||||
@ -259,11 +257,11 @@ public class NewsDetailFragment extends ToolbarFragment {
|
||||
adapter = new NewsDetailAdapter(requireContext(), this, mHideUselessInfo, mEntrance);
|
||||
mDetailRv.setAdapter(adapter);
|
||||
|
||||
newsId = requireArguments().getString(EntranceConsts.KEY_NEWSID);
|
||||
mIsCollectionNews = requireArguments().getBoolean(KEY_COLLECTIONNEWS, false);
|
||||
newsId = requireArguments().getString(EntranceConsts.KEY_NEWS_ID);
|
||||
mIsCollectionNews = requireArguments().getBoolean(EntranceConsts.KEY_IS_COLLECTION_NEWS, false);
|
||||
|
||||
if (newsId == null) {
|
||||
mNewsEntity = requireArguments().getParcelable(NewsEntity.TAG);
|
||||
mNewsEntity = requireArguments().getParcelable(EntranceConsts.KEY_NEWS_ENTITY);
|
||||
if (mNewsEntity != null) {
|
||||
if (mNewsEntity.getType() != null) {
|
||||
setNavigationTitle(mNewsEntity.getType());
|
||||
|
||||
@ -10,7 +10,6 @@ import androidx.lifecycle.MutableLiveData
|
||||
import com.gh.common.util.DirectUtils
|
||||
import com.gh.common.util.PackageUtils
|
||||
import com.gh.gamecenter.GameDetailActivity
|
||||
import com.gh.gamecenter.MainActivity
|
||||
import com.gh.gamecenter.common.entity.LinkEntity
|
||||
import com.gh.gamecenter.common.retrofit.BiResponse
|
||||
import com.gh.gamecenter.common.retrofit.Response
|
||||
@ -19,18 +18,15 @@ import com.gh.gamecenter.entity.AddonLinkEntity
|
||||
import com.gh.gamecenter.entity.AppEntity
|
||||
import com.gh.gamecenter.entity.HaloAddonEntity
|
||||
import com.gh.gamecenter.entity.SignEntity
|
||||
import com.gh.gamecenter.eventbus.EBSkip
|
||||
import com.gh.gamecenter.login.user.UserManager
|
||||
import com.gh.gamecenter.newsdetail.NewsDetailActivity
|
||||
import com.gh.gamecenter.retrofit.RetrofitManager
|
||||
import com.gh.gamecenter.subject.SubjectActivity
|
||||
import com.gh.gamecenter.wrapper.MainWrapperFragment
|
||||
import com.halo.assistant.HaloApp
|
||||
import com.lightgame.utils.Utils
|
||||
import io.reactivex.android.schedulers.AndroidSchedulers
|
||||
import io.reactivex.schedulers.Schedulers
|
||||
import okhttp3.ResponseBody
|
||||
import org.greenrobot.eventbus.EventBus
|
||||
import retrofit2.HttpException
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.*
|
||||
|
||||
@ -3,15 +3,28 @@ package com.gh.gamecenter.qa.answer.detail
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity
|
||||
import com.gh.gamecenter.common.base.activity.BaseActivity
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.common.utils.updateStatusBarColor
|
||||
import com.therouter.TheRouter
|
||||
import com.therouter.router.Autowired
|
||||
import com.therouter.router.Route
|
||||
|
||||
/**
|
||||
* 回答详情
|
||||
*/
|
||||
@Route(path = RouteConsts.activity.answerDetailActivity, description = "回答详情")
|
||||
class SimpleAnswerDetailActivity : ToolBarActivity() {
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_ANSWER_ID, description = "回答ID", required = true)
|
||||
var answerId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
var entrance: String? = ""
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_PATH, description = "页面路径 (历史代码用到的,传不传都行)")
|
||||
var path: String? = ""
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
@ -22,7 +35,8 @@ class SimpleAnswerDetailActivity : ToolBarActivity() {
|
||||
return getTargetIntent(
|
||||
this,
|
||||
SimpleAnswerDetailActivity::class.java,
|
||||
SimpleAnswerDetailFragment::class.java
|
||||
SimpleAnswerDetailFragment::class.java,
|
||||
intent.extras
|
||||
)
|
||||
}
|
||||
|
||||
@ -36,16 +50,13 @@ class SimpleAnswerDetailActivity : ToolBarActivity() {
|
||||
companion object {
|
||||
@JvmStatic
|
||||
fun getIntent(context: Context, answerId: String, entrance: String, path: String): Intent {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(EntranceConsts.KEY_ANSWER_ID, answerId)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
bundle.putString(EntranceConsts.KEY_PATH, path)
|
||||
return getTargetIntent(
|
||||
context,
|
||||
SimpleAnswerDetailActivity::class.java,
|
||||
SimpleAnswerDetailFragment::class.java,
|
||||
bundle
|
||||
)
|
||||
val navigator = TheRouter.build(RouteConsts.activity.answerDetailActivity)
|
||||
.fillParams { bundle ->
|
||||
bundle.putString(EntranceConsts.KEY_ANSWER_ID, answerId)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
bundle.putString(EntranceConsts.KEY_PATH, path)
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2,32 +2,66 @@ package com.gh.gamecenter.qa.article.detail
|
||||
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import com.therouter.router.Route
|
||||
import android.os.Bundle
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.common.entity.CommunityEntity
|
||||
import com.gh.gamecenter.entity.SpecialColumn
|
||||
import com.therouter.TheRouter
|
||||
import com.therouter.router.Autowired
|
||||
import com.therouter.router.Route
|
||||
|
||||
/**
|
||||
* 帖子详情
|
||||
*/
|
||||
@Route(path = RouteConsts.activity.articleDetailActivity)
|
||||
@Route(path = RouteConsts.activity.articleDetailActivity, description = "帖子详情")
|
||||
class ArticleDetailActivity : ToolBarActivity() {
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_COMMUNITY_DATA, description = "论坛实体,如果你不懂这个是什么,那么不要用它,直接传入论坛ID和文章ID即可")
|
||||
var communityEntity: CommunityEntity? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_COMMUNITY_ID, description = "论坛ID")
|
||||
var communityId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_COMMUNITY_ARTICLE_ID, description = "文章ID", required = true)
|
||||
var articleId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
var entrance: String? = ""
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_PATH, description = "页面路径 (历史代码用到的,传不传都行)")
|
||||
var path: String? = ""
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_SOURCE_ENTRANCE, description = "入口埋点字段")
|
||||
var sourceEntrance: String? = ""
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
TheRouter.inject(this)
|
||||
if (communityEntity == null && communityId != null) {
|
||||
communityEntity = CommunityEntity(id = communityId ?: "").also {
|
||||
intent.putExtra(EntranceConsts.KEY_COMMUNITY_DATA, it)
|
||||
}
|
||||
}
|
||||
|
||||
super.onCreate(savedInstanceState)
|
||||
}
|
||||
|
||||
override fun getLayoutId() = R.layout.activity_amway
|
||||
|
||||
override fun getFragmentPlaceholderId() = R.id.placeholder
|
||||
|
||||
override fun provideNormalIntent(): Intent {
|
||||
return getTargetIntent(this, ArticleDetailActivity::class.java, ArticleDetailFragment::class.java)
|
||||
return getTargetIntent(this, ArticleDetailActivity::class.java, ArticleDetailFragment::class.java, intent.extras)
|
||||
}
|
||||
|
||||
override fun getBusinessId(): Pair<String, String> {
|
||||
return Pair(
|
||||
targetFragment.arguments?.getString(EntranceConsts.KEY_COMMUNITY_ARTICLE_ID) ?: "",
|
||||
targetFragment.arguments?.getParcelable<CommunityEntity>(EntranceConsts.KEY_COMMUNITY_DATA)?.id ?: ""
|
||||
articleId ?: "",
|
||||
communityEntity?.id ?: ""
|
||||
)
|
||||
}
|
||||
|
||||
@ -46,14 +80,16 @@ class ArticleDetailActivity : ToolBarActivity() {
|
||||
specialColumn: SpecialColumn? = null,
|
||||
sourceEntrance: String = "",
|
||||
): Intent {
|
||||
val intent = Intent(context, ArticleDetailActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
intent.putExtra(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
intent.putExtra(EntranceConsts.KEY_COMMUNITY_ARTICLE_ID, articleId)
|
||||
intent.putExtra(EntranceConsts.KEY_COMMUNITY_DATA, community)
|
||||
intent.putExtra(EntranceConsts.KEY_PATH, path)
|
||||
intent.putExtra(EntranceConsts.KEY_DATA, specialColumn)
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.articleDetailActivity)
|
||||
.fillParams { bundle ->
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
bundle.putString(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
bundle.putString(EntranceConsts.KEY_COMMUNITY_ARTICLE_ID, articleId)
|
||||
bundle.putParcelable(EntranceConsts.KEY_COMMUNITY_DATA, community)
|
||||
bundle.putString(EntranceConsts.KEY_PATH, path)
|
||||
bundle.putParcelable(EntranceConsts.KEY_DATA, specialColumn)
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
|
||||
/**
|
||||
@ -68,14 +104,16 @@ class ArticleDetailActivity : ToolBarActivity() {
|
||||
path: String,
|
||||
sourceEntrance: String = "",
|
||||
): Intent {
|
||||
val intent = Intent(context, ArticleDetailActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
intent.putExtra(EntranceConsts.KEY_COMMUNITY_ARTICLE_ID, articleId)
|
||||
intent.putExtra(EntranceConsts.KEY_COMMUNITY_DATA, community)
|
||||
intent.putExtra(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, true)
|
||||
intent.putExtra(EntranceConsts.KEY_PATH, path)
|
||||
intent.putExtra(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.articleDetailActivity)
|
||||
.fillParams { bundle ->
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
bundle.putString(EntranceConsts.KEY_COMMUNITY_ARTICLE_ID, articleId)
|
||||
bundle.putParcelable(EntranceConsts.KEY_COMMUNITY_DATA, community)
|
||||
bundle.putBoolean(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, true)
|
||||
bundle.putString(EntranceConsts.KEY_PATH, path)
|
||||
bundle.putString(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ -88,14 +126,16 @@ class ArticleDetailActivity : ToolBarActivity() {
|
||||
path: String,
|
||||
sourceEntrance: String = "",
|
||||
): Intent {
|
||||
val intent = Intent(context, ArticleDetailActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
intent.putExtra(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
intent.putExtra(EntranceConsts.KEY_COMMUNITY_ARTICLE_ID, articleId)
|
||||
intent.putExtra(EntranceConsts.KEY_RECOMMEND_ID, recommendId)
|
||||
intent.putExtra(EntranceConsts.KEY_COMMUNITY_DATA, community)
|
||||
intent.putExtra(EntranceConsts.KEY_PATH, path)
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.articleDetailActivity)
|
||||
.fillParams { bundle ->
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
bundle.putString(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
bundle.putString(EntranceConsts.KEY_COMMUNITY_ARTICLE_ID, articleId)
|
||||
bundle.putString(EntranceConsts.KEY_RECOMMEND_ID, recommendId)
|
||||
bundle.putParcelable(EntranceConsts.KEY_COMMUNITY_DATA, community)
|
||||
bundle.putString(EntranceConsts.KEY_PATH, path)
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
|
||||
/**
|
||||
@ -111,15 +151,17 @@ class ArticleDetailActivity : ToolBarActivity() {
|
||||
path: String,
|
||||
sourceEntrance: String = "",
|
||||
): Intent {
|
||||
val intent = Intent(context, ArticleDetailActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
intent.putExtra(EntranceConsts.KEY_COMMUNITY_ARTICLE_ID, articleId)
|
||||
intent.putExtra(EntranceConsts.KEY_COMMUNITY_DATA, community)
|
||||
intent.putExtra(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, true)
|
||||
intent.putExtra(EntranceConsts.KEY_TOP_COMMENT_ID, topCommentId)
|
||||
intent.putExtra(EntranceConsts.KEY_PATH, path)
|
||||
intent.putExtra(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.articleDetailActivity)
|
||||
.fillParams { bundle ->
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
bundle.putString(EntranceConsts.KEY_COMMUNITY_ARTICLE_ID, articleId)
|
||||
bundle.putParcelable(EntranceConsts.KEY_COMMUNITY_DATA, community)
|
||||
bundle.putBoolean(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, true)
|
||||
bundle.putString(EntranceConsts.KEY_TOP_COMMENT_ID, topCommentId)
|
||||
bundle.putString(EntranceConsts.KEY_PATH, path)
|
||||
bundle.putString(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2,30 +2,50 @@ package com.gh.gamecenter.qa.questions.newdetail
|
||||
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import com.therouter.router.Route
|
||||
import android.os.Bundle
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.common.entity.CommunityEntity
|
||||
import com.therouter.TheRouter
|
||||
import com.therouter.router.Autowired
|
||||
import com.therouter.router.Route
|
||||
|
||||
/**
|
||||
* 提问详情
|
||||
*/
|
||||
@Route(path = RouteConsts.activity.questionDetailActivity)
|
||||
@Route(path = RouteConsts.activity.questionDetailActivity, description = "提问详情")
|
||||
class NewQuestionDetailActivity : ToolBarActivity() {
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_QUESTIONS_ID, description = "提问ID", required = true)
|
||||
var questionId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
var entrance: String? = ""
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_PATH, description = "页面路径 (历史代码用到的,传不传都行)")
|
||||
var path: String? = ""
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_SOURCE_ENTRANCE, description = "入口埋点字段")
|
||||
var sourceEntrance: String? = ""
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
TheRouter.inject(this)
|
||||
super.onCreate(savedInstanceState)
|
||||
}
|
||||
|
||||
override fun getLayoutId() = R.layout.activity_amway
|
||||
|
||||
override fun getFragmentPlaceholderId() = R.id.placeholder
|
||||
|
||||
override fun provideNormalIntent(): Intent {
|
||||
return getTargetIntent(this, NewQuestionDetailActivity::class.java, NewQuestionDetailFragment::class.java)
|
||||
return getTargetIntent(this, NewQuestionDetailActivity::class.java, NewQuestionDetailFragment::class.java, intent.extras)
|
||||
}
|
||||
|
||||
override fun getBusinessId(): Pair<String, String> {
|
||||
return Pair(
|
||||
targetFragment.arguments?.getString(EntranceConsts.KEY_QUESTIONS_ID) ?: "",
|
||||
questionId ?: "",
|
||||
targetFragment.arguments?.getParcelable<CommunityEntity>(EntranceConsts.KEY_COMMUNITY_DATA)?.id
|
||||
?: ""
|
||||
)
|
||||
@ -42,12 +62,14 @@ class NewQuestionDetailActivity : ToolBarActivity() {
|
||||
path: String,
|
||||
sourceEntrance: String = "",
|
||||
): Intent {
|
||||
val intent = Intent(context, NewQuestionDetailActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
intent.putExtra(EntranceConsts.KEY_QUESTIONS_ID, questionId)
|
||||
intent.putExtra(EntranceConsts.KEY_PATH, path)
|
||||
intent.putExtra(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.questionDetailActivity)
|
||||
.fillParams {
|
||||
it.putString(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
it.putString(EntranceConsts.KEY_QUESTIONS_ID, questionId)
|
||||
it.putString(EntranceConsts.KEY_PATH, path)
|
||||
it.putString(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
|
||||
/**
|
||||
@ -61,13 +83,15 @@ class NewQuestionDetailActivity : ToolBarActivity() {
|
||||
path: String,
|
||||
sourceEntrance: String = ""
|
||||
): Intent {
|
||||
val intent = Intent(context, NewQuestionDetailActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
intent.putExtra(EntranceConsts.KEY_QUESTIONS_ID, questionId)
|
||||
intent.putExtra(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, true)
|
||||
intent.putExtra(EntranceConsts.KEY_PATH, path)
|
||||
intent.putExtra(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.questionDetailActivity)
|
||||
.fillParams {
|
||||
it.putString(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
it.putString(EntranceConsts.KEY_QUESTIONS_ID, questionId)
|
||||
it.putBoolean(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, true)
|
||||
it.putString(EntranceConsts.KEY_PATH, path)
|
||||
it.putString(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ -79,14 +103,16 @@ class NewQuestionDetailActivity : ToolBarActivity() {
|
||||
path: String,
|
||||
sourceEntrance: String = ""
|
||||
): Intent {
|
||||
val intent = Intent(context, NewQuestionDetailActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
intent.putExtra(EntranceConsts.KEY_QUESTIONS_ID, questionId)
|
||||
intent.putExtra(EntranceConsts.KEY_ANSWER_ID, answerId)
|
||||
intent.putExtra(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, true)
|
||||
intent.putExtra(EntranceConsts.KEY_PATH, path)
|
||||
intent.putExtra(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.questionDetailActivity)
|
||||
.fillParams {
|
||||
it.putString(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
it.putString(EntranceConsts.KEY_QUESTIONS_ID, questionId)
|
||||
it.putString(EntranceConsts.KEY_ANSWER_ID, answerId)
|
||||
it.putBoolean(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, true)
|
||||
it.putString(EntranceConsts.KEY_PATH, path)
|
||||
it.putString(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ -100,15 +126,17 @@ class NewQuestionDetailActivity : ToolBarActivity() {
|
||||
scrollToComment: Boolean = false,
|
||||
sourceEntrance: String = "",
|
||||
): Intent {
|
||||
val intent = Intent(context, NewQuestionDetailActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
intent.putExtra(EntranceConsts.KEY_QUESTIONS_ID, questionId)
|
||||
intent.putExtra(EntranceConsts.KEY_ANSWER_ID, answerId)
|
||||
intent.putExtra(EntranceConsts.KEY_RECOMMEND_ID, recommendId)
|
||||
intent.putExtra(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, scrollToComment)
|
||||
intent.putExtra(EntranceConsts.KEY_PATH, path)
|
||||
intent.putExtra(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.questionDetailActivity)
|
||||
.fillParams {
|
||||
it.putString(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
it.putString(EntranceConsts.KEY_QUESTIONS_ID, questionId)
|
||||
it.putString(EntranceConsts.KEY_ANSWER_ID, answerId)
|
||||
it.putString(EntranceConsts.KEY_RECOMMEND_ID, recommendId)
|
||||
it.putBoolean(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, scrollToComment)
|
||||
it.putString(EntranceConsts.KEY_PATH, path)
|
||||
it.putString(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ -120,14 +148,16 @@ class NewQuestionDetailActivity : ToolBarActivity() {
|
||||
path: String,
|
||||
sourceEntrance: String = ""
|
||||
): Intent {
|
||||
val intent = Intent(context, NewQuestionDetailActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
intent.putExtra(EntranceConsts.KEY_QUESTIONS_ID, questionId)
|
||||
intent.putExtra(EntranceConsts.KEY_TOP_COMMENT_ID, topCommentId)
|
||||
intent.putExtra(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, true)
|
||||
intent.putExtra(EntranceConsts.KEY_PATH, path)
|
||||
intent.putExtra(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.questionDetailActivity)
|
||||
.fillParams {
|
||||
it.putString(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
it.putString(EntranceConsts.KEY_QUESTIONS_ID, questionId)
|
||||
it.putString(EntranceConsts.KEY_TOP_COMMENT_ID, topCommentId)
|
||||
it.putBoolean(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, true)
|
||||
it.putString(EntranceConsts.KEY_PATH, path)
|
||||
it.putString(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2,29 +2,47 @@ package com.gh.gamecenter.qa.subject;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity;
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts;
|
||||
import com.gh.gamecenter.common.constant.RouteConsts;
|
||||
import com.gh.gamecenter.common.entity.CommunityEntity;
|
||||
import com.therouter.TheRouter;
|
||||
import com.therouter.router.Autowired;
|
||||
import com.therouter.router.Navigator;
|
||||
import com.therouter.router.Route;
|
||||
|
||||
/**
|
||||
* Created by khy on 10/04/18.
|
||||
* 社区专题
|
||||
*/
|
||||
|
||||
@Route(path = RouteConsts.activity.communitySubjectActivity, description = "社区专题")
|
||||
public class CommunitySubjectActivity extends ToolBarActivity {
|
||||
@Autowired(name = EntranceConsts.KEY_COLUMN_ID, description = "专题ID", required = true)
|
||||
public String columnId;
|
||||
|
||||
@Autowired(name = EntranceConsts.KEY_COMMUNITY_DATA, description = "论坛实体,如果你不懂这个是什么,那么不要用它,直接传入论坛ID和文章ID即可")
|
||||
public CommunityEntity communityEntity;
|
||||
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
public String entrance;
|
||||
|
||||
@Autowired(name = EntranceConsts.KEY_PATH, description = "页面路径 (历史代码用到的,传不传都行)")
|
||||
public String path;
|
||||
|
||||
public static Intent getIntent(Context context, CommunityEntity community, String subjectId, String entrance, String path) {
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path));
|
||||
bundle.putString(EntranceConsts.KEY_COLUMN_ID, subjectId);
|
||||
bundle.putParcelable(EntranceConsts.KEY_COMMUNITY_DATA, community);
|
||||
return getTargetIntent(context, CommunitySubjectActivity.class, AskSubjectFragment.class, bundle);
|
||||
Navigator navigator = TheRouter.build(RouteConsts.activity.communitySubjectActivity)
|
||||
.fillParams(bundle -> {
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path));
|
||||
bundle.putString(EntranceConsts.KEY_COLUMN_ID, subjectId);
|
||||
bundle.putParcelable(EntranceConsts.KEY_COMMUNITY_DATA, community);
|
||||
return null;
|
||||
});
|
||||
return navigator.createIntent(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Intent provideNormalIntent() {
|
||||
return getTargetIntent(this, CommunitySubjectActivity.class, AskSubjectFragment.class);
|
||||
return getTargetIntent(this, CommunitySubjectActivity.class, AskSubjectFragment.class, getIntent().getExtras());
|
||||
}
|
||||
}
|
||||
|
||||
@ -5,19 +5,37 @@ import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import android.view.View
|
||||
import androidx.fragment.app.Fragment
|
||||
import com.therouter.router.Route
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.common.base.activity.BaseActivity
|
||||
import com.gh.gamecenter.common.base.fragment.BaseFragment_TabLayout.PAGE_INDEX
|
||||
import com.gh.gamecenter.common.base.fragment.ToolbarFragment
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.therouter.TheRouter
|
||||
import com.therouter.router.Autowired
|
||||
import com.therouter.router.Route
|
||||
|
||||
/**
|
||||
* 视频贴详情
|
||||
*/
|
||||
@Route(path = RouteConsts.activity.forumVideoDetailActivity)
|
||||
@Route(path = RouteConsts.activity.forumVideoDetailActivity, description = "视频贴详情")
|
||||
class ForumVideoDetailActivity : BaseActivity() {
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_VIDEO_ID, description = "视频ID", required = true)
|
||||
var videoId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
var entrance: String? = ""
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_PATH, description = "页面路径 (历史代码用到的,传不传都行)")
|
||||
var path: String? = ""
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_SOURCE_ENTRANCE, description = "入口埋点字段")
|
||||
var sourceEntrance: String? = ""
|
||||
|
||||
var containerFragment: Fragment? = null
|
||||
|
||||
override fun getLayoutId(): Int {
|
||||
@ -25,6 +43,8 @@ class ForumVideoDetailActivity : BaseActivity() {
|
||||
}
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
TheRouter.inject(this)
|
||||
|
||||
super.onCreate(savedInstanceState)
|
||||
|
||||
containerFragment = supportFragmentManager.findFragmentByTag(ForumVideoDetailFragment::class.java.name)
|
||||
@ -46,13 +66,7 @@ class ForumVideoDetailActivity : BaseActivity() {
|
||||
|
||||
override fun isAutoResetViewBackgroundEnabled(): Boolean = true
|
||||
|
||||
override fun getBusinessId(): Pair<String, String> {
|
||||
return if (containerFragment?.arguments != null) {
|
||||
Pair(containerFragment?.requireArguments()?.getString(EntranceConsts.KEY_VIDEO_ID) ?: "", "")
|
||||
} else {
|
||||
super.getBusinessId()
|
||||
}
|
||||
}
|
||||
override fun getBusinessId(): Pair<String, String> = Pair(videoId ?: "", "")
|
||||
|
||||
companion object {
|
||||
const val VIDEO_PATCH_REQUEST = 100
|
||||
@ -103,16 +117,18 @@ class ForumVideoDetailActivity : BaseActivity() {
|
||||
scrollToComment: Boolean = false,
|
||||
sourceEntrance: String = ""
|
||||
): Intent {
|
||||
val intent = Intent(context, ForumVideoDetailActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_VIDEO_ID, videoId)
|
||||
intent.putExtra(EntranceConsts.KEY_BBS_ID, bbsId)
|
||||
intent.putExtra(EntranceConsts.KEY_RECOMMEND_ID, recommendId)
|
||||
intent.putExtra(EntranceConsts.KEY_TOP_COMMENT_ID, topCommentId)
|
||||
intent.putExtra(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
if (scrollToComment) {
|
||||
intent.putExtra(PAGE_INDEX, 1)
|
||||
}
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.articleDetailActivity)
|
||||
.fillParams { bundle ->
|
||||
bundle.putString(EntranceConsts.KEY_VIDEO_ID, videoId)
|
||||
bundle.putString(EntranceConsts.KEY_BBS_ID, bbsId)
|
||||
bundle.putString(EntranceConsts.KEY_RECOMMEND_ID, recommendId)
|
||||
bundle.putString(EntranceConsts.KEY_TOP_COMMENT_ID, topCommentId)
|
||||
bundle.putString(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
if (scrollToComment) {
|
||||
bundle.putInt(PAGE_INDEX, 1)
|
||||
}
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -8,22 +8,51 @@ import com.gh.base.DownloadToolbarActivity
|
||||
import com.gh.common.util.DirectUtils
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.common.exposure.ExposureSource
|
||||
import com.gh.gamecenter.common.utils.updateStatusBarColor
|
||||
import com.gh.gamecenter.core.utils.MtaHelper
|
||||
import com.gh.gamecenter.entity.SubjectData
|
||||
import com.therouter.TheRouter
|
||||
import com.therouter.router.Autowired
|
||||
import com.therouter.router.Route
|
||||
|
||||
/**
|
||||
* 专题详情
|
||||
*/
|
||||
@Route(path = RouteConsts.activity.subjectActivity, description = "专题详情")
|
||||
open class SubjectActivity : DownloadToolbarActivity() {
|
||||
private var subjectData: SubjectData? = null
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_SUBJECT_ID, description = "专题ID")
|
||||
var subjectId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_SUBJECT_NAME, description = "专题名称")
|
||||
var subjectName: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_SUBJECT_DATA, description = "专题实体,如果你不懂这个是什么,那么不要用它,直接传入专题ID和专题名称即可")
|
||||
var subjectData: SubjectData? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_IS_AD_SUBJECT, description = "是否广告专题")
|
||||
var isAdSubject: Boolean = false
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
var entrance: String? = ""
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_PATH, description = "页面路径 (历史代码用到的,传不传都行)")
|
||||
var path: String? = ""
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
TheRouter.inject(this)
|
||||
if (subjectData == null && subjectId != null) {
|
||||
subjectData = SubjectData(subjectId = subjectId, subjectName = subjectName, isOrder = false).also {
|
||||
intent.putExtra(EntranceConsts.KEY_SUBJECT_DATA, it)
|
||||
}
|
||||
}
|
||||
|
||||
super.onCreate(savedInstanceState)
|
||||
updateStatusBarColor(com.gh.gamecenter.common.R.color.ui_surface, com.gh.gamecenter.common.R.color.ui_surface)
|
||||
subjectData = intent.getBundleExtra(NORMAL_FRAGMENT_BUNDLE)?.getParcelable(EntranceConsts.KEY_SUBJECT_DATA)
|
||||
?: SubjectData("", "", false)
|
||||
}
|
||||
|
||||
override fun showDownloadMenu() = true
|
||||
@ -35,7 +64,8 @@ open class SubjectActivity : DownloadToolbarActivity() {
|
||||
}
|
||||
|
||||
override fun provideNormalIntent(): Intent {
|
||||
return getTargetIntent(this, SubjectActivity::class.java, SubjectFragment::class.java)
|
||||
val targetClass = if (isAdSubject) AdSubjectListFragment::class.java else SubjectFragment::class.java
|
||||
return getTargetIntent(this, SubjectActivity::class.java, targetClass, intent.extras)
|
||||
}
|
||||
|
||||
override fun isAutoResetViewBackgroundEnabled() = true
|
||||
@ -73,26 +103,21 @@ open class SubjectActivity : DownloadToolbarActivity() {
|
||||
subjectType: SubjectData.SubjectType = SubjectData.SubjectType.NORMAL
|
||||
) {
|
||||
MtaHelper.onEvent("详情页面", "专题详情", name)
|
||||
|
||||
val bundle = Bundle()
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
val subjectData = SubjectData(subjectId = id, subjectName = name, isOrder = isOrder, subjectType = subjectType)
|
||||
bundle.putParcelable(EntranceConsts.KEY_SUBJECT_DATA, subjectData)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
if (exposureSourceList != null) {
|
||||
bundle.putParcelableArrayList(
|
||||
EntranceConsts.KEY_EXPOSURE_SOURCE_LIST,
|
||||
ArrayList(exposureSourceList)
|
||||
)
|
||||
}
|
||||
context.startActivity(
|
||||
getTargetIntent(
|
||||
context,
|
||||
SubjectActivity::class.java,
|
||||
SubjectFragment::class.java,
|
||||
bundle
|
||||
)
|
||||
)
|
||||
TheRouter
|
||||
.build(RouteConsts.activity.subjectActivity)
|
||||
.fillParams { bundle ->
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
val subjectData = SubjectData(subjectId = id, subjectName = name, isOrder = isOrder, subjectType = subjectType)
|
||||
bundle.putParcelable(EntranceConsts.KEY_SUBJECT_DATA, subjectData)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
if (exposureSourceList != null) {
|
||||
bundle.putParcelableArrayList(
|
||||
EntranceConsts.KEY_EXPOSURE_SOURCE_LIST,
|
||||
ArrayList(exposureSourceList)
|
||||
)
|
||||
}
|
||||
}
|
||||
.navigation(context)
|
||||
}
|
||||
|
||||
/**
|
||||
@ -108,33 +133,30 @@ open class SubjectActivity : DownloadToolbarActivity() {
|
||||
exposureSourceList: ArrayList<ExposureSource>? = null,
|
||||
entrance: String?
|
||||
) {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
val subjectData =
|
||||
SubjectData(
|
||||
subjectId = "",
|
||||
adId = adId,
|
||||
codeId = codeId,
|
||||
subjectName = name,
|
||||
isOrder = false,
|
||||
isAdData = adIconActive
|
||||
)
|
||||
bundle.putParcelable(EntranceConsts.KEY_SUBJECT_DATA, subjectData)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
if (exposureSourceList != null) {
|
||||
bundle.putParcelableArrayList(
|
||||
EntranceConsts.KEY_EXPOSURE_SOURCE_LIST,
|
||||
ArrayList(exposureSourceList)
|
||||
)
|
||||
}
|
||||
context.startActivity(
|
||||
getTargetIntent(
|
||||
context,
|
||||
SubjectActivity::class.java,
|
||||
AdSubjectListFragment::class.java,
|
||||
bundle
|
||||
)
|
||||
)
|
||||
TheRouter
|
||||
.build(RouteConsts.activity.subjectActivity)
|
||||
.fillParams { bundle ->
|
||||
bundle.putBoolean(EntranceConsts.KEY_IS_AD_SUBJECT, true)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
val subjectData =
|
||||
SubjectData(
|
||||
subjectId = "",
|
||||
adId = adId,
|
||||
codeId = codeId,
|
||||
subjectName = name,
|
||||
isOrder = false,
|
||||
isAdData = adIconActive
|
||||
)
|
||||
bundle.putParcelable(EntranceConsts.KEY_SUBJECT_DATA, subjectData)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
if (exposureSourceList != null) {
|
||||
bundle.putParcelableArrayList(
|
||||
EntranceConsts.KEY_EXPOSURE_SOURCE_LIST,
|
||||
ArrayList(exposureSourceList)
|
||||
)
|
||||
}
|
||||
}
|
||||
.navigation(context)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -85,7 +85,7 @@ class SubjectTabFragment : BaseFragment<Any>() {
|
||||
mBinding.subjectViewpager.post {
|
||||
mBinding.subjectViewpager.offscreenPageLimit = fragments.size
|
||||
var position = arguments?.getInt(EntranceConsts.KEY_POSITION, 0) ?: 0
|
||||
val columnName = arguments?.getString(EntranceConsts.KEY_COLUMNNAME) ?: ""
|
||||
val columnName = arguments?.getString(EntranceConsts.KEY_COLUMN_NAME) ?: ""
|
||||
if (columnName.isNotEmpty()) {
|
||||
position = subjectList.indexOfFirst { it.subjectName == columnName }
|
||||
}
|
||||
|
||||
@ -5,17 +5,37 @@ import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.common.utils.updateStatusBarColor
|
||||
import com.therouter.router.Autowired
|
||||
import com.therouter.router.Route
|
||||
|
||||
/**
|
||||
* 工具箱
|
||||
*/
|
||||
@Route(path = RouteConsts.activity.toolBoxActivity, description = "工具箱")
|
||||
class ToolBoxActivity : ToolBarActivity() {
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_GAME_ID, description = "游戏ID")
|
||||
var gameId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_URL, description = "工具箱链接")
|
||||
var url: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
var entrance: String? = ""
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
updateStatusBarColor(com.gh.gamecenter.common.R.color.ui_surface, com.gh.gamecenter.common.R.color.ui_surface)
|
||||
}
|
||||
|
||||
override fun provideNormalIntent(): Intent {
|
||||
return getTargetIntent(this, ToolBoxActivity::class.java, ToolboxFragment::class.java, intent.extras)
|
||||
}
|
||||
|
||||
override fun onDarkModeChanged() {
|
||||
super.onDarkModeChanged()
|
||||
updateStatusBarColor(com.gh.gamecenter.common.R.color.ui_surface, com.gh.gamecenter.common.R.color.ui_surface)
|
||||
|
||||
@ -1,17 +1,52 @@
|
||||
package com.gh.gamecenter.video.detail
|
||||
|
||||
import android.os.Bundle
|
||||
import com.gh.gamecenter.common.base.activity.BaseActivity
|
||||
import com.gh.gamecenter.core.utils.DisplayUtils
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.common.base.activity.BaseActivity
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts.IS_DETAIL_PAGE
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.core.utils.DisplayUtils
|
||||
import com.therouter.TheRouter
|
||||
import com.therouter.router.Autowired
|
||||
import com.therouter.router.Route
|
||||
import java.util.*
|
||||
|
||||
/**
|
||||
* 旧视频页面
|
||||
*/
|
||||
@Route(path = RouteConsts.activity.videoDetailActivity, description = "旧视频页面")
|
||||
// 由于兼容性问题,本游戏详情页不应该被低于 Android 4.4 的设备打开
|
||||
class VideoDetailActivity : BaseActivity() {
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_VIDEO_ID, description = "视频ID", required = true)
|
||||
var videoId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_ACTIVITY_NAME, description = "活动名称")
|
||||
var activityName: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_FIELD_ID, description = "板块ID")
|
||||
var fieldId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_SECTION_NAME, description = "专题名")
|
||||
var sectionName: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_GAME_ID, description = "游戏ID")
|
||||
var gameId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_PAGINATION_TYPE, description = "活动分页方式")
|
||||
var paginationType: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
var entrance: String? = ""
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_PATH, description = "页面路径 (历史代码用到的,传不传都行)")
|
||||
var path: String? = ""
|
||||
|
||||
var uuid = UUID.randomUUID()
|
||||
var mContainerFragment: HomeVideoFragment? = null
|
||||
|
||||
@ -20,6 +55,8 @@ class VideoDetailActivity : BaseActivity() {
|
||||
}
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
TheRouter.inject(this)
|
||||
|
||||
super.onCreate(savedInstanceState)
|
||||
|
||||
DisplayUtils.transparentStatusBar(this)
|
||||
|
||||
@ -8,23 +8,36 @@ import android.widget.TextView
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.fragment.app.Fragment
|
||||
import androidx.lifecycle.ViewModelProviders
|
||||
import com.gh.gamecenter.GameDetailActivity
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.common.base.activity.BaseActivity
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity
|
||||
import com.gh.gamecenter.common.base.adapter.FragmentAdapter
|
||||
import com.gh.gamecenter.GameDetailActivity
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.core.utils.NumberUtils
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.common.mvvm.Status
|
||||
import com.gh.gamecenter.common.utils.observeNonNull
|
||||
import com.gh.gamecenter.common.utils.toColor
|
||||
import com.gh.gamecenter.core.utils.DisplayUtils
|
||||
import com.gh.gamecenter.core.utils.NumberUtils
|
||||
import com.gh.gamecenter.databinding.ActivityVideoGameBinding
|
||||
import com.gh.gamecenter.common.mvvm.Status
|
||||
import com.therouter.TheRouter
|
||||
import com.therouter.router.Autowired
|
||||
import com.therouter.router.Route
|
||||
|
||||
/**
|
||||
* 视频合集
|
||||
*/
|
||||
@Route(path = RouteConsts.activity.gameVideoActivity, description = "视频合集")
|
||||
class GameVideoActivity : ToolBarActivity() {
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_GAME_ID, description = "游戏ID", required = true)
|
||||
var gameId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_ENTRANCE, description = "入口埋点字段(开发内部使用)")
|
||||
var entrance: String? = ""
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_PATH, description = "页面路径 (历史代码用到的,传不传都行)")
|
||||
var path: String? = ""
|
||||
|
||||
private lateinit var mBinding: ActivityVideoGameBinding
|
||||
private lateinit var mViewModel: GameVideoViewModel
|
||||
@ -34,6 +47,7 @@ class GameVideoActivity : ToolBarActivity() {
|
||||
}
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
TheRouter.inject(this)
|
||||
super.onCreate(savedInstanceState)
|
||||
|
||||
// toolbar & status bar
|
||||
@ -43,21 +57,20 @@ class GameVideoActivity : ToolBarActivity() {
|
||||
mBinding = ActivityVideoGameBinding.bind(mContentView)
|
||||
|
||||
// viewpager & tab content
|
||||
val gameId = intent.getStringExtra(EntranceConsts.KEY_GAMEID) ?: ""
|
||||
val titles = arrayListOf("最热", "最新")
|
||||
val fragments = ArrayList<Fragment>()
|
||||
|
||||
val tag = "android:switcher:${mBinding.viewpager.id}:"
|
||||
val hottest = supportFragmentManager.findFragmentByTag("${tag}0") ?: GameVideoFragment()
|
||||
val hottestBundle = Bundle()
|
||||
hottestBundle.putString(EntranceConsts.KEY_GAMEID, gameId)
|
||||
hottestBundle.putString(EntranceConsts.KEY_GAME_ID, gameId)
|
||||
hottestBundle.putString(EntranceConsts.KEY_SORT, "vote_recently:-1")
|
||||
hottest.arguments = hottestBundle
|
||||
fragments.add(hottest)
|
||||
|
||||
val newest = supportFragmentManager.findFragmentByTag("${tag}1") ?: GameVideoFragment()
|
||||
val newestBundle = Bundle()
|
||||
newestBundle.putString(EntranceConsts.KEY_GAMEID, gameId)
|
||||
newestBundle.putString(EntranceConsts.KEY_GAME_ID, gameId)
|
||||
newestBundle.putString(EntranceConsts.KEY_SORT, "time.upload:-1")
|
||||
newest.arguments = newestBundle
|
||||
fragments.add(newest)
|
||||
@ -90,7 +103,7 @@ class GameVideoActivity : ToolBarActivity() {
|
||||
mBinding.gameIcon.setOnClickListener {
|
||||
GameDetailActivity.startGameDetailActivity(
|
||||
this,
|
||||
gameId,
|
||||
gameId ?: "",
|
||||
BaseActivity.mergeEntranceAndPath(mEntrance, "视频合集")
|
||||
)
|
||||
}
|
||||
@ -122,10 +135,12 @@ class GameVideoActivity : ToolBarActivity() {
|
||||
|
||||
@JvmStatic
|
||||
fun getIntent(context: Context, gameId: String, entrance: String?, path: String?): Intent {
|
||||
val intent = Intent(context, GameVideoActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_GAMEID, gameId)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.articleDetailActivity)
|
||||
.fillParams { bundle ->
|
||||
bundle.putString(EntranceConsts.KEY_GAME_ID, gameId)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1,7 +1,6 @@
|
||||
package com.gh.gamecenter.video.upload.view
|
||||
|
||||
import android.app.Activity
|
||||
import android.app.Application
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.graphics.Bitmap
|
||||
@ -57,8 +56,6 @@ import com.google.android.flexbox.FlexboxLayout
|
||||
import com.lightgame.utils.Util_System_Keyboard
|
||||
import com.lightgame.utils.Utils
|
||||
import com.therouter.TheRouter
|
||||
import com.zhihu.matisse.Matisse
|
||||
import com.zhihu.matisse.internal.utils.PathUtils
|
||||
import org.json.JSONArray
|
||||
import java.io.File
|
||||
import java.io.FileOutputStream
|
||||
@ -120,7 +117,7 @@ class UploadVideoActivity : ToolBarActivity() {
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
VideoPosterFragment.clearVideoCoverCache(this)
|
||||
mVideoLink = intent.getParcelableExtra(VideoLinkEntity::class.java.simpleName)
|
||||
mVideoLink = intent.getParcelableExtra(EntranceConsts.KEY_VIDEO_LINK_ENTITY)
|
||||
mEntranceLink = intent.getStringExtra(EntranceConsts.KEY_ENTRANCE_LINK) ?: ""
|
||||
mPath = intent.getStringExtra(EntranceConsts.KEY_PATH) ?: "其他"
|
||||
|
||||
@ -253,7 +250,7 @@ class UploadVideoActivity : ToolBarActivity() {
|
||||
mViewModel = ViewModelProviders.of(this).get(UploadVideoViewModel::class.java)
|
||||
mViewModel.videoDraft = intent.getParcelableExtra(VideoDraftEntity::class.java.simpleName)
|
||||
mViewModel.videoPatch = intent.getParcelableExtra(VideoEntity::class.java.simpleName)
|
||||
mViewModel.gameEntity = intent.getParcelableExtra(SimpleGameEntity::class.java.simpleName)
|
||||
mViewModel.gameEntity = intent.getParcelableExtra(EntranceConsts.KEY_SIMPLE_GAME_ENTITY)
|
||||
mViewModel.tagsLiveData.observe(this, Observer {
|
||||
createFlexContent(mBinding.gameTag, it, clickListener = { v, _ ->
|
||||
if (v is CheckedTextView) {
|
||||
@ -964,8 +961,8 @@ class UploadVideoActivity : ToolBarActivity() {
|
||||
val intent = Intent(context, UploadVideoActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, mergeEntranceAndPath(entrance, path))
|
||||
intent.putExtra(EntranceConsts.KEY_PATH, path)
|
||||
intent.putExtra(VideoLinkEntity::class.java.simpleName, linkEntity)
|
||||
intent.putExtra(SimpleGameEntity::class.java.simpleName, simpleGameEntity)
|
||||
intent.putExtra(EntranceConsts.KEY_VIDEO_LINK_ENTITY, linkEntity)
|
||||
intent.putExtra(EntranceConsts.KEY_SIMPLE_GAME_ENTITY, simpleGameEntity)
|
||||
intent.putExtra(EntranceConsts.KEY_PATH_VIDEO, videoPath)
|
||||
intent.putExtra(EntranceConsts.KEY_POSTER_PATH, poster)
|
||||
return intent
|
||||
|
||||
@ -7,25 +7,62 @@ import android.view.MenuItem
|
||||
import android.view.View
|
||||
import android.widget.TextView
|
||||
import androidx.fragment.app.Fragment
|
||||
import com.gh.gamecenter.common.base.activity.BaseActivity
|
||||
import com.gh.gamecenter.common.base.activity.BaseActivity_TabLayout
|
||||
import com.gh.common.util.*
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.common.base.activity.BaseActivity
|
||||
import com.gh.gamecenter.common.base.activity.BaseActivity_TabLayout
|
||||
import com.gh.gamecenter.common.constant.EntranceConsts
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.common.entity.SimpleGameEntity
|
||||
import com.gh.gamecenter.common.utils.PermissionHelper
|
||||
import com.gh.gamecenter.common.utils.updateStatusBarColor
|
||||
import com.gh.gamecenter.core.utils.MtaHelper
|
||||
import com.gh.gamecenter.common.entity.SimpleGameEntity
|
||||
import com.gh.gamecenter.entity.VideoLinkEntity
|
||||
import com.gh.gamecenter.video.upload.view.UploadVideoActivity
|
||||
import com.therouter.TheRouter
|
||||
import com.therouter.router.Autowired
|
||||
import com.therouter.router.Route
|
||||
import com.zhihu.matisse.Matisse
|
||||
import com.zhihu.matisse.MimeType
|
||||
import com.zhihu.matisse.internal.utils.PathUtils
|
||||
|
||||
@Route(path = RouteConsts.activity.videoManagerActivity, description = "视频投稿")
|
||||
class VideoManagerActivity : BaseActivity_TabLayout() {
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_TITLE, description = "标题")
|
||||
var title: String? = null
|
||||
|
||||
private var mVideoLink: VideoLinkEntity? = null
|
||||
private var mSimpleGameEntity: SimpleGameEntity? = null
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_CATEGORY_ID, description = "分类ID")
|
||||
var categoryId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_LINK, description = "只用于数据统计")
|
||||
var link: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_GAME_ID, description = "游戏ID")
|
||||
var gameId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_GAME_NAME, description = "游戏名称")
|
||||
var gameName: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_TAG_ACTIVITY_ID, description = "活动标签ID")
|
||||
var tagActivityId: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_TAG_ACTIVITY_NAME, description = "活动标签名")
|
||||
var tagActivityName: String? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_VIDEO_LINK_ENTITY, description = "视频链接实体")
|
||||
var videoLink: VideoLinkEntity? = null
|
||||
|
||||
@JvmField
|
||||
@Autowired(name = EntranceConsts.KEY_SIMPLE_GAME_ENTITY, description = "游戏实体")
|
||||
var simpleGameEntity: SimpleGameEntity? = null
|
||||
|
||||
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
|
||||
super.onActivityResult(requestCode, resultCode, data)
|
||||
@ -33,12 +70,12 @@ class VideoManagerActivity : BaseActivity_TabLayout() {
|
||||
val uris = Matisse.obtainResult(data)
|
||||
if (uris.size > 0) {
|
||||
val videoPath = PathUtils.getPath(this, uris[0]) ?: ""
|
||||
val intent = if (mVideoLink != null) {
|
||||
val intent = if (videoLink != null) {
|
||||
UploadVideoActivity.getIntent(
|
||||
this,
|
||||
videoPath,
|
||||
mVideoLink!!,
|
||||
mSimpleGameEntity,
|
||||
videoLink!!,
|
||||
simpleGameEntity,
|
||||
mEntrance,
|
||||
"视频投稿",
|
||||
""
|
||||
@ -56,19 +93,25 @@ class VideoManagerActivity : BaseActivity_TabLayout() {
|
||||
}
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
TheRouter.inject(this)
|
||||
if (videoLink == null) {
|
||||
videoLink = VideoLinkEntity(title, categoryId, link, tagActivityId, tagActivityName)
|
||||
}
|
||||
if (simpleGameEntity == null) {
|
||||
simpleGameEntity = SimpleGameEntity(gameId ?: "", gameName ?: "")
|
||||
}
|
||||
|
||||
super.onCreate(savedInstanceState)
|
||||
updateStatusBarColor(com.gh.gamecenter.common.R.color.ui_surface, com.gh.gamecenter.common.R.color.ui_surface)
|
||||
setNavigationTitle("视频投稿")
|
||||
setToolbarMenu(R.menu.menu_text)
|
||||
mVideoLink = intent.getParcelableExtra(VideoLinkEntity::class.java.simpleName)
|
||||
mSimpleGameEntity = intent.getParcelableExtra(SimpleGameEntity::class.java.simpleName)
|
||||
|
||||
val menuItem = getMenuItem(R.id.menu_text)
|
||||
val container = menuItem.actionView?.findViewById<View>(R.id.menu_text)
|
||||
val text = container?.findViewById<TextView>(R.id.layout_menu_text)
|
||||
text?.text = "上传视频"
|
||||
|
||||
if (mVideoLink != null) {
|
||||
if (videoLink != null) {
|
||||
onMenuItemClick(menuItem)
|
||||
}
|
||||
LogUtils.logVideoStreamingUpload("进入视频投稿页", "视频投稿", "", "")
|
||||
@ -121,9 +164,11 @@ class VideoManagerActivity : BaseActivity_TabLayout() {
|
||||
|
||||
@JvmStatic
|
||||
fun getIntent(context: Context, entrance: String?, path: String?): Intent {
|
||||
val intent = Intent(context, VideoManagerActivity::class.java)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.articleDetailActivity)
|
||||
.fillParams { bundle ->
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ -135,8 +180,8 @@ class VideoManagerActivity : BaseActivity_TabLayout() {
|
||||
): Bundle {
|
||||
val bundle = Bundle()
|
||||
bundle.putString(EntranceConsts.KEY_PATH, path)
|
||||
bundle.putParcelable(VideoLinkEntity::class.java.simpleName, linkEntity)
|
||||
bundle.putParcelable(SimpleGameEntity::class.java.simpleName, simpleGameEntity)
|
||||
bundle.putParcelable(EntranceConsts.KEY_VIDEO_LINK_ENTITY, linkEntity)
|
||||
bundle.putParcelable(EntranceConsts.KEY_SIMPLE_GAME_ENTITY, simpleGameEntity)
|
||||
bundle.putString(EntranceConsts.KEY_TO, VideoManagerActivity::class.java.name)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
return bundle
|
||||
@ -154,10 +199,12 @@ class VideoManagerActivity : BaseActivity_TabLayout() {
|
||||
entrance: String?,
|
||||
path: String?
|
||||
): Intent {
|
||||
val intent = Intent(context, VideoManagerActivity::class.java)
|
||||
intent.putExtra(VideoLinkEntity::class.java.simpleName, linkEntity)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
return intent
|
||||
val navigator = TheRouter.build(RouteConsts.activity.articleDetailActivity)
|
||||
.fillParams { bundle ->
|
||||
bundle.putParcelable(EntranceConsts.KEY_VIDEO_LINK_ENTITY, linkEntity)
|
||||
bundle.putString(EntranceConsts.KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
}
|
||||
return navigator.createIntent(context)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -299,7 +299,7 @@ class WebFragment : LazyFragment(), IScrollable {
|
||||
mForumName = args.getString(EntranceConsts.KEY_FORUM_NAME) ?: ""
|
||||
mAutoCompletionTitle = args.getBoolean(KEY_COMPLETION_TITLE, true)
|
||||
mNavigationTitle = args.getString(EntranceConsts.KEY_GAMENAME)
|
||||
newsId = args.getString(EntranceConsts.KEY_NEWSID)
|
||||
newsId = args.getString(EntranceConsts.KEY_NEWS_ID)
|
||||
mIsBackpressRequireConfirmation = args.getBoolean(KEY_REQUIRE_BACK_CONFIRMATION)
|
||||
mIsWebPageHandleBackPressed = args.getBoolean(KEY_LEAVE_WEB_PAGE_TO_HANDLE_BACK_PRESSED)
|
||||
mBackConfirmationContent = args.getString(KEY_BACK_CONFIRMATION_CONTENT)
|
||||
|
||||
@ -10,7 +10,7 @@ public class EntranceConsts {
|
||||
|
||||
public static final String KEY_TO = "to";
|
||||
public static final String KEY_NEXT_TO = "next_to";
|
||||
public static final String KEY_NEWSID = "newsId";
|
||||
public static final String KEY_NEWS_ID = "news_id";
|
||||
public static final String KEY_GAME_ID = "game_id";
|
||||
public static final String KEY_GAMEID = KEY_GAME_ID;
|
||||
public static final String KEY_ID = "id";
|
||||
@ -31,9 +31,8 @@ public class EntranceConsts {
|
||||
public static final String HOST_USERHOME = "userhome";//个人主页
|
||||
public static final String HOST_VIDEO = "video";
|
||||
public static final String HOST_FORUM = "forum";
|
||||
public static final String HOST_CATEGORY = "category";
|
||||
public static final String HOST_COLUMN_COLLECTION = "column_collection";//专题合集
|
||||
public static final String HOST_COMMUNITY_QUESTION_LABEL_DETAIL = "community_question_label_detail";//问题标签详情
|
||||
public static final String HOST_COMMUNITY_COLUMN_DETAIL = "community_column_detail";//专栏详情
|
||||
public static final String HOST_BLOCK = "block";//板块
|
||||
public static final String HOST_SERVER_BLOCK = "server";//开服表板块
|
||||
public static final String HOST_AMWAY_BLOCK = "amway";//安利墙板块
|
||||
@ -159,7 +158,7 @@ public class EntranceConsts {
|
||||
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_ID = "answer_id";
|
||||
public static final String KEY_ANSWER_CONTENT = "answerContent";
|
||||
public static final String KEY_QUESTIONS_ID = "questionsId";
|
||||
public static final String KEY_QUESTIONS_TITLE = "questionsTitle";
|
||||
@ -230,12 +229,12 @@ public class EntranceConsts {
|
||||
public static final String KEY_IS_HOME = "isHome";
|
||||
public static final String KEY_TAB_COUNT = "tab_count";
|
||||
public static final String KEY_WEB_SHARE = "webShare";
|
||||
public static final String KEY_ACTIVITY_NAME = "activityName";//活动名称
|
||||
public static final String KEY_PAGINATION_TYPE = "paginationType";//活动分页方式
|
||||
public static final String KEY_ACTIVITY_NAME = "activity_name";//活动名称
|
||||
public static final String KEY_PAGINATION_TYPE = "pagination_type";//活动分页方式
|
||||
public static final String KEY_REQUIRE_REDIRECT = "require_redirect"; // 标记需要再跳转
|
||||
public static final String KEY_FIELD_ID = "field_id"; // 专区板块id
|
||||
public static final String KEY_SECTION_NAME = "section_name"; // 专区专题名
|
||||
public static final String KEY_COLUMNNAME = "columnName";
|
||||
public static final String KEY_COLUMN_NAME = "column_name";
|
||||
public static final String KEY_QA_ID = "qaId";
|
||||
public static final String KEY_QA_CONTENT_ID = "qaContentId";
|
||||
public static final String KEY_QA_CATEGORY_NAME = "qaCategoryName";
|
||||
@ -369,4 +368,17 @@ public class EntranceConsts {
|
||||
public static final String KEY_UID = "uid";
|
||||
|
||||
public static final String KEY_DISPLAY_TYPE = "display_type";
|
||||
|
||||
public static final String KEY_NEWS_ENTITY = "news_entity";
|
||||
public static final String KEY_IS_COLLECTION_NEWS = "is_collection_news";
|
||||
public static final String KEY_SUBJECT_ID = "subject_id";
|
||||
public static final String KEY_SUBJECT_NAME = "subject_name";
|
||||
public static final String KEY_IS_AD_SUBJECT = "is_ad_subject";
|
||||
public static final String KEY_LIBAO_ID = "libao_id";
|
||||
public static final String KEY_LIBAO_ENTITY = "libao_entity";
|
||||
public static final String KEY_VIDEO_LINK_ENTITY = "video_link_entity";
|
||||
public static final String KEY_SIMPLE_GAME_ENTITY = "simple_game_entity";
|
||||
public static final String KEY_TITLE = "title";
|
||||
public static final String KEY_TAG_ACTIVITY_ID = "tag_activity_id";
|
||||
public static final String KEY_TAG_ACTIVITY_NAME = "tag_activity_name";
|
||||
}
|
||||
|
||||
@ -7,12 +7,7 @@ object RouteConsts {
|
||||
const val cleanApkActivity = "/app/cleanApkActivity"
|
||||
const val gameSubmissionActivity = "/app/gameSubmissionActivity"
|
||||
const val imageViewerActivity = "/app/imageViewerActivity"
|
||||
const val newsDetailActivity = "/app/newsDetailActivity"
|
||||
const val ratingReplyActivity = "/app/ratingReplyActivity"
|
||||
const val questionDetailActivity = "/app/questionDetailActivity"
|
||||
const val articleDetailActivity = "/app/articleDetailActivity"
|
||||
const val forumVideoDetailActivity = "/app/forumVideoDetailActivity"
|
||||
const val libaoDetailActivity = "/app/libaoDetailActivity"
|
||||
const val fullScreenVideoActivity = "/app/FullScreenVideoActivity"
|
||||
const val videoCoverEditActivity = "/app/videoCoverEditActivity"
|
||||
|
||||
@ -27,6 +22,21 @@ object RouteConsts {
|
||||
const val quickLoginActivity = "/activity/quick_login_activity"
|
||||
const val securityActivity = "/activity/account_security"
|
||||
const val serversCalendarManagementActivity = "/activity/server_manager"
|
||||
const val newsDetailActivity = "/activity/news_detail"
|
||||
const val subjectActivity = "/activity/subject"
|
||||
const val libaoDetailActivity = "/activity/libao_detail"
|
||||
const val questionDetailActivity = "/activity/question_detail"
|
||||
const val answerDetailActivity = "/activity/answer_detail"
|
||||
const val articleDetailActivity = "/activity/article_detail"
|
||||
const val videoManagerActivity = "/activity/upload_video"
|
||||
const val forumVideoDetailActivity = "/activity/forum_video_detail"
|
||||
const val videoDetailActivity = "/activity/video_detail"
|
||||
const val gameVideoActivity = "/activity/game_video"
|
||||
const val communitySubjectActivity = "/activity/community_subject"
|
||||
const val categoryV2Activity = "/activity/category"
|
||||
const val columnCollectionDetailActivity = "/activity/column_collection"
|
||||
const val toolBoxActivity = "/activity/toolbox"
|
||||
|
||||
|
||||
const val aboutActivity = "/settings/AboutActivity"
|
||||
const val webActivity = "/setting/WebActivity"
|
||||
|
||||
@ -8,7 +8,6 @@ import android.graphics.Color
|
||||
import android.graphics.Paint
|
||||
import android.graphics.Typeface
|
||||
import android.graphics.drawable.ColorDrawable
|
||||
import android.os.Build
|
||||
import android.text.Html
|
||||
import android.text.Spannable
|
||||
import android.text.SpannableStringBuilder
|
||||
@ -23,11 +22,9 @@ import androidx.constraintlayout.widget.ConstraintSet
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.fragment.app.FragmentActivity
|
||||
import androidx.viewbinding.ViewBinding
|
||||
import com.therouter.TheRouter
|
||||
import com.gh.gamecenter.common.R
|
||||
import com.gh.gamecenter.common.base.TrackableDialog
|
||||
import com.gh.gamecenter.common.callback.ConfirmListener
|
||||
import com.gh.gamecenter.common.constant.RouteConsts
|
||||
import com.gh.gamecenter.common.databinding.DialogAlertDefaultBinding
|
||||
import com.gh.gamecenter.common.databinding.DialogGuideBinding
|
||||
import com.gh.gamecenter.common.databinding.DialogProgressBinding
|
||||
@ -41,6 +38,7 @@ import com.google.android.material.imageview.ShapeableImageView
|
||||
import com.lightgame.download.DownloadEntity
|
||||
import com.lightgame.utils.AppManager
|
||||
import com.lightgame.view.CheckableLinearLayout
|
||||
import com.therouter.TheRouter
|
||||
import splitties.systemservices.layoutInflater
|
||||
|
||||
object DialogHelper {
|
||||
@ -718,18 +716,6 @@ object DialogHelper {
|
||||
)
|
||||
}
|
||||
|
||||
fun showVideoUnsupportedDialog(context: Context) {
|
||||
showDialog(
|
||||
context,
|
||||
"提示",
|
||||
"抱歉,您当前系统版本过低,暂不支持视频功能",
|
||||
"我知道了",
|
||||
"",
|
||||
null,
|
||||
null
|
||||
)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
fun showDeleteDialog(
|
||||
context: Context,
|
||||
|
||||
@ -106,9 +106,6 @@ data class LibaoEntity(
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
const val TAG: String = "LibaoEntity"
|
||||
|
||||
fun createLibaoEntity(concernEntity: ConcernEntity, libaoStatusEntity: LibaoStatusEntity): LibaoEntity {
|
||||
val libaoEntity = LibaoEntity()
|
||||
libaoEntity.id = concernEntity.id
|
||||
|
||||
@ -5,7 +5,6 @@ import android.os.Parcelable
|
||||
import androidx.room.Entity
|
||||
import androidx.room.PrimaryKey
|
||||
import com.google.gson.annotations.SerializedName
|
||||
import java.util.*
|
||||
|
||||
@Entity
|
||||
class NewsEntity : Parcelable, Cloneable {
|
||||
@ -90,8 +89,6 @@ class NewsEntity : Parcelable, Cloneable {
|
||||
|
||||
companion object {
|
||||
|
||||
const val TAG: String = "NewsEntity"
|
||||
|
||||
fun deepCopy(list: List<NewsEntity>?): List<NewsEntity>? {
|
||||
if (list == null) return null
|
||||
val copy = ArrayList<NewsEntity>()
|
||||
|
||||
@ -19,7 +19,6 @@ import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
|
||||
|
||||
import com.therouter.TheRouter;
|
||||
import com.gh.gamecenter.common.base.activity.ToolBarActivity;
|
||||
import com.gh.gamecenter.common.base.fragment.ToolbarFragment;
|
||||
import com.gh.gamecenter.common.callback.OnRequestCallBackListener;
|
||||
@ -58,6 +57,7 @@ import com.gh.gamecenter.message.R;
|
||||
import com.gh.gamecenter.message.databinding.FragmentInfoConcernBinding;
|
||||
import com.gh.gamecenter.message.retrofit.RetrofitManager;
|
||||
import com.gh.gamecenter.message.utils.NewFlatLogUtils;
|
||||
import com.therouter.TheRouter;
|
||||
|
||||
import org.greenrobot.eventbus.Subscribe;
|
||||
import org.greenrobot.eventbus.ThreadMode;
|
||||
@ -470,7 +470,7 @@ public class ConcernFragment extends ToolbarFragment implements SwipeRefreshLayo
|
||||
}
|
||||
IAppProvider appProvider = TheRouter.get(IAppProvider.class);
|
||||
if (appProvider != null && entity != null) {
|
||||
appProvider.put(LibaoEntity.TAG, entity);
|
||||
appProvider.put(EntranceConsts.KEY_LIBAO_ENTITY, entity);
|
||||
}
|
||||
TheRouter.build(RouteConsts.activity.libaoDetailActivity)
|
||||
.withString(EntranceConsts.KEY_ENTRANCE, buildEntrance(position))
|
||||
@ -513,7 +513,7 @@ public class ConcernFragment extends ToolbarFragment implements SwipeRefreshLayo
|
||||
startActivityForResult(intent, NEWS_MESSAGE_ARTICLE_REQUEST);
|
||||
} else {
|
||||
TheRouter.build(RouteConsts.activity.newsDetailActivity)
|
||||
.withString(EntranceConsts.KEY_NEWSID, concernEntity.getId())
|
||||
.withString(EntranceConsts.KEY_NEWS_ID, concernEntity.getId())
|
||||
.withString(EntranceConsts.KEY_ENTRANCE, buildEntrance(position))
|
||||
.navigation(requireActivity(), NEWS_MESSAGE_ARTICLE_REQUEST);
|
||||
}
|
||||
|
||||
@ -667,7 +667,7 @@ public class MessageItemViewHolder extends BaseRecyclerViewHolder<MessageEntity>
|
||||
);
|
||||
if (view.getId() == R.id.message_original) {
|
||||
TheRouter.build(RouteConsts.activity.newsDetailActivity)
|
||||
.withString(EntranceConsts.KEY_NEWSID, entity.getArticle().getId())
|
||||
.withString(EntranceConsts.KEY_NEWS_ID, entity.getArticle().getId())
|
||||
.withString(EntranceConsts.KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
.navigation();
|
||||
} else if (view.getId() == R.id.message_item) {
|
||||
@ -695,7 +695,7 @@ public class MessageItemViewHolder extends BaseRecyclerViewHolder<MessageEntity>
|
||||
);
|
||||
if (view.getId() == R.id.message_original) {
|
||||
TheRouter.build(RouteConsts.activity.newsDetailActivity)
|
||||
.withString(EntranceConsts.KEY_NEWSID, entity.getArticle().getId())
|
||||
.withString(EntranceConsts.KEY_NEWS_ID, entity.getArticle().getId())
|
||||
.withString(EntranceConsts.KEY_ENTRANCE, BaseActivity.mergeEntranceAndPath(entrance, path))
|
||||
.navigation();
|
||||
} else if (view.getId() == R.id.message_item) {
|
||||
|
||||
@ -548,7 +548,7 @@ class MessageListAdapter(
|
||||
"新闻" -> if (!TextUtils.isEmpty(data.id)) {
|
||||
TheRouter.build(RouteConsts.activity.newsDetailActivity)
|
||||
.withString(EntranceConsts.KEY_ENTRANCE, "(消息-公告)")
|
||||
.withString(EntranceConsts.KEY_NEWSID, data.id)
|
||||
.withString(EntranceConsts.KEY_NEWS_ID, data.id)
|
||||
.navigation()
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user