diff --git a/app/src/main/java/com/gh/common/util/CommentHelper.kt b/app/src/main/java/com/gh/common/util/CommentHelper.kt index 0a9f2b2f1b..c95b80b8c6 100644 --- a/app/src/main/java/com/gh/common/util/CommentHelper.kt +++ b/app/src/main/java/com/gh/common/util/CommentHelper.kt @@ -5,21 +5,21 @@ import android.view.LayoutInflater import android.view.View import android.widget.LinearLayout import android.widget.TextView -import com.gh.gamecenter.common.constant.Constants -import com.gh.gamecenter.common.json.json import com.gh.common.util.CommentUtils.copyText -import com.gh.gamecenter.common.view.BugFixedPopupWindow import com.gh.gamecenter.CommentDetailActivity import com.gh.gamecenter.R +import com.gh.gamecenter.common.constant.Constants +import com.gh.gamecenter.common.json.json +import com.gh.gamecenter.common.retrofit.Response import com.gh.gamecenter.common.utils.DialogHelper import com.gh.gamecenter.common.utils.ifLogin import com.gh.gamecenter.common.utils.showAutoOrientation +import com.gh.gamecenter.common.view.BugFixedPopupWindow import com.gh.gamecenter.entity.CommentEntity import com.gh.gamecenter.entity.MeEntity import com.gh.gamecenter.entity.Permissions import com.gh.gamecenter.manager.UserManager import com.gh.gamecenter.qa.comment.OnCommentOptionClickListener -import com.gh.gamecenter.common.retrofit.Response import com.gh.gamecenter.retrofit.RetrofitManager import com.halo.assistant.HaloApp import com.lightgame.utils.Utils @@ -237,8 +237,6 @@ object CommentHelper { } articleId != null -> { PostCommentUtils.reportCommunityArticleComment( - communityId, - articleId, commentEntity.id, reportType, commentListener diff --git a/app/src/main/java/com/gh/common/util/CommentUtils.java b/app/src/main/java/com/gh/common/util/CommentUtils.java index 6fdfe9e954..d809b4b562 100644 --- a/app/src/main/java/com/gh/common/util/CommentUtils.java +++ b/app/src/main/java/com/gh/common/util/CommentUtils.java @@ -298,7 +298,7 @@ public class CommentUtils { commentLikeCountTv.setText(NumberUtils.transSimpleCount(commentEntity.getVote())); commentLikeCountTv.setVisibility(View.VISIBLE); - PostCommentUtils.likeComment(answerId, articleId, articleCommunityId, videoId, questionId, commentEntity.getId(), + PostCommentUtils.likeComment(answerId, articleId, videoId, questionId, commentEntity.getId(), new PostCommentUtils.PostCommentListener() { @Override public void postSuccess(JSONObject response) { @@ -352,7 +352,7 @@ public class CommentUtils { String entrance = "视频流-评论-点赞"; CheckLoginUtils.checkLogin(context, entrance, () -> { - PostCommentUtils.likeComment(answerId, articleId, articleCommunityId, videoId, "", commentEntity.getId(), + PostCommentUtils.likeComment(answerId, articleId, videoId, "", commentEntity.getId(), new PostCommentUtils.PostCommentListener() { @Override public void postSuccess(JSONObject response) { diff --git a/app/src/main/java/com/gh/common/util/DetailDownloadUtils.java b/app/src/main/java/com/gh/common/util/DetailDownloadUtils.java index ee2af4122e..be60b4b179 100644 --- a/app/src/main/java/com/gh/common/util/DetailDownloadUtils.java +++ b/app/src/main/java/com/gh/common/util/DetailDownloadUtils.java @@ -30,7 +30,7 @@ public class DetailDownloadUtils { public static void detailInitDownload(DetailViewHolder viewHolder, boolean isCheck) { String downloadAddWord = viewHolder.gameEntity.getDownloadAddWord(); - viewHolder.overlayTv.setVisibility(View.GONE); + viewHolder.getOverlayTv().setVisibility(View.GONE); if (viewHolder.gameEntity != null && Config.isShowDownload(viewHolder.gameEntity.getId()) @@ -75,7 +75,7 @@ public class DetailDownloadUtils { String downloadText; if (viewHolder.context.getString(R.string.launch).equals(status) || viewHolder.context.getString(R.string.install).equals(status) || viewHolder.context.getString(R.string.download).equals(status)) { downloadText = ""; - viewHolder.overlayTv.setVisibility(View.VISIBLE); + viewHolder.getOverlayTv().setVisibility(View.VISIBLE); } else if (viewHolder.context.getString(R.string.attempt).equals(status)) { downloadText = status + getDownloadSizeText(viewHolder); } else { @@ -191,7 +191,7 @@ public class DetailDownloadUtils { } viewHolder.mDownloadPb.setProgress((int) (viewHolder.downloadEntity.getPercent() * 10)); - viewHolder.overlayTv.setVisibility(View.GONE); + viewHolder.getOverlayTv().setVisibility(View.GONE); if (viewHolder.gameEntity.isVGame()) { updateVStyleButton(viewHolder); @@ -247,7 +247,7 @@ public class DetailDownloadUtils { } viewHolder.mDownloadPb.setText(""); - viewHolder.overlayTv.setVisibility(View.VISIBLE); + viewHolder.getOverlayTv().setVisibility(View.VISIBLE); } } else { if (SPUtils.getBoolean(Constants.SP_USE_BROWSER_TO_INSTALL)) { @@ -305,18 +305,9 @@ public class DetailDownloadUtils { } viewHolder.mDownloadPb.setText(""); - viewHolder.overlayTv.setVisibility(View.VISIBLE); - break; + viewHolder.getOverlayTv().setVisibility(View.VISIBLE); } - case cancel: - case hijack: - case notfound: - case uncertificated: - case unqualified: - case unavailable: - // TODO 检查不调用 detailInitDownload 会有什么影响 -// detailInitDownload(viewHolder, false); -// break; + break; default: break; } diff --git a/app/src/main/java/com/gh/common/util/GameActivityDownloadHelper.kt b/app/src/main/java/com/gh/common/util/GameActivityDownloadHelper.kt index 063adb5b53..b889ef6919 100644 --- a/app/src/main/java/com/gh/common/util/GameActivityDownloadHelper.kt +++ b/app/src/main/java/com/gh/common/util/GameActivityDownloadHelper.kt @@ -172,16 +172,7 @@ object GameActivityDownloadHelper { ToastUtils.toast("${gameEntity.name}已加入下载队列") } else { val str = GameUtils.getDownloadBtnText(context, gameEntity, PluginLocation.only_game) - if (str == context.getString(R.string.download)) { - GamePermissionDialogFragment.show((context as AppCompatActivity), gameEntity, gameEntity.info) { - CertificationDialog.showCertificationDialog(context, gameEntity) { - DialogUtils.checkDownload(context, apk.size) { isSubscribe: Boolean -> - download(context, gameEntity, apk, isSubscribe, entrance, location, traceEvent) - } - } - } - DataLogUtils.uploadGameLog(context, gameEntity.id, gameEntity.name, entrance) - } else if (str == context.getString(R.string.attempt)) { + if (str == context.getString(R.string.download) || str == context.getString(R.string.attempt)) { GamePermissionDialogFragment.show((context as AppCompatActivity), gameEntity, gameEntity.info) { CertificationDialog.showCertificationDialog(context, gameEntity) { DialogUtils.checkDownload(context, apk.size) { isSubscribe: Boolean -> diff --git a/app/src/main/java/com/gh/common/util/PostCommentUtils.java b/app/src/main/java/com/gh/common/util/PostCommentUtils.java index c4f4383381..bc55a53b97 100644 --- a/app/src/main/java/com/gh/common/util/PostCommentUtils.java +++ b/app/src/main/java/com/gh/common/util/PostCommentUtils.java @@ -73,47 +73,8 @@ public class PostCommentUtils { }); } - public static void addAnswerComment(final String answerId, final String articleId, - final String articleCommunityId, final String content, - final CommentEntity commentEntity, - final PostCommentListener listener) { - RequestBody body = RequestBody.create(MediaType.parse("application/json"), content); - Observable observable; - if (!TextUtils.isEmpty(articleId)) { - if (commentEntity != null) { - observable = RetrofitManager.getInstance().getApi().postReplyToCommunityArticleComment(commentEntity.getId(), body); - } else { - observable = RetrofitManager.getInstance().getApi().postCommentToCommunityArticle(articleId, body); - } - } else { - if (commentEntity != null) { - observable = RetrofitManager.getInstance().getApi().postReplyToAnswerComment(answerId, commentEntity.getId(), body); - } else { - observable = RetrofitManager.getInstance().getApi().postNewCommentToAnswer(answerId, body); - } - } - observable.subscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(new Response() { - @Override - public void onResponse(ResponseBody response) { - if (listener != null) { - listener.postSuccess(new JSONObject());// 不需要返回 - } - } - - @Override - public void onFailure(HttpException e) { - if (listener != null) { - listener.postFailed(e); - } - } - }); - } - public static void likeComment(final String answerId, String articleId, - String articleCommunityId, String videoId, String questionId, final String commentId, @@ -252,9 +213,7 @@ public class PostCommentUtils { }); } - public static void reportCommunityArticleComment(final String communityId, - final String articleId, - final String commentId, + public static void reportCommunityArticleComment(final String commentId, final String reportData, final PostCommentListener listener) { RequestBody body = RequestBody.create(MediaType.parse("application/json"), reportData); diff --git a/app/src/main/java/com/gh/common/util/RealNameHelper.kt b/app/src/main/java/com/gh/common/util/RealNameHelper.kt index 4f2ecbb397..05720cc4aa 100644 --- a/app/src/main/java/com/gh/common/util/RealNameHelper.kt +++ b/app/src/main/java/com/gh/common/util/RealNameHelper.kt @@ -1,15 +1,12 @@ package com.gh.common.util -import android.content.Context import com.gh.gamecenter.core.utils.CurrentActivityHolder import com.gh.download.DownloadManager import com.gh.gamecenter.ShellActivity import com.gh.gamecenter.common.constant.EntranceConsts import com.gh.gamecenter.common.utils.DialogHelper -import com.gh.gamecenter.core.utils.EmptyCallback import com.gh.gamecenter.core.utils.ToastUtils import com.gh.gamecenter.common.utils.getMetaExtra -import com.gh.gamecenter.entity.GameEntity import com.lightgame.download.DownloadEntity import com.lightgame.download.DownloadStatus diff --git a/app/src/main/java/com/gh/download/DownloadManager.java b/app/src/main/java/com/gh/download/DownloadManager.java index bd68a69ae9..880653dded 100644 --- a/app/src/main/java/com/gh/download/DownloadManager.java +++ b/app/src/main/java/com/gh/download/DownloadManager.java @@ -796,7 +796,7 @@ public class DownloadManager implements DownloadStatusListener { } } - private void cancelAndNotify(DownloadEntity entry, Boolean cancelSilently) { + private void cancelAndNotify(DownloadEntity entry, boolean cancelSilently) { mDownloadDao.removeErrorMessage(entry.getUrl()); DownloadTask task = DataChanger.INSTANCE.getDownloadingTasks().get(entry.getUrl()); diff --git a/app/src/main/java/com/gh/gamecenter/adapter/viewholder/DetailViewHolder.java b/app/src/main/java/com/gh/gamecenter/adapter/viewholder/DetailViewHolder.java index 51a0e188d6..c69e98b776 100644 --- a/app/src/main/java/com/gh/gamecenter/adapter/viewholder/DetailViewHolder.java +++ b/app/src/main/java/com/gh/gamecenter/adapter/viewholder/DetailViewHolder.java @@ -78,14 +78,14 @@ public class DetailViewHolder { public View downloadBottom; public DownloadProgressBar mDownloadPb; - public TextView overlayTv; // 额外的文字 (用于一些含图片的情况) + public TextView mOverlayTv; // 额外的文字 (用于一些含图片的情况) // 注意View的命名 public DetailViewHolder(View view, GameEntity gameEntity, DownloadEntity downloadEntity, boolean isNewsDetail, String entrance, String name, String title, @Nullable ExposureEvent traceEvent) { downloadBottom = view.findViewById(R.id.detail_ll_bottom); mDownloadPb = view.findViewById(R.id.detail_progressbar); - overlayTv = view.findViewById(R.id.overlayTv); + mOverlayTv = view.findViewById(R.id.overlayTv); this.gameEntity = gameEntity; this.downloadEntity = downloadEntity; @@ -99,6 +99,10 @@ public class DetailViewHolder { restoreDialogFragment(); } + public TextView getOverlayTv() { + return mOverlayTv; + } + private void restoreDialogFragment() { DialogFragment gamePermissionDialogFragment = (DialogFragment) ((AppCompatActivity) context).getSupportFragmentManager().findFragmentByTag(GamePermissionDialogFragment.class.getName()); diff --git a/app/src/main/java/com/gh/gamecenter/game/vertical/GameVerticalAdapter.kt b/app/src/main/java/com/gh/gamecenter/game/vertical/GameVerticalAdapter.kt index 911a6d9ab9..9e7f21be1c 100644 --- a/app/src/main/java/com/gh/gamecenter/game/vertical/GameVerticalAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/game/vertical/GameVerticalAdapter.kt @@ -49,7 +49,6 @@ class GameVerticalAdapter( override fun onBindViewHolder(holder: SimpleGameItemViewHolder, position: Int) { if (mTransparentBackground) holder.itemView.setBackgroundColor(R.color.transparent.toColor()) - val isStartOfRow = mSubjectEntity.list > position val paddingStart = 16F.dip2px() val isEndOfRow = position >= if (itemCount % mSubjectEntity.list == 0) { itemCount - mSubjectEntity.list diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/dialog/GameDetailMoreDialog.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/dialog/GameDetailMoreDialog.kt index d50aa07f75..b8a220f590 100644 --- a/app/src/main/java/com/gh/gamecenter/gamedetail/dialog/GameDetailMoreDialog.kt +++ b/app/src/main/java/com/gh/gamecenter/gamedetail/dialog/GameDetailMoreDialog.kt @@ -18,9 +18,7 @@ import com.gh.gamecenter.common.utils.* import com.gh.gamecenter.core.utils.MtaHelper import com.gh.gamecenter.databinding.DialogGameDetailMoreBinding import com.gh.gamecenter.entity.GameEntity -import com.gh.gamecenter.entity.SimpleGameEntity import com.gh.gamecenter.gamedetail.GameDetailViewModel -import com.gh.gamecenter.suggest.SuggestType class GameDetailMoreDialog : BaseDraggableDialogFragment() { diff --git a/app/src/main/java/com/gh/gamecenter/packagehelper/PackageRepository.kt b/app/src/main/java/com/gh/gamecenter/packagehelper/PackageRepository.kt index 9bc4c1146c..56025baaf3 100644 --- a/app/src/main/java/com/gh/gamecenter/packagehelper/PackageRepository.kt +++ b/app/src/main/java/com/gh/gamecenter/packagehelper/PackageRepository.kt @@ -66,7 +66,6 @@ object PackageRepository { /** * 预留方法,如果想手动初始化可以调用 */ - // TODO 在获取到页面数据以后刷新 @JvmStatic fun initData() { runOnIoThread { diff --git a/app/src/main/java/com/gh/gamecenter/qa/comment/base/BaseCommentViewModel.kt b/app/src/main/java/com/gh/gamecenter/qa/comment/base/BaseCommentViewModel.kt index 62b3a1096e..c14fcfffe0 100644 --- a/app/src/main/java/com/gh/gamecenter/qa/comment/base/BaseCommentViewModel.kt +++ b/app/src/main/java/com/gh/gamecenter/qa/comment/base/BaseCommentViewModel.kt @@ -157,7 +157,6 @@ abstract class BaseCommentViewModel( PostCommentUtils.likeComment( null, articleId, - communityId, videoId, questionId, comment.id, diff --git a/app/src/main/java/com/gh/vspace/VDownloadManagerViewModel.kt b/app/src/main/java/com/gh/vspace/VDownloadManagerViewModel.kt index f15dac52c8..e083c4f340 100644 --- a/app/src/main/java/com/gh/vspace/VDownloadManagerViewModel.kt +++ b/app/src/main/java/com/gh/vspace/VDownloadManagerViewModel.kt @@ -31,58 +31,66 @@ class VDownloadManagerViewModel(application: Application) : override fun provideDataObservable(page: Int): Observable>? = null override fun provideDataSingle(page: Int): Single> { - if (type == TYPE_DOWNLOADED) { - return Single.create { emitter -> - val vGameList = VHelper.getAllVGame().sortedByDescending { it.downloadEntity.start } - val gameList = arrayListOf() - - // 为空直接返回 - if (vGameList.isEmpty()) { - emitter.onSuccess(gameList) - return@create - } - - for (vGame in vGameList) { - // 过滤部分不需要的 - if (DownloadManager.getInstance().allVDownloadTaskSnapshots.any { - it.gameId == vGame.downloadEntity.gameId && it.status != DownloadStatus.done - }) { - continue - } - - val gameEntity = VHelper.toGameEntity(vGame.downloadEntity) - if (gameEntity.playedTime != 0L) { - gameEntity.des = - "已畅玩${NumberUtils.transSimpleUsageTime(gameEntity.playedTime / 1000)}" - } else { - val occupiedSpace = - VHelper.getAppOccupiedSpace(vGame.downloadEntity.packageName) - if (occupiedSpace > 0) { - gameEntity.des = "已占用 ${occupiedSpace.toProperReadableSize()}" - } - } - - gameList.add(gameEntity) - } - - emitter.onSuccess(gameList) - } + return if (type == TYPE_DOWNLOADED) { + provideDownloadedSingle() } else { - return Single.create { emitter -> - val downloadList = DownloadManager.getInstance().allVDownloadTaskSnapshots + provideDownloadingSingle() + } + } - val gameList = arrayListOf() + private fun provideDownloadedSingle(): Single> { + return Single.create { emitter -> + val vGameList = VHelper.getAllVGame().sortedByDescending { it.downloadEntity.start } + val gameList = arrayListOf() - for (downloadEntity in downloadList) { - // 过滤下载完成的部分 - if (downloadEntity.status == DownloadStatus.done) { - continue - } - gameList.add(VHelper.toGameEntity(downloadEntity)) + // 为空直接返回 + if (vGameList.isEmpty()) { + emitter.onSuccess(gameList) + return@create + } + + for (vGame in vGameList) { + // 过滤部分不需要的 + if (DownloadManager.getInstance().allVDownloadTaskSnapshots.any { + it.gameId == vGame.downloadEntity.gameId && it.status != DownloadStatus.done + }) { + continue } - emitter.onSuccess(gameList) + val gameEntity = VHelper.toGameEntity(vGame.downloadEntity) + if (gameEntity.playedTime != 0L) { + gameEntity.des = + "已畅玩${NumberUtils.transSimpleUsageTime(gameEntity.playedTime / 1000)}" + } else { + val occupiedSpace = + VHelper.getAppOccupiedSpace(vGame.downloadEntity.packageName) + if (occupiedSpace > 0) { + gameEntity.des = "已占用 ${occupiedSpace.toProperReadableSize()}" + } + } + + gameList.add(gameEntity) } + + emitter.onSuccess(gameList) + } + } + + private fun provideDownloadingSingle(): Single> { + return Single.create { emitter -> + val downloadList = DownloadManager.getInstance().allVDownloadTaskSnapshots + + val gameList = arrayListOf() + + for (downloadEntity in downloadList) { + // 过滤下载完成的部分 + if (downloadEntity.status == DownloadStatus.done) { + continue + } + gameList.add(VHelper.toGameEntity(downloadEntity)) + } + + emitter.onSuccess(gameList) } }