diff --git a/app/build.gradle b/app/build.gradle
index c78be00a6d..09896467e4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -188,7 +188,8 @@ android {
buildConfigField "String", "DEV_VAPI_HOST", "\"${DEV_VAPI_HOST}\""
buildConfigField "String", "QUICK_LOGIN_APPID", "\"${DEV_QUICK_LOGIN_APPID}\""
buildConfigField "String", "QUICK_LOGIN_APPKEY", "\"${DEV_QUICK_LOGIN_APPKEY}\""
- buildConfigField "String", "CSJ_APPID", "\"${DEV_CSJ_APPID}\""
+ buildConfigField "String", "DEV_CSJ_APPID", "\"${DEV_CSJ_APPID}\""
+ buildConfigField "String", "CSJ_APPID", "\"${CSJ_APPID}\""
}
// publish, 发布时候使用的 flavor,接口仅包含正式环境
@@ -200,6 +201,7 @@ android {
buildConfigField "String", "DEV_VAPI_HOST", "\"${VAPI_HOST}\""
buildConfigField "String", "QUICK_LOGIN_APPID", "\"${QUICK_LOGIN_APPID}\""
buildConfigField "String", "QUICK_LOGIN_APPKEY", "\"${QUICK_LOGIN_APPKEY}\""
+ buildConfigField "String", "DEV_CSJ_APPID", "\"${CSJ_APPID}\""
buildConfigField "String", "CSJ_APPID", "\"${CSJ_APPID}\""
}
@@ -211,6 +213,7 @@ android {
buildConfigField "String", "DEV_VAPI_HOST", "\"${VAPI_HOST}\""
buildConfigField "String", "QUICK_LOGIN_APPID", "\"${QUICK_LOGIN_APPID}\""
buildConfigField "String", "QUICK_LOGIN_APPKEY", "\"${QUICK_LOGIN_APPKEY}\""
+ buildConfigField "String", "DEV_CSJ_APPID", "\"${CSJ_APPID}\""
buildConfigField "String", "CSJ_APPID", "\"${CSJ_APPID}\""
manifestPlaceholders.put("APPLOG_SCHEME", "rangersapplog.byAx6uYt".toLowerCase())
@@ -224,6 +227,7 @@ android {
buildConfigField "String", "DEV_VAPI_HOST", "\"${VAPI_HOST}\""
buildConfigField "String", "QUICK_LOGIN_APPID", "\"${QUICK_LOGIN_APPID}\""
buildConfigField "String", "QUICK_LOGIN_APPKEY", "\"${QUICK_LOGIN_APPKEY}\""
+ buildConfigField "String", "DEV_CSJ_APPID", "\"${CSJ_APPID}\""
buildConfigField "String", "CSJ_APPID", "\"${CSJ_APPID}\""
}
@@ -235,6 +239,7 @@ android {
buildConfigField "String", "DEV_VAPI_HOST", "\"${VAPI_HOST}\""
buildConfigField "String", "QUICK_LOGIN_APPID", "\"${QUICK_LOGIN_APPID}\""
buildConfigField "String", "QUICK_LOGIN_APPKEY", "\"${QUICK_LOGIN_APPKEY}\""
+ buildConfigField "String", "DEV_CSJ_APPID", "\"${CSJ_APPID}\""
buildConfigField "String", "CSJ_APPID", "\"${CSJ_APPID}\""
}
}
diff --git a/app/src/main/java/com/gh/ad/AdDelegateHelper.kt b/app/src/main/java/com/gh/ad/AdDelegateHelper.kt
index 5430213c98..93fe6a5550 100644
--- a/app/src/main/java/com/gh/ad/AdDelegateHelper.kt
+++ b/app/src/main/java/com/gh/ad/AdDelegateHelper.kt
@@ -87,7 +87,8 @@ object AdDelegateHelper {
if (mCsjAdImpl == null) {
mCsjAdImpl =
ARouter.getInstance().build(RouteConsts.provider.csjAd).navigation() as? ICsjAdProvider
- mCsjAdImpl?.initSDK(context, BuildConfig.CSJ_APPID, HaloApp.getInstance().oaid)
+ val csjAppId = if (EnvHelper.isDevEnv) BuildConfig.DEV_CSJ_APPID else BuildConfig.CSJ_APPID
+ mCsjAdImpl?.initSDK(context, csjAppId, HaloApp.getInstance().oaid)
// 监听亮色/暗色模式切换
DarkModeUtils.registerModeChangeListener {
val topActivity = CurrentActivityHolder.getCurrentActivity() ?: return@registerModeChangeListener
@@ -347,7 +348,9 @@ object AdDelegateHelper {
val jumpBtn: View = startAdContainer.findViewById(R.id.jumpBtn)
val jumpDetailBtn: TextView = startAdContainer.findViewById(R.id.jumpDetailBtn)
val adImage: SimpleDraweeView = startAdContainer.findViewById(R.id.adImage)
+ val icpContainer: View? = startAdContainer.findViewById(R.id.startAdIcpContainer)
startAdContainer.visibility = View.VISIBLE
+ icpContainer?.visibility = View.VISIBLE
jumpDetailBtn.text = ad.desc
jumpDetailBtn.setDrawableEnd(
AppCompatResources.getDrawable(
diff --git a/app/src/main/java/com/gh/common/provider/DirectProviderImpl.kt b/app/src/main/java/com/gh/common/provider/DirectProviderImpl.kt
index 819f2c66d2..f59ebf2a0d 100644
--- a/app/src/main/java/com/gh/common/provider/DirectProviderImpl.kt
+++ b/app/src/main/java/com/gh/common/provider/DirectProviderImpl.kt
@@ -120,6 +120,10 @@ class DirectProviderImpl : IDirectProvider {
return DirectUtils.directToQGameHome(context)
}
+ override fun directToExternalBrowser(context: Context, url: String) {
+ DirectUtils.directToExternalBrowser(context, url)
+ }
+
override fun init(context: Context?) {
// Do nothing
}
diff --git a/app/src/main/java/com/gh/common/provider/WebProviderImpl.kt b/app/src/main/java/com/gh/common/provider/WebProviderImpl.kt
index bf9f7c97ee..922040d99e 100644
--- a/app/src/main/java/com/gh/common/provider/WebProviderImpl.kt
+++ b/app/src/main/java/com/gh/common/provider/WebProviderImpl.kt
@@ -21,10 +21,6 @@ class WebProviderImpl : IWebProvider {
return WebActivity.getBindWechatIntent(context)
}
- override fun getSecurityCertificationIntent(context: Context): Intent {
- return WebActivity.getSecurityCertificationIntent(context)
- }
-
override fun getQAIntent(
context: Context?,
url: String?,
diff --git a/app/src/main/java/com/gh/gamecenter/MainActivity.java b/app/src/main/java/com/gh/gamecenter/MainActivity.java
index a4908dea29..e29db43e70 100644
--- a/app/src/main/java/com/gh/gamecenter/MainActivity.java
+++ b/app/src/main/java/com/gh/gamecenter/MainActivity.java
@@ -516,7 +516,9 @@ public class MainActivity extends BaseActivity {
FrameLayout adsFl = findViewById(R.id.adsFl);
int screenWidthInPx = DisplayUtils.getScreenWidth(this);
- int screenHeightInPx = DisplayUtils.getScreenHeight(this) + DisplayUtils.getStatusBarHeight(this.getResources());
+ int screenHeightInPx = DisplayUtils.getScreenHeight(this)
+ + DisplayUtils.getStatusBarHeight(this.getResources())
+ - ExtensionsKt.dip2px(112F);
float screenWidthInDp = DisplayUtils.px2dip(this, screenWidthInPx);
float screenHeightInDp = DisplayUtils.px2dip(this, screenHeightInPx);
@@ -584,6 +586,12 @@ public class MainActivity extends BaseActivity {
AdDelegateHelper.INSTANCE.cancelSplashAd(this);
}
+ View startSdkAdIcpContainer = findViewById(R.id.sdkStartAdIcpContainer);
+ if (startSdkAdIcpContainer != null) {
+ startSdkAdIcpContainer.setVisibility(View.GONE);
+ ExtensionsKt.removeFromParent(startSdkAdIcpContainer);
+ }
+
// 通知优先级高的弹窗可以显示了
AppExecutor.getUiExecutor().execute(() -> {
mMainWrapperFragment.showDialog();
diff --git a/app/src/main/java/com/gh/gamecenter/WebActivity.kt b/app/src/main/java/com/gh/gamecenter/WebActivity.kt
index b382cb22fd..27ab7cdf66 100644
--- a/app/src/main/java/com/gh/gamecenter/WebActivity.kt
+++ b/app/src/main/java/com/gh/gamecenter/WebActivity.kt
@@ -132,26 +132,6 @@ open class WebActivity : ToolBarActivity() {
)
}
- // 获取安全认证页
- @JvmStatic
- fun getSecurityCertificationIntent(context: Context): Intent {
- val bundle = Bundle()
- bundle.putString(
- EntranceConsts.KEY_GAMENAME,
- context.getString(R.string.comment_security_certification)
- )
- bundle.putString(
- EntranceConsts.KEY_URL,
- context.getString(R.string.comment_security_certification_url)
- )
- bundle.putBoolean(WebFragment.KEY_IS_SECURITY_CERTIFICATION, true)
- return getTargetIntent(
- context,
- WebActivity::class.java,
- WebFragment::class.java, bundle
- )
- }
-
// 获取工具箱页面
@JvmStatic
fun getWebByCollectionTools(
diff --git a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/GameDetailInfoItemAdapter.kt b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/GameDetailInfoItemAdapter.kt
index cec3eed518..ca1146da48 100644
--- a/app/src/main/java/com/gh/gamecenter/gamedetail/desc/GameDetailInfoItemAdapter.kt
+++ b/app/src/main/java/com/gh/gamecenter/gamedetail/desc/GameDetailInfoItemAdapter.kt
@@ -90,6 +90,9 @@ class GameDetailInfoItemAdapter(
if (gameInfo.recommendAge.isNotEmpty()) {
datas.add(GameInfoItemData(title = "适龄等级", info = gameInfo.recommendAge))
}
+ if (gameInfo.icp != null) {
+ datas.add(GameInfoItemData(title = "ICP备案号", info = gameInfo.icp?.number ?: ""))
+ }
if (!gameInfo.permissions.isNullOrEmpty()) {
datas.add(GameInfoItemData(title = "权限及用途", info = "查看"))
}
diff --git a/app/src/main/res/drawable-xxxhdpi/bg_splash_bottom.png b/app/src/main/res/drawable-xxxhdpi/bg_splash_bottom.png
deleted file mode 100644
index 6bd36b0a37..0000000000
Binary files a/app/src/main/res/drawable-xxxhdpi/bg_splash_bottom.png and /dev/null differ
diff --git a/app/src/main/res/drawable-xxxhdpi/bg_splash_bottom.webp b/app/src/main/res/drawable-xxxhdpi/bg_splash_bottom.webp
new file mode 100644
index 0000000000..52caa19430
Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/bg_splash_bottom.webp differ
diff --git a/app/src/main/res/drawable-xxxhdpi/ic_launcher_pack.webp b/app/src/main/res/drawable-xxxhdpi/ic_launcher_pack.webp
new file mode 100644
index 0000000000..212d8f26e5
Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/ic_launcher_pack.webp differ
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 6f351491b5..545df23248 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -1,5 +1,5 @@
-
-
-
+ app:layout_constraintTop_toTopOf="parent" />
+
+
-
+ android:layout_height="match_parent">
-
+
-
+
-
\ No newline at end of file
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/dialog_privacy_protocol_new.xml b/app/src/main/res/layout/dialog_privacy_protocol_new.xml
index dc842b1e43..06071f0fe7 100644
--- a/app/src/main/res/layout/dialog_privacy_protocol_new.xml
+++ b/app/src/main/res/layout/dialog_privacy_protocol_new.xml
@@ -82,17 +82,30 @@
android:id="@+id/descTv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_marginBottom="15dp"
+ android:layout_marginBottom="12dp"
android:includeFontPadding="false"
android:lineSpacingExtra="1.5dp"
android:text="如您同意以上内容,请点击“同意”,开始使用我们的产品和服务!"
android:textColor="@color/text_title"
android:textSize="@dimen/primary_text_size"
- app:layout_constraintBottom_toTopOf="@id/refuseTv"
+ app:layout_constraintBottom_toTopOf="@id/icpTv"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_goneMarginTop="16dp" />
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 52c1cbeddf..8dfe8c52ec 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -199,8 +199,6 @@
光环助手接入第三方SDK目录
https://resource.ghzs.com/page/third_party_sdk/index.html
光环助手评论规则
- 安全认证
- https://credit.cecdc.com/CX20190909718761807395238.html
https://resource.ghzs.com/page/rule_page/comment_rules.html
取消收藏
取消收藏失败
diff --git a/feature/floating-window/src/demo/java/com/gh/gamecenter/feedback/provider/DirectProviderImpl.kt b/feature/floating-window/src/demo/java/com/gh/gamecenter/feedback/provider/DirectProviderImpl.kt
index 4dee31f698..2e08a8ee56 100644
--- a/feature/floating-window/src/demo/java/com/gh/gamecenter/feedback/provider/DirectProviderImpl.kt
+++ b/feature/floating-window/src/demo/java/com/gh/gamecenter/feedback/provider/DirectProviderImpl.kt
@@ -121,6 +121,10 @@ class DirectProviderImpl : IDirectProvider {
ToastUtils.toast("调用->DirectProviderImpl.directToQGame")
}
+ override fun directToExternalBrowser(context: Context, url: String) {
+ ToastUtils.toast("调用->DirectProviderImpl.directToExternalBrowser")
+ }
+
override fun init(context: Context?) {
// Do nothing
}
diff --git a/feature/floating-window/src/demo/java/com/gh/gamecenter/feedback/provider/WebProviderImpl.kt b/feature/floating-window/src/demo/java/com/gh/gamecenter/feedback/provider/WebProviderImpl.kt
index bf8f5cc25a..8cc92ee74e 100644
--- a/feature/floating-window/src/demo/java/com/gh/gamecenter/feedback/provider/WebProviderImpl.kt
+++ b/feature/floating-window/src/demo/java/com/gh/gamecenter/feedback/provider/WebProviderImpl.kt
@@ -20,10 +20,6 @@ class WebProviderImpl : IWebProvider {
return null
}
- override fun getSecurityCertificationIntent(context: Context): Intent? {
- return null
- }
-
override fun getQAIntent(
context: Context?,
url: String?,
diff --git a/feature/new_feedback/src/feedback/java/com/gh/gamecenter/feedback/provider/DirectProviderImpl.kt b/feature/new_feedback/src/feedback/java/com/gh/gamecenter/feedback/provider/DirectProviderImpl.kt
index 4dee31f698..2e08a8ee56 100644
--- a/feature/new_feedback/src/feedback/java/com/gh/gamecenter/feedback/provider/DirectProviderImpl.kt
+++ b/feature/new_feedback/src/feedback/java/com/gh/gamecenter/feedback/provider/DirectProviderImpl.kt
@@ -121,6 +121,10 @@ class DirectProviderImpl : IDirectProvider {
ToastUtils.toast("调用->DirectProviderImpl.directToQGame")
}
+ override fun directToExternalBrowser(context: Context, url: String) {
+ ToastUtils.toast("调用->DirectProviderImpl.directToExternalBrowser")
+ }
+
override fun init(context: Context?) {
// Do nothing
}
diff --git a/feature/new_feedback/src/feedback/java/com/gh/gamecenter/feedback/provider/WebProviderImpl.kt b/feature/new_feedback/src/feedback/java/com/gh/gamecenter/feedback/provider/WebProviderImpl.kt
index dffea16052..f758d0c80d 100644
--- a/feature/new_feedback/src/feedback/java/com/gh/gamecenter/feedback/provider/WebProviderImpl.kt
+++ b/feature/new_feedback/src/feedback/java/com/gh/gamecenter/feedback/provider/WebProviderImpl.kt
@@ -20,10 +20,6 @@ class WebProviderImpl : IWebProvider {
return null
}
- override fun getSecurityCertificationIntent(context: Context): Intent? {
- return null
- }
-
override fun getQAIntent(
context: Context?,
url: String?,
diff --git a/module_common/src/main/java/com/gh/gamecenter/common/view/LongPressView.java b/module_common/src/main/java/com/gh/gamecenter/common/view/LongPressView.java
deleted file mode 100644
index db7afda6ed..0000000000
--- a/module_common/src/main/java/com/gh/gamecenter/common/view/LongPressView.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package com.gh.gamecenter.common.view;
-
-import android.content.Context;
-import android.content.res.TypedArray;
-import android.util.AttributeSet;
-import android.view.MotionEvent;
-import android.view.View;
-import android.view.ViewConfiguration;
-
-import androidx.annotation.Nullable;
-
-import com.gh.gamecenter.common.R;
-
-public class LongPressView extends View {
- private int mLastMotionX, mLastMotionY;
- // 是否移动了
- private boolean isMoved;
- // 是否释放了
- private boolean isReleased;
- // 计数器,防止多次点击导致最后一次形成longpress的时间变短
- private int mCounter;
- // 长按的runnable
- private Runnable mLongPressRunnable;
- // 移动的阈值
- private static final int TOUCH_SLOP = 60;
- private int longPressTimeout = ViewConfiguration.getLongPressTimeout();
-
- public LongPressView(Context context) {
- super(context);
- }
-
- public LongPressView(Context context, @Nullable AttributeSet attrs) {
- super(context, attrs);
- init(context, attrs);
- }
-
- public LongPressView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
- super(context, attrs, defStyleAttr);
- init(context, attrs);
- }
-
- private void init(Context context, AttributeSet attrs) {
- if (attrs != null) {
- TypedArray ta = context.obtainStyledAttributes(attrs, R.styleable.LongPressViewStyle);
- longPressTimeout = ta.getInteger(R.styleable.LongPressViewStyle_timeout, longPressTimeout);
- ta.recycle();
- }
- mLongPressRunnable = () -> {
- mCounter--;
- if (mCounter > 0 || isReleased || isMoved)
- return;
- performLongClick();// 回调长按事件
- };
- }
-
- public boolean dispatchTouchEvent(MotionEvent event) {
- int x = (int) event.getX();
- int y = (int) event.getY();
- switch (event.getAction()) {
- case MotionEvent.ACTION_DOWN:
- mLastMotionX = x;
- mLastMotionY = y;
- mCounter++;
- isReleased = false;
- isMoved = false;
- postDelayed(mLongPressRunnable, longPressTimeout);
- break;
- case MotionEvent.ACTION_MOVE:
- if (isMoved)
- break;
- if (Math.abs(mLastMotionX - x) > TOUCH_SLOP
- || Math.abs(mLastMotionY - y) > TOUCH_SLOP) {
- isMoved = true;
- }
- break;
- case MotionEvent.ACTION_UP:
- isReleased = true;
- break;
- }
- return true;
- }
-}
diff --git a/module_common/src/main/res/values/strings.xml b/module_common/src/main/res/values/strings.xml
index 2fd57f888b..1e0c19ce5d 100644
--- a/module_common/src/main/res/values/strings.xml
+++ b/module_common/src/main/res/values/strings.xml
@@ -46,6 +46,11 @@
隐私政策
https://resource.ghzs.com/page/privacy_policies/privacy_policies.html
+ 备案查询入口
+ https://beian.miit.gov.cn/
+ 粤ICP备17080876号-5A
+ APP备案号:粤ICP备17080876号-5A
+
加载中...
上拉加载
加载失败,点击重试
diff --git a/module_core/src/main/java/com/gh/gamecenter/core/provider/IDirectProvider.kt b/module_core/src/main/java/com/gh/gamecenter/core/provider/IDirectProvider.kt
index e9b3a578ef..72b6f1098a 100644
--- a/module_core/src/main/java/com/gh/gamecenter/core/provider/IDirectProvider.kt
+++ b/module_core/src/main/java/com/gh/gamecenter/core/provider/IDirectProvider.kt
@@ -72,4 +72,6 @@ interface IDirectProvider : IProvider {
fun directToWinOrderDetail(context: Context, orderId: String, activityId: String)
fun directToQGame(context: Context)
+
+ fun directToExternalBrowser(context: Context, url: String)
}
\ No newline at end of file
diff --git a/module_core/src/main/java/com/gh/gamecenter/core/provider/IWebProvider.kt b/module_core/src/main/java/com/gh/gamecenter/core/provider/IWebProvider.kt
index b6ec067f9b..d1bd511023 100644
--- a/module_core/src/main/java/com/gh/gamecenter/core/provider/IWebProvider.kt
+++ b/module_core/src/main/java/com/gh/gamecenter/core/provider/IWebProvider.kt
@@ -11,8 +11,6 @@ interface IWebProvider : IProvider {
fun getBindWechatIntent(context: Context): Intent?
- fun getSecurityCertificationIntent(context: Context): Intent?
-
fun getQAIntent(
context: Context?,
url: String?,
diff --git a/module_core_feature/src/main/java/com/gh/gamecenter/feature/entity/GameInfo.kt b/module_core_feature/src/main/java/com/gh/gamecenter/feature/entity/GameInfo.kt
index dbde7e7cb5..67cc8b5e06 100644
--- a/module_core_feature/src/main/java/com/gh/gamecenter/feature/entity/GameInfo.kt
+++ b/module_core_feature/src/main/java/com/gh/gamecenter/feature/entity/GameInfo.kt
@@ -31,5 +31,10 @@ class GameInfo(
var developer: String = "",//manufacturer_type 值为 manufacturer / developer,或该字段值为空时,不返回该字段
var supplier: String = "",//供应商
@SerializedName("credit_code")
- var creditCode: String = ""//统一社会信用代码
-) : Parcelable
\ No newline at end of file
+ var creditCode: String = "",//统一社会信用代码
+ @SerializedName("ICP")
+ var icp: ICP? = null, // APP 备案相关
+) : Parcelable {
+ @Parcelize
+ class ICP(val number: String): Parcelable
+}
\ No newline at end of file
diff --git a/module_feedback/src/feedback/java/com/gh/gamecenter/feedback/provider/WebProviderImpl.kt b/module_feedback/src/feedback/java/com/gh/gamecenter/feedback/provider/WebProviderImpl.kt
index bf8f5cc25a..8cc92ee74e 100644
--- a/module_feedback/src/feedback/java/com/gh/gamecenter/feedback/provider/WebProviderImpl.kt
+++ b/module_feedback/src/feedback/java/com/gh/gamecenter/feedback/provider/WebProviderImpl.kt
@@ -20,10 +20,6 @@ class WebProviderImpl : IWebProvider {
return null
}
- override fun getSecurityCertificationIntent(context: Context): Intent? {
- return null
- }
-
override fun getQAIntent(
context: Context?,
url: String?,
diff --git a/module_message/src/message/java/com/gh/gamecenter/message/provider/WebProviderImpl.kt b/module_message/src/message/java/com/gh/gamecenter/message/provider/WebProviderImpl.kt
index 2a900b57de..57c5652a59 100644
--- a/module_message/src/message/java/com/gh/gamecenter/message/provider/WebProviderImpl.kt
+++ b/module_message/src/message/java/com/gh/gamecenter/message/provider/WebProviderImpl.kt
@@ -20,10 +20,6 @@ class WebProviderImpl : IWebProvider {
return null
}
- override fun getSecurityCertificationIntent(context: Context): Intent? {
- return null
- }
-
override fun getQAIntent(
context: Context?,
url: String?,
diff --git a/module_setting/src/main/java/com/gh/gamecenter/setting/view/AboutFragment.kt b/module_setting/src/main/java/com/gh/gamecenter/setting/view/AboutFragment.kt
index 33a08bb959..e814b90ad1 100644
--- a/module_setting/src/main/java/com/gh/gamecenter/setting/view/AboutFragment.kt
+++ b/module_setting/src/main/java/com/gh/gamecenter/setting/view/AboutFragment.kt
@@ -1,17 +1,14 @@
package com.gh.gamecenter.setting.view
import android.annotation.SuppressLint
-import android.app.Activity
import android.app.ActivityManager
import android.content.Context
-import android.graphics.Color
import android.os.Build
import android.os.Bundle
import android.os.Message
import android.preference.PreferenceManager
import android.text.TextUtils
import android.view.View
-import androidx.core.content.ContextCompat
import com.alibaba.android.arouter.launcher.ARouter
import com.gh.gamecenter.common.base.fragment.ToolbarFragment
import com.gh.gamecenter.common.constant.Constants
@@ -170,22 +167,10 @@ class AboutFragment : ToolbarFragment() {
directUtils?.directDouyin(requireContext(), "1402577827140941")
}
}
- mBinding.aboutBottom.setOnLongClickListener {
- MtaHelper.onEvent("我的光环_设置", "关于光环", "底部长按")
- if (context == null) return@setOnLongClickListener true
- if (context is Activity && (context as Activity).isFinishing) return@setOnLongClickListener true
- startActivity(webActivity?.getSecurityCertificationIntent(requireContext()))
- true
- }
- mBinding.aboutTvVersion.setOnLongClickListener {
-// String tinkerId = TinkerManager.getNewTinkerId();
-// if (!TextUtils.isEmpty(tinkerId)) {
-// mVersionName.setText(("V" + PackageUtils.getVersionName() + "." + tinkerId));
-// } else {
- toastLong(R.string.toast_upload_latest)
-// }
- false
+ mBinding.icpTv.setOnClickListener {
+ val directUtils = ARouter.getInstance().build(RouteConsts.provider.directUtils).navigation() as? IDirectProvider
+ directUtils?.directToExternalBrowser(requireContext(), requireContext().getString(R.string.icp_url))
}
}
diff --git a/module_setting/src/main/res/layout/fragment_about.xml b/module_setting/src/main/res/layout/fragment_about.xml
index 4132cb728e..ee63d4bbe8 100644
--- a/module_setting/src/main/res/layout/fragment_about.xml
+++ b/module_setting/src/main/res/layout/fragment_about.xml
@@ -1,8 +1,8 @@
+ android:layout_height="wrap_content" />
+ android:layout_height="wrap_content" />
+ android:layout_height="wrap_content" />
+ android:layout_height="wrap_content" />
@@ -99,19 +99,45 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="17dp"
- android:layout_marginBottom="25dp"
android:gravity="center"
android:text="Copyright 2019 GHZhuShou Team All Rights Reserved."
android:textColor="@color/content"
android:textSize="11sp" />
-
+
-
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/module_setting/src/setting/java/com/gh/gamecenter/setting/provider/DirectProviderImpl.kt b/module_setting/src/setting/java/com/gh/gamecenter/setting/provider/DirectProviderImpl.kt
index 945f8d25b9..114597db08 100644
--- a/module_setting/src/setting/java/com/gh/gamecenter/setting/provider/DirectProviderImpl.kt
+++ b/module_setting/src/setting/java/com/gh/gamecenter/setting/provider/DirectProviderImpl.kt
@@ -121,6 +121,10 @@ class DirectProviderImpl : IDirectProvider {
ToastUtils.toast("调用->DirectProviderImpl.directToQGame")
}
+ override fun directToExternalBrowser(context: Context, url: String) {
+ ToastUtils.toast("调用->DirectProviderImpl.directToExternalBrowser")
+ }
+
override fun init(context: Context?) {
// Do nothing
}
diff --git a/module_setting/src/setting/java/com/gh/gamecenter/setting/provider/WebProviderImpl.kt b/module_setting/src/setting/java/com/gh/gamecenter/setting/provider/WebProviderImpl.kt
index c81be20cf7..3b6990e622 100644
--- a/module_setting/src/setting/java/com/gh/gamecenter/setting/provider/WebProviderImpl.kt
+++ b/module_setting/src/setting/java/com/gh/gamecenter/setting/provider/WebProviderImpl.kt
@@ -34,12 +34,6 @@ class WebProviderImpl : IWebProvider {
}
}
- override fun getSecurityCertificationIntent(context: Context): Intent? {
- return Intent(Intent.ACTION_VIEW).apply {
- data = Uri.parse(SECURITY_CERTIFICATION_URL)
- }
- }
-
override fun getQAIntent(
context: Context?,
url: String?,
@@ -63,8 +57,4 @@ class WebProviderImpl : IWebProvider {
override fun init(context: Context?) {
// Do nothing
}
-
- companion object {
- const val SECURITY_CERTIFICATION_URL = "https://credit.cecdc.com/CX20190909718761807395238.html"
- }
}
\ No newline at end of file
diff --git a/module_setting_compose/src/main/java/com/gh/gamecenter/setting/compose/activity/ComposeAboutActivity.kt b/module_setting_compose/src/main/java/com/gh/gamecenter/setting/compose/activity/ComposeAboutActivity.kt
index 81c487c737..de0846fa3f 100644
--- a/module_setting_compose/src/main/java/com/gh/gamecenter/setting/compose/activity/ComposeAboutActivity.kt
+++ b/module_setting_compose/src/main/java/com/gh/gamecenter/setting/compose/activity/ComposeAboutActivity.kt
@@ -19,6 +19,7 @@ import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
+import androidx.constraintlayout.compose.ChainStyle
import androidx.constraintlayout.compose.ConstraintLayout
import com.alibaba.android.arouter.launcher.ARouter
import com.gh.gamecenter.common.constant.EntranceConsts
@@ -184,7 +185,7 @@ class ComposeAboutActivity : ComposeBaseActivity() {
.fillMaxWidth()
.fillMaxHeight()
) {
- val (copyrightCN, copyrightEn) = createRefs()
+ val (copyrightCN, copyrightEn, icpDesc, icpHref) = createRefs()
val serverTime = PreferenceManager.getDefaultSharedPreferences(this@ComposeAboutActivity)
.getLong("server_time", 1587693163L)
val year = TimeUtils.getFormatTime(serverTime, "yyyy")
@@ -192,19 +193,55 @@ class ComposeAboutActivity : ComposeBaseActivity() {
fontSize = 11.sp,
color = HaloTheme.colors.textSubtitleDesc,
modifier = Modifier.constrainAs(copyrightEn) {
- bottom.linkTo(parent.bottom, 25.dp)
+ bottom.linkTo(icpDesc.top, 16.dp)
start.linkTo(parent.start)
end.linkTo(parent.end)
})
+
Text(text = "光环工作室 版权所有",
fontSize = 11.sp,
color = HaloTheme.colors.textSubtitleDesc,
modifier = Modifier
.constrainAs(copyrightCN) {
- bottom.linkTo(copyrightEn.top, 17.dp)
+ bottom.linkTo(copyrightEn.top, 16.dp)
start.linkTo(parent.start)
end.linkTo(parent.end)
})
+
+ Text(text = getString(R.string.icp_serial_numb_desc),
+ fontSize = 11.sp,
+ color = HaloTheme.colors.textSubtitleDesc,
+ modifier = Modifier
+ .constrainAs(icpDesc) {
+ bottom.linkTo(parent.bottom, 32.dp)
+ start.linkTo(parent.start)
+ end.linkTo(icpHref.start)
+ })
+
+ Text(text = getString(R.string.icp),
+ fontSize = 11.sp,
+ color = HaloTheme.colors.themeFont,
+ modifier = Modifier
+ .padding(start = 8.dp)
+ .constrainAs(icpHref) {
+ bottom.linkTo(parent.bottom, 32.dp)
+ start.linkTo(icpDesc.end)
+ end.linkTo(parent.end)
+ top.linkTo(icpDesc.top)
+ }
+ .clickable {
+ val directUtils =
+ ARouter
+ .getInstance()
+ .build(RouteConsts.provider.directUtils)
+ .navigation() as? IDirectProvider
+ directUtils?.directToExternalBrowser(
+ this@ComposeAboutActivity,
+ getString(R.string.icp_url)
+ )
+ })
+
+ createHorizontalChain(icpDesc, icpHref, chainStyle = ChainStyle.Packed)
}
}
}
diff --git a/module_setting_compose/src/setting/java/com/gh/gamecenter/setting/compose/provider/WebProviderImpl.kt b/module_setting_compose/src/setting/java/com/gh/gamecenter/setting/compose/provider/WebProviderImpl.kt
index 8cc1d3a4d1..983467bcfc 100644
--- a/module_setting_compose/src/setting/java/com/gh/gamecenter/setting/compose/provider/WebProviderImpl.kt
+++ b/module_setting_compose/src/setting/java/com/gh/gamecenter/setting/compose/provider/WebProviderImpl.kt
@@ -31,17 +31,7 @@ class WebProviderImpl : IWebProvider {
}
}
- override fun getSecurityCertificationIntent(context: Context): Intent? {
- return Intent(Intent.ACTION_VIEW).apply {
- data = Uri.parse(SECURITY_CERTIFICATION_URL)
- }
- }
-
override fun init(context: Context?) {
// Do nothing
}
-
- companion object {
- const val SECURITY_CERTIFICATION_URL = "https://credit.cecdc.com/CX20190909718761807395238.html"
- }
}
\ No newline at end of file