From 647ef1d8d3e0ad8da662d8067887f2abe6047ba2 Mon Sep 17 00:00:00 2001 From: nich Date: Mon, 11 Apr 2022 11:14:18 +0800 Subject: [PATCH 01/12] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=B8=B8=E6=88=8F?= =?UTF-8?q?=E5=BA=93=E6=95=B0=E7=BB=84=E8=B6=8A=E7=95=8C=E9=97=AA=E9=80=80?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/gh/gamecenter/game/GameFragmentAdapter.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/gh/gamecenter/game/GameFragmentAdapter.kt b/app/src/main/java/com/gh/gamecenter/game/GameFragmentAdapter.kt index e365e75872..dc6d072287 100644 --- a/app/src/main/java/com/gh/gamecenter/game/GameFragmentAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/game/GameFragmentAdapter.kt @@ -508,6 +508,8 @@ class GameFragmentAdapter( val exposureEventList = arrayListOf() runOnIoThread(true) { for (i in positionOffset until subjectAdapter.itemCount + positionOffset) { + if (i >= it.size) break + it[i].sequence = i val exposureKey = if (subjectEntity.remark != null) "开测表" else "专题" @@ -518,8 +520,6 @@ class GameFragmentAdapter( gameEntity = it[i], basicSource = mBasicExposureSource, source = listOf(ExposureSource(exposureKey, exposureValue)), - eTrace = null, - event = ExposureType.EXPOSURE ) exposureEventList.add(event) } From ead711446d0f7695d18471207ee6d461ae6ad1e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E7=8E=89=E4=B9=85?= Date: Mon, 11 Apr 2022 14:43:15 +0800 Subject: [PATCH 02/12] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E6=9B=B4=E6=96=B0tar?= =?UTF-8?q?getSdk=E4=B8=BA28=E4=BB=A5=E5=90=8E=E9=80=8F=E6=98=8Eactivity?= =?UTF-8?q?=E9=85=8D=E4=B8=8Aportait=E5=9C=A8=208.0=20=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E4=B8=8A=E4=BC=9A=E9=97=AA=E9=80=80=E7=9A=84=E9=97=AE=E9=A2=98?= =?UTF-8?q?=20=202.=E4=BF=AE=E6=94=B9=E5=B8=AE=E5=8A=A9=E4=B8=8E=E5=8F=8D?= =?UTF-8?q?=E9=A6=88=E9=A1=B5=E9=9D=A2=E9=87=8D=E5=BB=BA=E9=97=AA=E9=80=80?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/AndroidManifest.xml | 5 +---- app/src/main/java/com/gh/gamecenter/WebActivity.kt | 5 +++++ .../com/gh/gamecenter/help/HelpContentFragment.kt | 12 +++++++----- .../com/gh/gamecenter/qa/comment/CommentActivity.kt | 5 +++++ .../gh/gamecenter/qa/dialog/ChooseForumActivity.kt | 5 +++++ 5 files changed, 23 insertions(+), 9 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b08aa5920f..2da5513638 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -163,8 +163,7 @@ android:screenOrientation="portrait" /> + android:name="com.gh.gamecenter.WebActivity" /> diff --git a/app/src/main/java/com/gh/gamecenter/WebActivity.kt b/app/src/main/java/com/gh/gamecenter/WebActivity.kt index 6f84ba500d..9cb17c9dd1 100644 --- a/app/src/main/java/com/gh/gamecenter/WebActivity.kt +++ b/app/src/main/java/com/gh/gamecenter/WebActivity.kt @@ -2,6 +2,8 @@ package com.gh.gamecenter import android.content.Context import android.content.Intent +import android.content.pm.ActivityInfo +import android.os.Build import android.os.Bundle import android.text.TextUtils import android.view.KeyEvent @@ -28,6 +30,9 @@ open class WebActivity : NormalActivity() { if (mIsFullScreen) { setTheme(R.style.AppFullScreenTheme) } + if (Build.VERSION.SDK_INT != Build.VERSION_CODES.O) { + requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT + } super.onCreate(savedInstanceState) if (mIsFullScreen) { hideToolbar(true) diff --git a/app/src/main/java/com/gh/gamecenter/help/HelpContentFragment.kt b/app/src/main/java/com/gh/gamecenter/help/HelpContentFragment.kt index 0b04a129c3..e9471b7e56 100644 --- a/app/src/main/java/com/gh/gamecenter/help/HelpContentFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/help/HelpContentFragment.kt @@ -25,7 +25,7 @@ class HelpContentFragment : ListFragment Date: Tue, 12 Apr 2022 09:40:53 +0800 Subject: [PATCH 03/12] =?UTF-8?q?=E5=A4=84=E7=90=86=E7=A9=BA=E6=8C=87?= =?UTF-8?q?=E9=92=88=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/gh/gamecenter/qa/comment/NewCommentFragment.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/java/com/gh/gamecenter/qa/comment/NewCommentFragment.kt b/app/src/main/java/com/gh/gamecenter/qa/comment/NewCommentFragment.kt index 3200c48cad..bf606e6bb3 100644 --- a/app/src/main/java/com/gh/gamecenter/qa/comment/NewCommentFragment.kt +++ b/app/src/main/java/com/gh/gamecenter/qa/comment/NewCommentFragment.kt @@ -402,7 +402,7 @@ open class NewCommentFragment : ListFragment toast("操作太快,慢一点嘛") } } - mCachedView.findViewById(R.id.comment_close_iv).setOnClickListener { + mCachedView.findViewById(R.id.comment_close_iv)?.setOnClickListener { val fragment = parentFragment if (fragment is BaseDialogWrapperFragment) { fragment.dismiss() From f9d7255556d332b471846e1e5969e717cf9d840b Mon Sep 17 00:00:00 2001 From: chenjuntao Date: Tue, 12 Apr 2022 09:50:18 +0800 Subject: [PATCH 04/12] =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E8=87=B3=205.7.2-493?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dependencies.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.gradle b/dependencies.gradle index e57a4c60ef..b2dc351d3d 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -7,8 +7,8 @@ ext { targetSdkVersion = 28 // application info (每个大版本之间的 versionCode 增加 20) - versionCode = 492 - versionName = "5.7.1" + versionCode = 493 + versionName = "5.7.2" applicationId = "com.gh.gamecenter" // AndroidX From 6cd9076dff328648cec613a95c5178a8168cc6ce Mon Sep 17 00:00:00 2001 From: juntao Date: Wed, 13 Apr 2022 17:15:26 +0800 Subject: [PATCH 05/12] =?UTF-8?q?=E4=BF=AE=E5=A4=8D8.0=E4=BB=A5=E4=B8=8A?= =?UTF-8?q?=E8=AE=BE=E5=A4=87=E6=97=A0=E6=B3=95=E6=8F=92=E4=BB=B6=E5=8C=96?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/AndroidManifest.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 2da5513638..244bccea53 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -34,6 +34,8 @@ + + From 4e0516e43f2b0c624f5a7994492591ac4f3d8229 Mon Sep 17 00:00:00 2001 From: juntao Date: Wed, 13 Apr 2022 17:17:55 +0800 Subject: [PATCH 06/12] =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E8=87=B3=205.7.3-494?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dependencies.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.gradle b/dependencies.gradle index b2dc351d3d..40e2ad9849 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -7,8 +7,8 @@ ext { targetSdkVersion = 28 // application info (每个大版本之间的 versionCode 增加 20) - versionCode = 493 - versionName = "5.7.2" + versionCode = 494 + versionName = "5.7.3" applicationId = "com.gh.gamecenter" // AndroidX From 39eecf092098e84b66a0e70f5b73e44ae96d3db4 Mon Sep 17 00:00:00 2001 From: juntao Date: Mon, 18 Apr 2022 10:14:49 +0800 Subject: [PATCH 07/12] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=8E=A9=E8=BF=87?= =?UTF-8?q?=E7=9A=84=E6=B8=B8=E6=88=8F=E9=94=99=E8=AF=AF=E6=98=BE=E7=A4=BA?= =?UTF-8?q?=E5=B7=B2=E5=8D=B8=E8=BD=BD=E7=8A=B6=E6=80=81=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gh/gamecenter/mygame/PlayedGameAdapter.kt | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/gh/gamecenter/mygame/PlayedGameAdapter.kt b/app/src/main/java/com/gh/gamecenter/mygame/PlayedGameAdapter.kt index ecd4d10276..a0b33e23f2 100644 --- a/app/src/main/java/com/gh/gamecenter/mygame/PlayedGameAdapter.kt +++ b/app/src/main/java/com/gh/gamecenter/mygame/PlayedGameAdapter.kt @@ -18,6 +18,7 @@ import android.widget.TextView import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.content.ContextCompat import androidx.recyclerview.widget.RecyclerView +import com.gh.common.AppExecutor import com.gh.common.constant.ItemViewType import com.gh.common.exposure.ExposureEvent import com.gh.common.exposure.ExposureSource @@ -45,6 +46,8 @@ open class PlayedGameAdapter(context: Context, private val mPositionAndPackageMap = HashMap() private val mEntrance = if (mIsMyPlayedGame) "我的玩过" else "玩过的游戏" private val mExposureEventSparseArray: SparseArray = SparseArray() + private val mDownloadText by lazy { mContext.getString(R.string.download) } + private val mTryText by lazy { mContext.getString(R.string.attempt) } override fun setListData(updateData: MutableList?) { if (!updateData.isNullOrEmpty()) { @@ -139,9 +142,16 @@ open class PlayedGameAdapter(context: Context, GameDetailActivity.startGameDetailActivity(mContext, gameEntity.id, "(${mEntrance})", exposureEvent) } - val downloadBtnText = holder.binding.gameItemIncluded.downloadBtn.text - - holder.binding.uninstalledTv.visibleIf(downloadBtnText.contains("下载")) + // 很丑陋,但因为上面的下载按钮文案和状态是异步获取更新的,所以这里也只能异步更新了 :( + AppExecutor.lightWeightIoExecutor.execute { + AppExecutor.uiExecutor.execute { + tryWithDefaultCatch { + val downloadBtnText = holder.binding.gameItemIncluded.downloadBtn.text + val isDownloadable = downloadBtnText.contains(mDownloadText) || downloadBtnText.contains(mTryText) + holder.binding.uninstalledTv.visibleIf(isDownloadable) + } + } + } } is FooterViewHolder -> { holder.initItemPadding() From 50a7527e7c7abf53cce5bc63e6d3e26c0e3313e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E7=8E=89=E4=B9=85?= Date: Mon, 18 Apr 2022 10:34:22 +0800 Subject: [PATCH 08/12] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=9B=B4=E6=96=B0targe?= =?UTF-8?q?tSdk=E4=B8=BA28=E4=BB=A5=E5=90=8E=E9=80=8F=E6=98=8Eactivity?= =?UTF-8?q?=E9=85=8D=E4=B8=8Aportait=E5=9C=A8=208.0=20=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E4=B8=8A=E4=BC=9A=E9=97=AA=E9=80=80=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/AndroidManifest.xml | 1 - .../com/gh/gamecenter/qa/editor/FullScreenVideoActivity.kt | 5 +++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 244bccea53..52daee8203 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -636,7 +636,6 @@ Date: Mon, 18 Apr 2022 10:35:02 +0800 Subject: [PATCH 09/12] =?UTF-8?q?=E6=8D=95=E6=8A=93=E8=B0=83=E7=94=A8?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=20API=20=E8=8E=B7=E5=8F=96=E5=8C=85=E5=90=8D?= =?UTF-8?q?=E7=9A=84=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/gh/common/util/PackageUtils.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/gh/common/util/PackageUtils.java b/app/src/main/java/com/gh/common/util/PackageUtils.java index 567a4918d8..542f342e41 100644 --- a/app/src/main/java/com/gh/common/util/PackageUtils.java +++ b/app/src/main/java/com/gh/common/util/PackageUtils.java @@ -411,10 +411,15 @@ public class PackageUtils { } PackageManager packageManager = context.getApplicationContext().getPackageManager(); - PackageInfo info = packageManager.getPackageArchiveInfo(path, 0); - if (info != null) { - ApplicationInfo appInfo = info.applicationInfo; - return appInfo.packageName; + try { + PackageInfo info = packageManager.getPackageArchiveInfo(path, 0); + if (info != null) { + ApplicationInfo appInfo = info.applicationInfo; + return appInfo.packageName; + } + } catch (Exception e) { + e.printStackTrace(); + SentryHelper.INSTANCE.onEvent("GET_PACKAGE_INFO_ERROR", "path", path); } return null; From 33cb09e2010fc4a6bd70fa375bfc1ba975146099 Mon Sep 17 00:00:00 2001 From: leafwai Date: Mon, 18 Apr 2022 10:48:05 +0800 Subject: [PATCH 10/12] =?UTF-8?q?=E8=AF=B7=E6=B1=82=E7=99=BB=E5=BD=95dialo?= =?UTF-8?q?g=E5=A2=9E=E5=8A=A0context=E6=9C=89=E6=95=88=E6=80=A7=E5=88=A4?= =?UTF-8?q?=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/java/com/gh/common/util/QuickLoginHelper.kt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/gh/common/util/QuickLoginHelper.kt b/app/src/main/java/com/gh/common/util/QuickLoginHelper.kt index a6b30c9333..b19fb873dd 100644 --- a/app/src/main/java/com/gh/common/util/QuickLoginHelper.kt +++ b/app/src/main/java/com/gh/common/util/QuickLoginHelper.kt @@ -2,6 +2,7 @@ package com.gh.common.util import android.Manifest import android.annotation.SuppressLint +import android.app.Activity import android.app.Dialog import android.content.Context import android.content.pm.PackageManager @@ -164,8 +165,10 @@ object QuickLoginHelper { private fun loginAuth(context: Context) { runOnUiThread { - mPreDialog = Dialog(context, R.style.DialogWindowTransparent).apply { - val binding = SetWaitDialogBinding.inflate(LayoutInflater.from(context)).apply { + val dialogContext = DialogUtils.checkDialogContext(context) + if (dialogContext is Activity && dialogContext.isFinishing) return@runOnUiThread + mPreDialog = Dialog(dialogContext, R.style.DialogWindowTransparent).apply { + val binding = SetWaitDialogBinding.inflate(LayoutInflater.from(dialogContext)).apply { setWaitMessage.text = "请求登录中" } requestWindowFeature(Window.FEATURE_NO_TITLE) From 5c64deb874bf04bfc0fc6eae7d72cb1bc95973fb Mon Sep 17 00:00:00 2001 From: leafwai Date: Thu, 14 Apr 2022 20:25:11 +0800 Subject: [PATCH 11/12] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=B8=B8=E6=88=8F?= =?UTF-8?q?=E5=8A=A8=E6=80=81=E6=9F=A5=E7=9C=8B=E5=A4=A7=E5=9B=BE=E6=95=B0?= =?UTF-8?q?=E7=BB=84=E8=B6=8A=E7=95=8C=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../gh/common/util/ConcernContentUtils.java | 24 ++++++++++++------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/gh/common/util/ConcernContentUtils.java b/app/src/main/java/com/gh/common/util/ConcernContentUtils.java index 23e9d0a501..4678650207 100644 --- a/app/src/main/java/com/gh/common/util/ConcernContentUtils.java +++ b/app/src/main/java/com/gh/common/util/ConcernContentUtils.java @@ -2,7 +2,6 @@ package com.gh.common.util; import android.content.Context; import android.content.Intent; -import android.view.View; import android.widget.LinearLayout; import com.facebook.drawee.drawable.ScalingUtils; @@ -19,11 +18,9 @@ import java.util.List; **/ public class ConcernContentUtils { - private static final ArrayList imageViewList = new ArrayList<>(); - public static void addContentPic(Context context, LinearLayout linearLayout, List list, String entrance, int width) { - imageViewList.clear(); + ArrayList imageViewList = new ArrayList<>(); int count = list.size(); int index = 0; for (int i = 0, size = (int) Math.ceil(list.size() / 3.0f); i < size; i++) { @@ -36,6 +33,11 @@ public class ConcernContentUtils { for (int j = 0; j < 3; j++) { SimpleDraweeView draweeView = getImageView(context, list, entrance, index, width, 0); imageViewList.add(draweeView); + int position = index; + draweeView.setOnClickListener(v -> { + Intent checkIntent = ImageViewerActivity.getIntent(context, (ArrayList) list, position, imageViewList, entrance); + context.startActivity(checkIntent); + }); ll.addView(draweeView); index += 1; } @@ -45,6 +47,11 @@ public class ConcernContentUtils { case 1: SimpleDraweeView draweeView = getImageView(context, list, entrance, index, width, 1); imageViewList.add(draweeView); + int position1 = index; + draweeView.setOnClickListener(v -> { + Intent checkIntent = ImageViewerActivity.getIntent(context, (ArrayList) list, position1, imageViewList, entrance); + context.startActivity(checkIntent); + }); linearLayout.addView(draweeView); count -= 1; index += 1; @@ -55,6 +62,11 @@ public class ConcernContentUtils { for (int j = 0; j < 2; j++) { SimpleDraweeView imageView = getImageView(context, list, entrance, index, width, 2); imageViewList.add(imageView); + int position2 = index; + imageView.setOnClickListener(v -> { + Intent checkIntent = ImageViewerActivity.getIntent(context, (ArrayList) list, position2, imageViewList, entrance); + context.startActivity(checkIntent); + }); ll.addView(imageView); index += 1; } @@ -102,10 +114,6 @@ public class ConcernContentUtils { ScalingUtils.ScaleType.CENTER_CROP, list.get(position)); break; } - imageView.setOnClickListener(v -> { - Intent checkIntent = ImageViewerActivity.getIntent(context, (ArrayList) list, position, imageViewList, entrance); - context.startActivity(checkIntent); - }); return imageView; } From a93b49eb766b143ad7b243302dd8913fdc30e659 Mon Sep 17 00:00:00 2001 From: juntao Date: Mon, 18 Apr 2022 11:48:07 +0800 Subject: [PATCH 12/12] =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E8=87=B3=205.7.4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dependencies.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.gradle b/dependencies.gradle index 40e2ad9849..86c35bebc3 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -7,8 +7,8 @@ ext { targetSdkVersion = 28 // application info (每个大版本之间的 versionCode 增加 20) - versionCode = 494 - versionName = "5.7.3" + versionCode = 495 + versionName = "5.7.4" applicationId = "com.gh.gamecenter" // AndroidX