From bf99b616031b262ebcebea21ed2d752dfe8951b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E8=B4=BB=E8=8D=A3?= Date: Wed, 28 Dec 2022 13:58:20 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E7=A7=BB=E9=99=A4=E9=83=A8=E5=88=86?= =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E7=9A=84=E7=9B=B8=E5=85=B3=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E5=8F=8A=E8=B5=84=E6=BA=90=20https://jira.shanqu.cc/browse/GHZ?= =?UTF-8?q?S-845?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/GlobalActivityLifecycleObserver.kt | 18 +- .../main/java/com/gh/common/DefaultJsApi.kt | 17 -- .../com/gh/common/util/BbsStayTimeHelper.kt | 131 --------- .../gh/common/util/FloatingBackViewManager.kt | 2 - .../GameCollectionSquareBrowseTaskHelper.kt | 254 ------------------ .../forum/home/CommunityHomeFragment.kt | 7 +- .../gh/gamecenter/forum/home/ForumFragment.kt | 14 +- .../fragment/MainWrapperFragment.java | 12 +- .../detail/GameCollectionDetailActivity.kt | 13 - .../detail/GameCollectionDetailFragment.kt | 2 - .../detail/GameCollectionDetailViewModel.kt | 24 +- .../square/GameCollectionSquareActivity.kt | 13 +- .../retrofit/service/ApiService.java | 46 ++-- .../drawable-xxxhdpi/pic_browse_square.webp | Bin 13642 -> 0 bytes .../pic_browse_square_finish.webp | Bin 10694 -> 0 bytes .../drawable/bg_browse_square_progress.xml | 12 - .../progressbar_browse_square_style.xml | 28 -- .../layout_square_browse_task_float.xml | 32 --- .../gamecenter/common/retrofit/ApiService.kt | 9 - .../gh/gamecenter/common/utils/LogUtils.java | 23 -- 20 files changed, 34 insertions(+), 623 deletions(-) delete mode 100644 app/src/main/java/com/gh/common/util/BbsStayTimeHelper.kt delete mode 100644 app/src/main/java/com/gh/common/util/GameCollectionSquareBrowseTaskHelper.kt delete mode 100644 app/src/main/res/drawable-xxxhdpi/pic_browse_square.webp delete mode 100644 app/src/main/res/drawable-xxxhdpi/pic_browse_square_finish.webp delete mode 100644 app/src/main/res/drawable/bg_browse_square_progress.xml delete mode 100644 app/src/main/res/drawable/progressbar_browse_square_style.xml delete mode 100644 app/src/main/res/layout/layout_square_browse_task_float.xml diff --git a/app/src/main/java/com/gh/base/GlobalActivityLifecycleObserver.kt b/app/src/main/java/com/gh/base/GlobalActivityLifecycleObserver.kt index 4c153831ed..2afc5f31a0 100644 --- a/app/src/main/java/com/gh/base/GlobalActivityLifecycleObserver.kt +++ b/app/src/main/java/com/gh/base/GlobalActivityLifecycleObserver.kt @@ -6,14 +6,9 @@ import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import com.gh.common.util.FloatingBackViewManager import com.gh.download.DownloadManager -import com.gh.gamecenter.MainActivity +import com.gh.gamecenter.SingletonWebActivity import com.gh.gamecenter.SplashScreenActivity import com.gh.gamecenter.common.utils.PackageFlavorHelper -import com.gh.gamecenter.forum.detail.ForumDetailActivity -import com.gh.gamecenter.forum.list.ForumListActivity -import com.gh.gamecenter.qa.article.detail.ArticleDetailActivity -import com.gh.gamecenter.qa.questions.newdetail.NewQuestionDetailActivity -import com.gh.gamecenter.qa.video.detail.ForumVideoDetailActivity import com.gh.vspace.VHelper import com.halo.assistant.HaloApp @@ -35,7 +30,7 @@ class GlobalActivityLifecycleObserver : Application.ActivityLifecycleCallbacks { && FloatingBackViewManager.getType() == FloatingBackViewManager.TYPE_TASK ) { FloatingBackViewManager.disableBackView() - } else if (!shouldShowActivityBackView(activity) + } else if (activity is SingletonWebActivity && FloatingBackViewManager.getType() == FloatingBackViewManager.TYPE_ACTIVITY ) { FloatingBackViewManager.disableBackView() @@ -65,15 +60,6 @@ class GlobalActivityLifecycleObserver : Application.ActivityLifecycleCallbacks { } } - private fun shouldShowActivityBackView(activity: Activity): Boolean { - return (activity is MainActivity - || activity is ArticleDetailActivity - || activity is ForumVideoDetailActivity - || activity is ForumDetailActivity - || activity is ForumListActivity - || activity is NewQuestionDetailActivity) - } - override fun onActivityPaused(activity: Activity) { FloatingBackViewManager.dismissBackView() if (PackageFlavorHelper.IS_TEST_FLAVOR && activity is AppCompatActivity) { diff --git a/app/src/main/java/com/gh/common/DefaultJsApi.kt b/app/src/main/java/com/gh/common/DefaultJsApi.kt index e2f0a9328c..c6f54e9ae0 100644 --- a/app/src/main/java/com/gh/common/DefaultJsApi.kt +++ b/app/src/main/java/com/gh/common/DefaultJsApi.kt @@ -387,11 +387,6 @@ class DefaultJsApi(var context: Context, val entrance: String = "", private var FloatingBackViewManager.enableBackView(FloatingBackViewManager.TYPE_ACTIVITY, msg.toString()) } - @JavascriptInterface - fun startBBSStayTimeCount(msg: Any) { - BbsStayTimeHelper.enableStayTimeCount(msg.toString().toInt()) - } - @JavascriptInterface fun saveBase64ImageToGallery(msg: Any) { val base64StringData = msg.toString() @@ -431,15 +426,6 @@ class DefaultJsApi(var context: Context, val entrance: String = "", private var runOnUiThread { DirectUtils.directToFullScreenWebPage(context, url.toString(), true, entrance) } } - @JavascriptInterface - fun startGameCollectionSquareBrowseTask(event: Any) { - val browseTimeEvent = event.toString().toObject() ?: BrowseTaskEvent() - GameCollectionSquareBrowseTaskHelper.enableBrowseTimeCount( - browseTimeEvent.timeout.toInt(), - browseTimeEvent.isFinished == "true" - ) - } - @JavascriptInterface fun checkUpdateGhzs(msg: Any) { context.startActivity(SettingBridge.getAboutIntent(context, true)) @@ -656,9 +642,6 @@ class DefaultJsApi(var context: Context, val entrance: String = "", private var @Keep internal data class LogEvent(var jsonString: String = "", var logStore: String = "") - @Keep - internal data class BrowseTaskEvent(var timeout: String = "", var isFinished: String = "") - @Keep data class GameActivityEvent( var gameId: String = "", diff --git a/app/src/main/java/com/gh/common/util/BbsStayTimeHelper.kt b/app/src/main/java/com/gh/common/util/BbsStayTimeHelper.kt deleted file mode 100644 index 576333143b..0000000000 --- a/app/src/main/java/com/gh/common/util/BbsStayTimeHelper.kt +++ /dev/null @@ -1,131 +0,0 @@ -package com.gh.common.util - -import android.annotation.SuppressLint -import android.app.Activity -import android.app.Application -import android.os.Bundle -import com.gh.gamecenter.core.utils.CurrentActivityHolder -import com.gh.gamecenter.core.GHThreadFactory -import com.gh.gamecenter.MainActivity -import com.gh.gamecenter.core.utils.ToastUtils -import com.gh.gamecenter.common.utils.isPublishEnv -import com.gh.gamecenter.common.utils.tryWithDefaultCatch -import com.gh.gamecenter.forum.detail.ForumDetailActivity -import com.gh.gamecenter.qa.article.detail.ArticleDetailActivity -import com.gh.gamecenter.qa.comment.CommentActivity -import com.gh.gamecenter.qa.questions.newdetail.NewQuestionDetailActivity -import com.gh.gamecenter.qa.video.detail.ForumVideoDetailActivity -import com.gh.gamecenter.common.retrofit.BiResponse -import com.gh.gamecenter.retrofit.RetrofitManager -import com.halo.assistant.HaloApp -import io.reactivex.android.schedulers.AndroidSchedulers -import io.reactivex.schedulers.Schedulers -import okhttp3.ResponseBody -import java.util.concurrent.ExecutorService -import java.util.concurrent.Executors - -object BbsStayTimeHelper { - - private var mStayTimeCount = 0 - private var mIsStayTimeCountEnabled = false // 论坛停留时间统计是否开启 - private var mStayTimeTimeout = 30 - private var mIsStayTimeCountValid = false // 论坛停留时间统计是否有效 - - const val IS_BBS_CONTENT_VISIBLE = "is_bbs_content_visible" - - private val mThreadService: ExecutorService by lazy { - Executors.newSingleThreadExecutor(GHThreadFactory("STAY_TIME_THREAD")) - } - - private val mActivityLifecycleCallbacks by lazy { - object : Application.ActivityLifecycleCallbacks { - override fun onActivityCreated(activity: Activity, savedInstanceState: Bundle?) {} - override fun onActivityStopped(activity: Activity) {} - override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle) {} - override fun onActivityDestroyed(activity: Activity) {} - override fun onActivityStarted(activity: Activity) {} - - override fun onActivityResumed(activity: Activity) { - if (isTopActivityBbsRelated(activity) && mIsStayTimeCountEnabled) { - resumeTimeCount() - } - } - - override fun onActivityPaused(activity: Activity) { - if (isTopActivityBbsRelated(activity) && mIsStayTimeCountEnabled) { - pauseTimeCount() - } - } - } - } - - fun enableStayTimeCount(timeout: Int) { - mIsStayTimeCountEnabled = true - mStayTimeTimeout = timeout - - resumeTimeCount() - - HaloApp.getInstance().registerActivityLifecycleCallbacks(mActivityLifecycleCallbacks) - } - - fun disableStayTimeCount() { - mIsStayTimeCountEnabled = false - mStayTimeCount = 0 - - HaloApp.getInstance().unregisterActivityLifecycleCallbacks(mActivityLifecycleCallbacks) - } - - fun resumeTimeCount() { - if (!mIsStayTimeCountEnabled) return - - mIsStayTimeCountValid = true - - mThreadService.execute { - while (mIsStayTimeCountEnabled && mIsStayTimeCountValid) { - val topActivity = CurrentActivityHolder.getCurrentActivity() ?: continue - if (isTopActivityBbsRelated(topActivity)) { - tryWithDefaultCatch { - mStayTimeCount++ - if (mStayTimeCount >= mStayTimeTimeout) { - postExploreFinish() - } - } - } - Thread.sleep(1000) - } - } - } - - fun pauseTimeCount() { - if (!mIsStayTimeCountEnabled) return - - mIsStayTimeCountValid = false - } - - private fun isTopActivityBbsRelated(activity: Activity): Boolean { - return (activity is MainActivity && activity.intent.extras?.getBoolean(IS_BBS_CONTENT_VISIBLE) == true) - || activity is ForumDetailActivity - || activity is ArticleDetailActivity - || activity is ForumVideoDetailActivity - || activity is CommentActivity - || activity is NewQuestionDetailActivity - } - - @SuppressLint("CheckResult") - private fun postExploreFinish() { - RetrofitManager.getInstance() - .api - .postExplorerFinish() - .subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(object : BiResponse() { - override fun onSuccess(data: ResponseBody) { - if (!isPublishEnv()) { - ToastUtils.toast("完成了论坛停留任务(仅测试环境有这个 toast 不要慌)") - } - disableStayTimeCount() - } - }) - } - -} \ No newline at end of file diff --git a/app/src/main/java/com/gh/common/util/FloatingBackViewManager.kt b/app/src/main/java/com/gh/common/util/FloatingBackViewManager.kt index 59b0fcfc84..7aaab6c5ae 100644 --- a/app/src/main/java/com/gh/common/util/FloatingBackViewManager.kt +++ b/app/src/main/java/com/gh/common/util/FloatingBackViewManager.kt @@ -113,8 +113,6 @@ object FloatingBackViewManager { /** * 停用返回小浮窗 - * @param type 类型 - * @param activityUrl 类型为活动的时候用的地址 */ @JvmStatic fun disableBackView() { diff --git a/app/src/main/java/com/gh/common/util/GameCollectionSquareBrowseTaskHelper.kt b/app/src/main/java/com/gh/common/util/GameCollectionSquareBrowseTaskHelper.kt deleted file mode 100644 index e4b0cba354..0000000000 --- a/app/src/main/java/com/gh/common/util/GameCollectionSquareBrowseTaskHelper.kt +++ /dev/null @@ -1,254 +0,0 @@ -package com.gh.common.util - -import android.annotation.SuppressLint -import android.app.Activity -import android.app.Application -import android.os.Build -import android.os.Bundle -import android.view.Gravity -import android.view.View -import android.widget.ImageView -import android.widget.ProgressBar -import com.gh.gamecenter.common.base.activity.ToolBarActivity -import com.gh.gamecenter.R -import com.gh.gamecenter.common.retrofit.BiResponse -import com.gh.gamecenter.common.utils.singleToMain -import com.gh.gamecenter.common.utils.tryWithDefaultCatch -import com.gh.gamecenter.core.GHThreadFactory -import com.gh.gamecenter.core.runOnUiThread -import com.gh.gamecenter.core.utils.CurrentActivityHolder -import com.gh.gamecenter.gamecollection.detail.GameCollectionDetailActivity -import com.gh.gamecenter.gamecollection.square.GameCollectionSquareActivity -import com.gh.gamecenter.retrofit.RetrofitManager -import com.halo.assistant.HaloApp -import com.lzf.easyfloat.EasyFloat -import com.lzf.easyfloat.enums.ShowPattern -import com.lzf.easyfloat.enums.SidePattern -import okhttp3.ResponseBody -import java.util.concurrent.ExecutorService -import java.util.concurrent.Executors - -/** - * 浏览游戏单广场任务辅助类 - */ -@SuppressLint("StaticFieldLeak") -object GameCollectionSquareBrowseTaskHelper { - - const val KEY_IS_FORM_BROWSE_TASK = "is_from_browse_task" - private const val FLOATING_SQUARE_BROWSE_TASK_VIEW = "floating_square_browse_task_view" - - private var mBrowseTimeCount = 0 - private var mIsBrowseTimeCountEnabled = false // 游戏单广场浏览时间统计是否开启 - private var mBrowseTimeTimeout = 15 - private var mIsBrowseTimeCountValid = false // 游戏单广场浏览时间统计是否有效 - private var mBrowsePro: ProgressBar? = null - private var mIsFinished = false - private var mNeedShowFloatView = false - private var mIsFirstEnterSquare = true - - private val mThreadService: ExecutorService by lazy { - Executors.newSingleThreadExecutor(GHThreadFactory("BROWSE_SQUARE_THREAD")) - } - - private val mActivityLifecycleCallbacks by lazy { - object : Application.ActivityLifecycleCallbacks { - override fun onActivityCreated(activity: Activity, savedInstanceState: Bundle?) {} - override fun onActivityStopped(activity: Activity) {} - override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle) {} - override fun onActivityStarted(activity: Activity) {} - - override fun onActivityResumed(activity: Activity) { - if (isTopActivityGameCollectionRelated(activity) && mIsBrowseTimeCountEnabled) { - resumeTimeCount() - } else if (isGameCollectionSquare(activity) && mNeedShowFloatView) { - showOrUpdateFloatView(activity, mBrowseTimeTimeout) - } - } - - override fun onActivityPaused(activity: Activity) { - if (isTopActivityGameCollectionRelated(activity) && mIsBrowseTimeCountEnabled) { - pauseTimeCount() - } - if (isGameCollectionSquare(activity)) { - dismissFloatView() - } - } - - override fun onActivityDestroyed(activity: Activity) { - if (isGameCollectionSquare(activity) && mIsBrowseTimeCountEnabled) { - disableBrowseTimeCount() - unregisterActivityLifecycleCallbacks() - } - } - } - } - - fun enableBrowseTimeCount(timeout: Int, isFinished: Boolean) { - mIsBrowseTimeCountEnabled = true - mBrowseTimeTimeout = timeout - mIsFinished = isFinished - mNeedShowFloatView = true - mIsFirstEnterSquare = true - - resumeTimeCount() - - HaloApp.getInstance().registerActivityLifecycleCallbacks(mActivityLifecycleCallbacks) - } - - fun disableBrowseTimeCount() { - mBrowseTimeCount = 0 - mIsBrowseTimeCountEnabled = false - mBrowsePro = null - mIsFinished = false - mIsFirstEnterSquare = true - } - - fun unregisterActivityLifecycleCallbacks() { - mNeedShowFloatView = false - HaloApp.getInstance().unregisterActivityLifecycleCallbacks(mActivityLifecycleCallbacks) - } - - private fun resumeTimeCount() { - if (!mIsBrowseTimeCountEnabled) return - - mIsBrowseTimeCountValid = true - - mThreadService.execute { - while (mIsBrowseTimeCountEnabled && mIsBrowseTimeCountValid) { - val topActivity = CurrentActivityHolder.getCurrentActivity() ?: continue - checkFirstEnterSquare(topActivity) - runBrowseTask(topActivity) - Thread.sleep(1000) - } - } - } - - private fun checkFirstEnterSquare(topActivity: Activity) { - if (isGameCollectionSquare(topActivity, false) && mIsFirstEnterSquare) { - mIsFirstEnterSquare = false - topActivity.intent.putExtra(KEY_IS_FORM_BROWSE_TASK, true) - } - } - - private fun runBrowseTask(topActivity: Activity) { - if (isTopActivityGameCollectionRelated(topActivity)) { - tryWithDefaultCatch { - showOrUpdateFloatView(topActivity, if (mIsFinished) mBrowseTimeTimeout else mBrowseTimeCount) - if (mIsFinished) { - disableBrowseTimeCount() - } else { - countBrowseTimeout(topActivity) - } - } - } - } - - private fun countBrowseTimeout(topActivity: Activity) { - mBrowseTimeCount++ - if (mBrowseTimeCount >= mBrowseTimeTimeout) { - showOrUpdateFloatView(topActivity, mBrowseTimeTimeout) - postBrowseFinish() - } - } - - private fun pauseTimeCount() { - if (!mIsBrowseTimeCountEnabled) return - - mIsBrowseTimeCountValid = false - } - - // 从任务跳转的游戏单广场/此游戏单广场进入的游戏单详情都计时 - private fun isTopActivityGameCollectionRelated(activity: Activity): Boolean { - return isGameCollectionSquare(activity) - || (activity is GameCollectionDetailActivity - && activity.intent.getBundleExtra(ToolBarActivity.NORMAL_FRAGMENT_BUNDLE) - ?.getBoolean(KEY_IS_FORM_BROWSE_TASK) == true) - } - - private fun isGameCollectionSquare(activity: Activity, checkIsFromTask: Boolean = true): Boolean { - return activity is GameCollectionSquareActivity - && (!checkIsFromTask || activity.intent.getBooleanExtra(KEY_IS_FORM_BROWSE_TASK, false)) - } - - private fun showOrUpdateFloatView(activity: Activity, time: Int) { - // 不支持 Android 4.1 的设备 - if (Build.VERSION.SDK_INT == Build.VERSION_CODES.JELLY_BEAN) return - - // 游戏单广场才显示FloatView - if (!isGameCollectionSquare(activity)) return - - runOnUiThread { - val isFinished = time == mBrowseTimeTimeout - val floatView = EasyFloat.getFloatView(FLOATING_SQUARE_BROWSE_TASK_VIEW) - if (floatView != null) { - updateFloatView(floatView, isFinished, time) - } else { - showFloatView(activity, isFinished) - } - } - } - - private fun showFloatView(activity: Activity, isFinished: Boolean) { - EasyFloat.with(activity) - .setLayout(R.layout.layout_square_browse_task_float) - .setTag(FLOATING_SQUARE_BROWSE_TASK_VIEW) - .setAnimator(null) - .setGravity(Gravity.END.or(Gravity.CENTER_VERTICAL), 0, 0) - .setSidePattern(SidePattern.RIGHT) - .setShowPattern(ShowPattern.CURRENT_ACTIVITY) - .setDragEnable(false) - .registerCallback { - createResult { _, _, view -> - initFloatView(view, isFinished) - } - } - .show() - } - - private fun initFloatView(view: View?, isFinished: Boolean) { - if (isFinished) { - view?.findViewById(R.id.browsePro)?.run { - max = mBrowseTimeTimeout - progress = mBrowseTimeTimeout - } - view?.findViewById(R.id.browsePic) - ?.setImageResource(R.drawable.pic_browse_square_finish) - } else { - view?.findViewById(R.id.browsePro)?.run { - mBrowsePro = this - max = mBrowseTimeTimeout - progress = 0 - } - view?.findViewById(R.id.browsePic) - ?.setImageResource(R.drawable.pic_browse_square) - } - } - - private fun updateFloatView(floatView: View, isFinished: Boolean, time: Int) { - if (mBrowsePro == null) { - mBrowsePro = floatView.findViewById(R.id.browsePro) - } - mBrowsePro?.progress = time - if (isFinished) { - floatView.findViewById(R.id.browsePic) - .setImageResource(R.drawable.pic_browse_square_finish) - } - } - - private fun dismissFloatView() { - EasyFloat.dismiss(FLOATING_SQUARE_BROWSE_TASK_VIEW) - } - - @SuppressLint("CheckResult") - private fun postBrowseFinish() { - RetrofitManager.getInstance() - .newApi - .postGameCollectionTask("browse_game_list_square", "0") - .compose(singleToMain()) - .subscribe(object : BiResponse() { - override fun onSuccess(data: ResponseBody) { - disableBrowseTimeCount() - } - }) - } -} \ No newline at end of file diff --git a/app/src/main/java/com/gh/gamecenter/forum/home/CommunityHomeFragment.kt b/app/src/main/java/com/gh/gamecenter/forum/home/CommunityHomeFragment.kt index 2ba7722676..9972a13017 100644 --- a/app/src/main/java/com/gh/gamecenter/forum/home/CommunityHomeFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/forum/home/CommunityHomeFragment.kt @@ -14,7 +14,6 @@ import androidx.core.graphics.ColorUtils import androidx.core.os.bundleOf import androidx.fragment.app.Fragment import androidx.viewpager.widget.ViewPager -import com.gh.common.util.FloatingBackViewManager import com.gh.common.util.NewLogUtils import com.gh.gamecenter.R import com.gh.gamecenter.common.base.TrackableDialog @@ -26,14 +25,14 @@ import com.gh.gamecenter.core.utils.DisplayUtils import com.gh.gamecenter.core.utils.MtaHelper import com.gh.gamecenter.databinding.FragmentCommunityHomeBinding import com.gh.gamecenter.databinding.TabItemCommunityBinding -import com.gh.gamecenter.feature.entity.ForumVideoEntity import com.gh.gamecenter.eventbus.EBSkip import com.gh.gamecenter.eventbus.EBTypeChange import com.gh.gamecenter.eventbus.EBUISwitch +import com.gh.gamecenter.feature.entity.ArticleEntity +import com.gh.gamecenter.feature.entity.ForumVideoEntity import com.gh.gamecenter.forum.search.ForumOrUserSearchActivity import com.gh.gamecenter.fragment.MainWrapperFragment import com.gh.gamecenter.qa.article.edit.ArticleEditActivity -import com.gh.gamecenter.feature.entity.ArticleEntity import com.gh.gamecenter.qa.questions.edit.QuestionEditActivity import com.gh.gamecenter.qa.video.publish.VideoPublishActivity import com.google.android.material.tabs.TabLayout @@ -187,8 +186,6 @@ class CommunityHomeFragment : LazyFragment() { changeNavigationBg(this) } NewLogUtils.logCommunityHomeEvent("click_activity_tab") - FloatingBackViewManager.disableBackView() - FloatingBackViewManager.dismissBackView() } } }, diff --git a/app/src/main/java/com/gh/gamecenter/forum/home/ForumFragment.kt b/app/src/main/java/com/gh/gamecenter/forum/home/ForumFragment.kt index 74b553b61d..80637d7b8d 100644 --- a/app/src/main/java/com/gh/gamecenter/forum/home/ForumFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/forum/home/ForumFragment.kt @@ -15,15 +15,14 @@ import androidx.recyclerview.widget.RecyclerView import androidx.swiperefreshlayout.widget.SwipeRefreshLayout import com.ethanhua.skeleton.Skeleton import com.ethanhua.skeleton.ViewSkeletonScreen -import com.gh.gamecenter.common.base.fragment.LazyFragment -import com.gh.gamecenter.common.constant.Constants import com.gh.common.util.* import com.gh.common.util.NewLogUtils -import com.gh.gamecenter.common.view.GridSpacingItemColorDecoration import com.gh.gamecenter.R +import com.gh.gamecenter.common.base.fragment.LazyFragment +import com.gh.gamecenter.common.constant.Constants import com.gh.gamecenter.common.utils.* +import com.gh.gamecenter.common.view.GridSpacingItemColorDecoration import com.gh.gamecenter.databinding.ForumBannerIndicatorItemBinding - import com.gh.gamecenter.databinding.FragmentForumBinding import com.gh.gamecenter.entity.ForumBannerEntity import com.gh.gamecenter.entity.ForumEntity @@ -170,9 +169,6 @@ class ForumFragment : LazyFragment(), SwipeRefreshLayout.OnRefreshListener { mViewModel?.getForumUnreadStatus() } - activity?.intent?.putExtra(BbsStayTimeHelper.IS_BBS_CONTENT_VISIBLE, true) - BbsStayTimeHelper.resumeTimeCount() - if (mBanners.size > 1) { mIsAutoScroll = true mBinding?.bannerViewPager?.startAutoScroll() @@ -183,10 +179,6 @@ class ForumFragment : LazyFragment(), SwipeRefreshLayout.OnRefreshListener { override fun onFragmentPause() { super.onFragmentPause() - - activity?.intent?.putExtra(BbsStayTimeHelper.IS_BBS_CONTENT_VISIBLE, false) - BbsStayTimeHelper.pauseTimeCount() - if (mBanners.size > 1) { mIsAutoScroll = false mBinding?.bannerViewPager?.stopAutoScroll() diff --git a/app/src/main/java/com/gh/gamecenter/fragment/MainWrapperFragment.java b/app/src/main/java/com/gh/gamecenter/fragment/MainWrapperFragment.java index 1fb187ad50..294e2a8c94 100644 --- a/app/src/main/java/com/gh/gamecenter/fragment/MainWrapperFragment.java +++ b/app/src/main/java/com/gh/gamecenter/fragment/MainWrapperFragment.java @@ -29,8 +29,6 @@ import com.facebook.imagepipeline.image.ImageInfo; import com.gh.common.constant.Config; import com.gh.common.dialog.PrivacyPolicyDialogFragment; import com.gh.common.dialog.ReserveDialog; -import com.gh.gamecenter.feature.exposure.ExposureSource; -import com.gh.common.util.FloatingBackViewManager; import com.gh.common.util.HomeBottomBarHelper; import com.gh.common.util.IntegralLogHelper; import com.gh.common.util.LogUtils; @@ -41,19 +39,20 @@ import com.gh.gamecenter.common.base.fragment.BaseFragment_ViewPager_Checkable; import com.gh.gamecenter.common.callback.BiCallback; import com.gh.gamecenter.common.callback.OnDoubleTapListener; import com.gh.gamecenter.common.constant.EntranceConsts; +import com.gh.gamecenter.common.eventbus.EBReuse; import com.gh.gamecenter.common.syncpage.SyncPageRepository; import com.gh.gamecenter.common.tracker.TrackerLogger; import com.gh.gamecenter.common.utils.ExtensionsKt; import com.gh.gamecenter.common.utils.ImageUtils; import com.gh.gamecenter.core.utils.DisplayUtils; import com.gh.gamecenter.databinding.FragmentMainBinding; -import com.gh.gamecenter.feature.entity.SettingsEntity; import com.gh.gamecenter.entity.SubjectData; import com.gh.gamecenter.entity.SubjectRecommendEntity; import com.gh.gamecenter.entity.WelcomeDialogEntity; -import com.gh.gamecenter.common.eventbus.EBReuse; import com.gh.gamecenter.eventbus.EBSkip; import com.gh.gamecenter.eventbus.EBUISwitch; +import com.gh.gamecenter.feature.entity.SettingsEntity; +import com.gh.gamecenter.feature.exposure.ExposureSource; import com.gh.gamecenter.forum.home.CommunityHomeFragment; import com.gh.gamecenter.game.GameFragment; import com.gh.gamecenter.game.columncollection.detail.ColumnCollectionDetailFragment; @@ -546,11 +545,6 @@ public class MainWrapperFragment extends BaseFragment_ViewPager_Checkable implem TrackerLogger.logHomeTabSelected(index, tabText); - if (index != INDEX_BBS) { - FloatingBackViewManager.disableBackView(); - FloatingBackViewManager.dismissBackView(); - } - SubjectRecommendEntity navBarEntity = mViewModel.getNavBar().getValue(); if (navBarEntity != null) { if (index == INDEX_GAME) { diff --git a/app/src/main/java/com/gh/gamecenter/gamecollection/detail/GameCollectionDetailActivity.kt b/app/src/main/java/com/gh/gamecenter/gamecollection/detail/GameCollectionDetailActivity.kt index fbeaa16e29..62f549c4f9 100644 --- a/app/src/main/java/com/gh/gamecenter/gamecollection/detail/GameCollectionDetailActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/gamecollection/detail/GameCollectionDetailActivity.kt @@ -4,13 +4,10 @@ import android.content.Context import android.content.Intent import android.os.Bundle import android.view.View -import com.gh.common.util.GameCollectionSquareBrowseTaskHelper 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.constant.EntranceConsts import com.gh.gamecenter.core.utils.DisplayUtils -import com.gh.gamecenter.gamecollection.square.GameCollectionSquareActivity class GameCollectionDetailActivity : ToolBarActivity() { @@ -79,16 +76,6 @@ class GameCollectionDetailActivity : ToolBarActivity() { bundle.putString(EntranceConsts.KEY_TOP_COMMENT_ID, topCommentId) bundle.putBoolean(EntranceConsts.KEY_IS_FROM_SQUARE, isFromSquare) bundle.putBoolean(EntranceConsts.KEY_SCROLL_TO_COMMENT_AREA, isScrollToCommentArea) - if (context is GameCollectionSquareActivity) { - val isFromBrowseTask = context.intent.getBooleanExtra( - GameCollectionSquareBrowseTaskHelper.KEY_IS_FORM_BROWSE_TASK, - false - ) - bundle.putBoolean( - GameCollectionSquareBrowseTaskHelper.KEY_IS_FORM_BROWSE_TASK, - isFromBrowseTask - ) - } return getTargetIntent( context, GameCollectionDetailActivity::class.java, diff --git a/app/src/main/java/com/gh/gamecenter/gamecollection/detail/GameCollectionDetailFragment.kt b/app/src/main/java/com/gh/gamecenter/gamecollection/detail/GameCollectionDetailFragment.kt index 361b139b83..7ae1a42543 100644 --- a/app/src/main/java/com/gh/gamecenter/gamecollection/detail/GameCollectionDetailFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/gamecollection/detail/GameCollectionDetailFragment.kt @@ -241,7 +241,6 @@ class GameCollectionDetailFragment : if (!isEverPause && !mIsViewGameCollectionFinished) { mIsViewGameCollectionFinished = true logEvent("view_game_collect_detail") - mListViewModel.postGameCollectionTask("browse_game_list", mGameCollectionId) } } }, 2000) @@ -780,7 +779,6 @@ class GameCollectionDetailFragment : if (!isEverPause && !mIsViewGameCollectionFinished) { mIsViewGameCollectionFinished = true logEvent("view_game_collect_detail") - mListViewModel.postGameCollectionTask("browse_game_list", mGameCollectionId) } } }, 2000) diff --git a/app/src/main/java/com/gh/gamecenter/gamecollection/detail/GameCollectionDetailViewModel.kt b/app/src/main/java/com/gh/gamecenter/gamecollection/detail/GameCollectionDetailViewModel.kt index d36504b045..8606670fa9 100644 --- a/app/src/main/java/com/gh/gamecenter/gamecollection/detail/GameCollectionDetailViewModel.kt +++ b/app/src/main/java/com/gh/gamecenter/gamecollection/detail/GameCollectionDetailViewModel.kt @@ -8,13 +8,15 @@ import android.text.TextUtils import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModelProvider -import com.gh.gamecenter.common.constant.Constants -import com.gh.gamecenter.common.syncpage.SyncDataEntity -import com.gh.gamecenter.common.syncpage.SyncFieldConstants -import com.gh.gamecenter.common.syncpage.SyncPageRepository import com.gh.common.util.* import com.gh.gamecenter.R import com.gh.gamecenter.common.baselist.LoadStatus +import com.gh.gamecenter.common.constant.Constants +import com.gh.gamecenter.common.retrofit.BiResponse +import com.gh.gamecenter.common.retrofit.Response +import com.gh.gamecenter.common.syncpage.SyncDataEntity +import com.gh.gamecenter.common.syncpage.SyncFieldConstants +import com.gh.gamecenter.common.syncpage.SyncPageRepository import com.gh.gamecenter.common.utils.observableToMain import com.gh.gamecenter.common.utils.singleToMain import com.gh.gamecenter.common.utils.toNewSimpleCount @@ -25,9 +27,6 @@ import com.gh.gamecenter.eventbus.EBUserFollow import com.gh.gamecenter.login.user.UserManager import com.gh.gamecenter.qa.article.detail.CommentItemData import com.gh.gamecenter.qa.comment.base.BaseCommentViewModel -import com.gh.gamecenter.common.retrofit.BiResponse -import com.gh.gamecenter.common.retrofit.EmptyResponse -import com.gh.gamecenter.common.retrofit.Response import com.gh.gamecenter.retrofit.RetrofitManager import com.halo.assistant.HaloApp import com.lightgame.utils.Utils @@ -274,8 +273,6 @@ open class GameCollectionDetailViewModel( @SuppressLint("CheckResult") fun postShareGameCollection() { - postGameCollectionTask("forward_share_game_list") - if (gameCollectionDetail == null) return mApi.shareGameCollection(gameCollectionId) .compose(singleToMain()) @@ -379,15 +376,6 @@ open class GameCollectionDetailViewModel( }) } - @SuppressLint("CheckResult") - fun postGameCollectionTask(event: String, gameCollectionId: String = "0") { - RetrofitManager.getInstance() - .newApi - .postGameCollectionTask(event, gameCollectionId) - .compose(singleToMain()) - .subscribe(EmptyResponse()) - } - fun getStarText(): String { val favoriteCount = gameCollectionDetail?.count?.favorite ?: 0 return when { diff --git a/app/src/main/java/com/gh/gamecenter/gamecollection/square/GameCollectionSquareActivity.kt b/app/src/main/java/com/gh/gamecenter/gamecollection/square/GameCollectionSquareActivity.kt index 2b5ae147dc..9711728f39 100644 --- a/app/src/main/java/com/gh/gamecenter/gamecollection/square/GameCollectionSquareActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/gamecollection/square/GameCollectionSquareActivity.kt @@ -1,10 +1,9 @@ package com.gh.gamecenter.gamecollection.square import android.os.Bundle +import com.gh.gamecenter.R import com.gh.gamecenter.common.base.activity.BaseActivity import com.gh.gamecenter.core.utils.DisplayUtils -import com.gh.common.util.GameCollectionSquareBrowseTaskHelper -import com.gh.gamecenter.R class GameCollectionSquareActivity : BaseActivity() { override fun getLayoutId(): Int { @@ -24,14 +23,4 @@ class GameCollectionSquareActivity : BaseActivity() { .replace(R.id.placeholder, containerFragment, GameCollectionSquareFragment::class.java.name) .commitAllowingStateLoss() } - - override fun finish() { - GameCollectionSquareBrowseTaskHelper.run { - if (intent.getBooleanExtra(KEY_IS_FORM_BROWSE_TASK, false)) { - disableBrowseTimeCount() - unregisterActivityLifecycleCallbacks() - } - } - super.finish() - } } \ No newline at end of file diff --git a/app/src/main/java/com/gh/gamecenter/retrofit/service/ApiService.java b/app/src/main/java/com/gh/gamecenter/retrofit/service/ApiService.java index 0232a2d850..de9e7499fe 100644 --- a/app/src/main/java/com/gh/gamecenter/retrofit/service/ApiService.java +++ b/app/src/main/java/com/gh/gamecenter/retrofit/service/ApiService.java @@ -3,16 +3,15 @@ package com.gh.gamecenter.retrofit.service; import com.gh.common.filter.RegionSetting; import com.gh.gamecenter.common.entity.LinkEntity; import com.gh.gamecenter.common.entity.OssEntity; +import com.gh.gamecenter.common.entity.SimpleGameEntity; import com.gh.gamecenter.common.entity.ToolBoxEntity; import com.gh.gamecenter.common.entity.WechatConfigEntity; import com.gh.gamecenter.entity.ActivityLabelEntity; import com.gh.gamecenter.entity.AddonsUnreadEntity; import com.gh.gamecenter.entity.AmwayCommentEntity; -import com.gh.gamecenter.feature.entity.ApkEntity; import com.gh.gamecenter.entity.AppEntity; import com.gh.gamecenter.entity.ApplyModeratorStatusEntity; import com.gh.gamecenter.entity.ArchiveEntity; -import com.gh.gamecenter.feature.entity.AuthDialogEntity; import com.gh.gamecenter.entity.AvatarBorderCategoryEntity; import com.gh.gamecenter.entity.BadgeEntity; import com.gh.gamecenter.entity.CarouselEntity; @@ -33,12 +32,10 @@ import com.gh.gamecenter.entity.ForumBannerEntity; import com.gh.gamecenter.entity.ForumDetailEntity; import com.gh.gamecenter.entity.ForumEntity; import com.gh.gamecenter.entity.ForumUnreadEntity; -import com.gh.gamecenter.feature.entity.ForumVideoEntity; import com.gh.gamecenter.entity.GameCollectionCoverEntity; import com.gh.gamecenter.entity.GameCollectionTagEntity; import com.gh.gamecenter.entity.GameColumnCollection; import com.gh.gamecenter.entity.GameDigestEntity; -import com.gh.gamecenter.feature.entity.GameEntity; import com.gh.gamecenter.entity.GameGuidePopupEntity; import com.gh.gamecenter.entity.GameNavigationWrapper; import com.gh.gamecenter.entity.GameVideoInfo; @@ -60,10 +57,8 @@ import com.gh.gamecenter.entity.MyVideoEntity; import com.gh.gamecenter.entity.NewApiSettingsEntity; import com.gh.gamecenter.entity.NewSettingsEntity; import com.gh.gamecenter.entity.NewsDetailEntity; -import com.gh.gamecenter.feature.entity.NewsEntity; import com.gh.gamecenter.entity.PackageFilter; import com.gh.gamecenter.entity.PackageGame; -import com.gh.gamecenter.feature.entity.PersonalEntity; import com.gh.gamecenter.entity.PersonalHistoryEntity; import com.gh.gamecenter.entity.PrivacyPolicyEntity; import com.gh.gamecenter.entity.Rating; @@ -72,15 +67,11 @@ import com.gh.gamecenter.entity.RatingDraftEntity; import com.gh.gamecenter.entity.RatingReplyEntity; import com.gh.gamecenter.entity.RecommendPopupEntity; import com.gh.gamecenter.entity.SearchSubjectEntity; -import com.gh.gamecenter.feature.entity.ServerCalendarEntity; import com.gh.gamecenter.entity.ServerPublishEntity; import com.gh.gamecenter.entity.ServerTestEntity; import com.gh.gamecenter.entity.ServersGameCategory; -import com.gh.gamecenter.feature.entity.SettingsEntity; import com.gh.gamecenter.entity.SidebarsEntity; import com.gh.gamecenter.entity.SignEntity; -import com.gh.gamecenter.common.entity.SimpleGameEntity; -import com.gh.gamecenter.feature.entity.SimulatorEntity; import com.gh.gamecenter.entity.SpecialCatalogEntity; import com.gh.gamecenter.entity.SubjectEntity; import com.gh.gamecenter.entity.SubjectRecommendEntity; @@ -97,23 +88,32 @@ import com.gh.gamecenter.entity.VideoEntity; import com.gh.gamecenter.entity.VideoTagEntity; import com.gh.gamecenter.entity.ViewsEntity; import com.gh.gamecenter.entity.VoteEntity; -import com.gh.gamecenter.gamedetail.entity.BigEvent; -import com.gh.gamecenter.gamedetail.entity.NewGameDetailEntity; +import com.gh.gamecenter.feature.entity.AnswerEntity; +import com.gh.gamecenter.feature.entity.ApkEntity; +import com.gh.gamecenter.feature.entity.ArticleDraftEntity; +import com.gh.gamecenter.feature.entity.ArticleEntity; +import com.gh.gamecenter.feature.entity.AuthDialogEntity; import com.gh.gamecenter.feature.entity.AvatarBorderEntity; import com.gh.gamecenter.feature.entity.BackgroundImageEntity; +import com.gh.gamecenter.feature.entity.ForumVideoEntity; +import com.gh.gamecenter.feature.entity.GameEntity; +import com.gh.gamecenter.feature.entity.NewsEntity; +import com.gh.gamecenter.feature.entity.PersonalEntity; +import com.gh.gamecenter.feature.entity.QuestionDraftEntity; +import com.gh.gamecenter.feature.entity.Questions; +import com.gh.gamecenter.feature.entity.ServerCalendarEntity; +import com.gh.gamecenter.feature.entity.SettingsEntity; +import com.gh.gamecenter.feature.entity.SimulatorEntity; +import com.gh.gamecenter.gamedetail.entity.BigEvent; +import com.gh.gamecenter.gamedetail.entity.NewGameDetailEntity; import com.gh.gamecenter.login.entity.UserInfoEntity; import com.gh.gamecenter.personalhome.rating.MyRating; import com.gh.gamecenter.qa.entity.AnswerDetailEntity; import com.gh.gamecenter.qa.entity.AnswerDraftEntity; -import com.gh.gamecenter.feature.entity.AnswerEntity; import com.gh.gamecenter.qa.entity.ArticleDetailEntity; -import com.gh.gamecenter.feature.entity.ArticleDraftEntity; -import com.gh.gamecenter.feature.entity.ArticleEntity; import com.gh.gamecenter.qa.entity.AskSubjectEntity; import com.gh.gamecenter.qa.entity.EditorInsertDefaultEntity; import com.gh.gamecenter.qa.entity.InviteEntity; -import com.gh.gamecenter.feature.entity.QuestionDraftEntity; -import com.gh.gamecenter.feature.entity.Questions; import com.gh.gamecenter.qa.entity.QuestionsDetailEntity; import com.gh.gamecenter.qa.entity.QuestionsIndexEntity; import com.google.gson.JsonArray; @@ -2557,12 +2557,6 @@ public interface ApiService { @POST("questions/{question_id}/answers/{answer_id}:accept") Observable acceptQuestionComment(@Path("question_id") String questionId, @Path("answer_id") String answerId, @Body RequestBody body); - /** - * 完成论坛浏览页面停留任务 - */ - @POST("bbses/activities/explore/tasks/explore:finish") - Single postExplorerFinish(); - /** * 获取引导浮窗 */ @@ -2778,12 +2772,6 @@ public interface ApiService { @DELETE("api_go/game_list/{game_list_id}/comment/{comment_id}") Observable deleteGameCollectionComment(@Path("game_list_id") String gameCollectionId, @Path("comment_id") String commentId); - /** - * 游戏单活动上报任务 - */ - @POST("lottery/incr-progress/{task_event}/{game_list_id}") - Single postGameCollectionTask(@Path("task_event") String event, @Path("game_list_id") String gameCollectionId); - /** * 获取浏览器安装说明url */ diff --git a/app/src/main/res/drawable-xxxhdpi/pic_browse_square.webp b/app/src/main/res/drawable-xxxhdpi/pic_browse_square.webp deleted file mode 100644 index 155101db54bc77c16d2e0d0fee92bae328836662..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13642 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 diff --git a/app/src/main/res/drawable-xxxhdpi/pic_browse_square_finish.webp b/app/src/main/res/drawable-xxxhdpi/pic_browse_square_finish.webp deleted file mode 100644 index 343f83f015d91cdcb35ca89a7c93b476a47da6d3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10694 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 diff --git a/app/src/main/res/drawable/bg_browse_square_progress.xml b/app/src/main/res/drawable/bg_browse_square_progress.xml deleted file mode 100644 index 4757878588..0000000000 --- a/app/src/main/res/drawable/bg_browse_square_progress.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/drawable/progressbar_browse_square_style.xml b/app/src/main/res/drawable/progressbar_browse_square_style.xml deleted file mode 100644 index f56cb17c0a..0000000000 --- a/app/src/main/res/drawable/progressbar_browse_square_style.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/layout_square_browse_task_float.xml b/app/src/main/res/layout/layout_square_browse_task_float.xml deleted file mode 100644 index 8c087d2431..0000000000 --- a/app/src/main/res/layout/layout_square_browse_task_float.xml +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - - diff --git a/module_common/src/main/java/com/gh/gamecenter/common/retrofit/ApiService.kt b/module_common/src/main/java/com/gh/gamecenter/common/retrofit/ApiService.kt index dfeb58f28c..874132b06b 100644 --- a/module_common/src/main/java/com/gh/gamecenter/common/retrofit/ApiService.kt +++ b/module_common/src/main/java/com/gh/gamecenter/common/retrofit/ApiService.kt @@ -14,15 +14,6 @@ interface ApiService { @POST("shares") fun postShareResult(@Body body: RequestBody): Single - /** - * 游戏单活动上报任务 - */ - @POST("lottery/incr-progress/{task_event}/{game_list_id}") - fun postGameCollectionTask( - @Path("task_event") event: String, - @Path("game_list_id") gameCollectionId: String - ): Single - /** * 图片上传 */ diff --git a/module_common/src/main/java/com/gh/gamecenter/common/utils/LogUtils.java b/module_common/src/main/java/com/gh/gamecenter/common/utils/LogUtils.java index 61dd1cbb68..82d57fc55f 100644 --- a/module_common/src/main/java/com/gh/gamecenter/common/utils/LogUtils.java +++ b/module_common/src/main/java/com/gh/gamecenter/common/utils/LogUtils.java @@ -1,11 +1,9 @@ package com.gh.gamecenter.common.utils; import android.annotation.SuppressLint; -import android.text.TextUtils; import com.alibaba.android.arouter.launcher.ARouter; import com.gh.gamecenter.common.BuildConfig; -import com.gh.gamecenter.common.constant.Constants; import com.gh.gamecenter.common.constant.RouteConsts; import com.gh.gamecenter.common.entity.ShareResultEntity; import com.gh.gamecenter.common.exposure.meta.Meta; @@ -113,27 +111,6 @@ public class LogUtils { .postShareResult(body) .subscribeOn(Schedulers.io()) .subscribe(new EmptyResponse<>()); - - // 判断是否上报游戏单活动的"转发活动"任务 - postGameCollectionRepostActivityTaskCheck(url, shareResult); - } - - @SuppressLint("CheckResult") - public static void postGameCollectionRepostActivityTaskCheck(String url, String shareResult) { - if (!TextUtils.isEmpty(url) && "success".equals(shareResult)) { - String gameCollectionActivityUrl; - if (EnvHelper.isDevEnv()) { - gameCollectionActivityUrl = Constants.GAME_COLLECTION_ACTIVITY_ADDRESS_DEV; - } else { - gameCollectionActivityUrl = Constants.GAME_COLLECTION_ACTIVITY_ADDRESS; - } - if (url.contains(gameCollectionActivityUrl)) { - RetrofitManager.getInstance().getNewApi() - .postGameCollectionTask("repost_activity", "0") - .subscribeOn(Schedulers.io()) - .subscribe(new EmptyResponse<>()); - } - } } private static void uploadShare(JSONObject object) {