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 0545abc424..93f4bacdf7 100644 --- a/app/src/main/java/com/gh/common/util/DetailDownloadUtils.java +++ b/app/src/main/java/com/gh/common/util/DetailDownloadUtils.java @@ -67,32 +67,32 @@ public class DetailDownloadUtils { viewHolder.mDownloadPb.setDownloadType(DownloadProgressBar.DownloadType.NONE); } } - } else { + } else if (viewHolder.gameEntity.getApk().size() == 1) { String status = GameUtils.getDownloadBtnText(viewHolder.context, viewHolder.gameEntity, PluginLocation.only_game); - switch (status) { - case "插件化": - viewHolder.mDownloadPb.setDownloadType(DownloadProgressBar.DownloadType.PLUGIN); - break; - case "打开": - case "启动": - viewHolder.mDownloadPb.setDownloadType(DownloadProgressBar.DownloadType.LAUNCH_OR_OPEN); - break; - default: - viewHolder.mDownloadPb.setDownloadType(DownloadProgressBar.DownloadType.NORMAL); - break; + if (viewHolder.context.getString(R.string.pluggable).equals(status)) { + viewHolder.mDownloadPb.setDownloadType(DownloadProgressBar.DownloadType.PLUGIN); + } else if (viewHolder.context.getString(R.string.launch).equals(status)) { + viewHolder.mDownloadPb.setDownloadType(DownloadProgressBar.DownloadType.LAUNCH_OR_OPEN); + } else { + viewHolder.mDownloadPb.setDownloadType(DownloadProgressBar.DownloadType.NORMAL); } + String downloadText; if (viewHolder.isNewsDetail) { - viewHolder.mDownloadPb.setText(status); - }else if (viewHolder.gameEntity.getVersionNumber().contains("无版号")) { - viewHolder.mDownloadPb.setText(String.format(status + "(%s)", viewHolder.gameEntity.getApk().get(0).getSize())); - } else if (TextUtils.isEmpty(viewHolder.downloadAddWord)) { -// viewHolder.mDownloadPb.setText(String.format(status + "《%s》", viewHolder.gameEntity.getName())); - viewHolder.mDownloadPb.setText(String.format(status + "(%s)", viewHolder.gameEntity.getApk().get(0).getSize())); - } else { -// viewHolder.mDownloadPb.setText(String.format(status + "《%s》%s", viewHolder.gameEntity.getName(), viewHolder.downloadAddWord)); - viewHolder.mDownloadPb.setText(String.format(status + "(%s)%s", viewHolder.gameEntity.getApk().get(0).getSize(), viewHolder.downloadAddWord)); + downloadText = status; + } else if (viewHolder.context.getString(R.string.pluggable).equals(status)) { + downloadText = "升级至" + (TextUtils.isEmpty(viewHolder.downloadAddWord) ? "" : viewHolder.downloadAddWord) + getDownloadSizeText(viewHolder); + } else if (viewHolder.context.getString(R.string.launch).equals(status)) { + downloadText = status + (TextUtils.isEmpty(viewHolder.downloadAddWord) ? "" : "-" + viewHolder.downloadAddWord); + } else if (viewHolder.context.getString(R.string.attempt).equals(status)) { + downloadText = status + getDownloadSizeText(viewHolder); + } else { + downloadText = status + (TextUtils.isEmpty(viewHolder.downloadAddWord) ? "" : viewHolder.downloadAddWord) + getDownloadSizeText(viewHolder); } + viewHolder.mDownloadPb.setText(downloadText); + } else { + viewHolder.mDownloadPb.setText("选择下载你的版本" + (TextUtils.isEmpty(viewHolder.downloadAddWord) ? "" : "-" + viewHolder.downloadAddWord)); + viewHolder.mDownloadPb.setDownloadType(DownloadProgressBar.DownloadType.NORMAL); } if (isCheck && viewHolder.gameEntity.getApk().size() == 1) { String url = viewHolder.gameEntity.getApk().get(0).getUrl(); @@ -104,6 +104,10 @@ public class DetailDownloadUtils { } } + private static String getDownloadSizeText(DetailViewHolder viewHolder) { + return String.format("(%s)", viewHolder.gameEntity.getApk().get(0).getSize()); + } + public static void detailInvalidate(DetailViewHolder viewHolder) { viewHolder.mDownloadPb.setProgress((int) (viewHolder.downloadEntity.getPercent() * 10)); DownloadEntity downloadEntity = viewHolder.downloadEntity; @@ -147,6 +151,4 @@ public class DetailDownloadUtils { break; } } - - } diff --git a/app/src/main/java/com/gh/common/util/DownloadItemUtils.java b/app/src/main/java/com/gh/common/util/DownloadItemUtils.java index c6e342ba7e..0c817515cd 100644 --- a/app/src/main/java/com/gh/common/util/DownloadItemUtils.java +++ b/app/src/main/java/com/gh/common/util/DownloadItemUtils.java @@ -8,6 +8,12 @@ import android.text.TextUtils; import android.view.View; import android.widget.TextView; +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; +import androidx.collection.ArrayMap; +import androidx.core.content.ContextCompat; +import androidx.recyclerview.widget.RecyclerView; + import com.gh.common.constant.Config; import com.gh.common.dialog.DeviceRemindDialog; import com.gh.common.dialog.ReserveDialogFragment; @@ -33,12 +39,9 @@ import com.lightgame.utils.Utils; import java.util.concurrent.LinkedBlockingQueue; -import androidx.annotation.Nullable; -import androidx.appcompat.app.AppCompatActivity; -import androidx.collection.ArrayMap; -import androidx.core.content.ContextCompat; -import androidx.recyclerview.widget.RecyclerView; - +/** + * todo 下载判断不能以按钮文案为判断条件,否则按钮文案修改时又要修改判断逻辑 + */ public class DownloadItemUtils { // 更新下载进度条 @@ -509,7 +512,7 @@ public class DownloadItemUtils { }); DataLogUtils.uploadGameLog(context, gameEntity.getId(), gameEntity.getName(), entrance); - } else if (str.equals(context.getString(R.string.pluggable))) { + } else if (str.contains("化")) { if (entrance.contains("我的游戏")) { MtaHelper.onEvent("我的游戏_启动", "插件化", gameEntity.getName()); } diff --git a/app/src/main/java/com/gh/common/util/DownloadObserver.kt b/app/src/main/java/com/gh/common/util/DownloadObserver.kt index d66126550c..8ff787cc83 100644 --- a/app/src/main/java/com/gh/common/util/DownloadObserver.kt +++ b/app/src/main/java/com/gh/common/util/DownloadObserver.kt @@ -35,7 +35,7 @@ import org.json.JSONObject import java.util.* object DownloadObserver { - + private val mApplication = HaloApp.getInstance().application @JvmStatic @@ -51,7 +51,7 @@ object DownloadObserver { processHijack(downloadEntity) val nameAndPlatform = (downloadEntity.name + ":" + PlatformUtils.getInstance(mApplication).getPlatformName(downloadEntity.platform)) - MtaHelper.onEvent( "下载劫持", + MtaHelper.onEvent("下载劫持", "游戏名字", nameAndPlatform, "网络状态", DeviceUtils.getNetwork(mApplication)) return @@ -142,7 +142,7 @@ object DownloadObserver { } if (downloadEntity.status == DownloadStatus.done) { - EventBus.getDefault().post(EBDownloadStatus("done", "", "", "", "", "")) + EventBus.getDefault().post(EBDownloadStatus("done", "", "", "", downloadEntity.packageName, "")) } DownloadNotificationHelper.addOrUpdateDownloadNotification(downloadEntity) @@ -188,7 +188,7 @@ object DownloadObserver { val kv3 = HashMap() kv3["下载"] = "下载完成" kv3["版本"] = downloadEntity.platform - kv3["位置"] = downloadEntity.entrance ?: "null" + kv3["位置"] = downloadEntity.entrance ?: "null" type = ExposureUtils.DownloadType.PLUGIN_DOWNLOAD DataUtils.onEvent(mApplication, "插件化", downloadEntity.name, kv3) diff --git a/app/src/main/java/com/gh/common/util/GameUtils.java b/app/src/main/java/com/gh/common/util/GameUtils.java index 613596e68c..302ea66ff5 100644 --- a/app/src/main/java/com/gh/common/util/GameUtils.java +++ b/app/src/main/java/com/gh/common/util/GameUtils.java @@ -5,6 +5,8 @@ import android.graphics.Color; import android.text.TextUtils; import android.widget.TextView; +import androidx.core.content.ContextCompat; + import com.gh.common.constant.Config; import com.gh.download.DownloadManager; import com.gh.gamecenter.R; @@ -19,8 +21,6 @@ import com.lightgame.download.DownloadStatus; import java.util.List; -import androidx.core.content.ContextCompat; - public class GameUtils { @@ -53,9 +53,12 @@ public class GameUtils { String status = getDownloadBtnText(context, gameEntity, pluginLocation); downloadBtn.setTextColor(Color.WHITE); downloadBtn.setText(status); - if ("插件化".equals(status)) { + if (context.getString(R.string.pluggable).equals(status)) { downloadBtn.setBackgroundResource(R.drawable.game_item_btn_plugin_style); - } else if ("打开".equals(status) || "启动".equals(status)) { + String pluginDesc = gameEntity.getPluginDesc(); + if (pluginDesc.length() > 3) pluginDesc = pluginDesc.substring(0, 3); + downloadBtn.setText((pluginDesc + "化")); + } else if (context.getString(R.string.launch).equals(status) || context.getString(R.string.expand).equals(status)) { downloadBtn.setBackgroundResource(R.drawable.detail_download_open_style); downloadBtn.setTextColor(ContextCompat.getColor(context, R.color.theme_font)); } else { @@ -121,7 +124,7 @@ public class GameUtils { if (gameEntity.getApk().size() == 1) { return context.getString(R.string.launch); } else { - return context.getString(R.string.open); + return context.getString(R.string.expand); } } else if (gameEntity.getVersionNumber().contains("无版号")) { return context.getString(R.string.attempt); @@ -152,6 +155,7 @@ public class GameUtils { gameUpdateEntity.setPlugin(apkEntity.getPlugin()); gameUpdateEntity.setDownload(gameEntity.getDownload()); gameUpdateEntity.setIndexPlugin(gameEntity.getIndexPlugin()); + gameUpdateEntity.setPluginDesc(gameEntity.getPluginDesc()); return gameUpdateEntity; } 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 511724c547..88597b9278 100644 --- a/app/src/main/java/com/gh/common/util/PackageUtils.java +++ b/app/src/main/java/com/gh/common/util/PackageUtils.java @@ -14,6 +14,9 @@ import android.os.Build; import android.os.Bundle; import android.text.TextUtils; +import androidx.annotation.Nullable; +import androidx.core.content.FileProvider; + import com.g00fy2.versioncompare.Version; import com.gh.common.constant.Constants; import com.gh.gamecenter.BuildConfig; @@ -36,9 +39,6 @@ import java.security.cert.X509Certificate; import java.util.ArrayList; import java.util.List; -import androidx.annotation.Nullable; -import androidx.core.content.FileProvider; - public class PackageUtils { public static final String publicKey = "OpenSSLRSAPublicKey{modulus=a8c4bb5748fec8d5c35db1a7a182d41ba4721a91131a417330af79ef4ddb43f9fa0ff4907b0a613bfe152de0ed8fc1b2e6f94a908aa98a5f7adc1ce814ba7ec919d75d9910bdfd8649b4789da6a90ffb61f0d23ac4f828a78fcd0d6f6120c1c43c1f87f7498a89eb40ca8e32dfc2f9d5c10d612b95192870223674e241e53305abf320d7eed76ded398778576e4db7b17b3bc6a792f13de5e43a6a5fae4276c73e6990ce97f68dff0ec16fc9594f175c8d49cd0d7877340d9de60942ca0efc737e50b6c295dfe0713e4532b4e810e1ea11b702b4a27753e41559cbceb247e7f044ec4e3ab2e8bccd8b9fd71286e63307550bcde86deee95adb8133076269135b,publicExponent=10001}"; @@ -69,6 +69,7 @@ public class PackageUtils { updateEntity.setTagStyle(gameEntity.getTagStyle()); updateEntity.setDownload(gameEntity.getDownload()); updateEntity.setIndexPlugin(gameEntity.getIndexPlugin()); + updateEntity.setPluginDesc(gameEntity.getPluginDesc()); updateList.add(updateEntity); } } @@ -105,6 +106,7 @@ public class PackageUtils { updateEntity.setTag(gameEntity.getTag()); updateEntity.setTagStyle(gameEntity.getTagStyle()); updateEntity.setIndexPlugin(gameEntity.getIndexPlugin()); + updateEntity.setPluginDesc(gameEntity.getPluginDesc()); updateList.add(updateEntity); } } diff --git a/app/src/main/java/com/gh/download/dialog/DownloadDialog.kt b/app/src/main/java/com/gh/download/dialog/DownloadDialog.kt index 01601ba0ad..a74545e58c 100644 --- a/app/src/main/java/com/gh/download/dialog/DownloadDialog.kt +++ b/app/src/main/java/com/gh/download/dialog/DownloadDialog.kt @@ -106,7 +106,7 @@ class DownloadDialog : BaseDialogFragment(), View.OnTouchListener { collectionEnterAnimation() } else { - mBinding.title.text = mGameEntity.downloadDialogTitle + mBinding.title.text = mGameEntity.pluginDesc mCollectionAdapter = null collectionExitAnimation() @@ -117,7 +117,7 @@ class DownloadDialog : BaseDialogFragment(), View.OnTouchListener { @SuppressLint("ClickableViewAccessibility") override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { mBinding = DataBindingUtil.inflate(inflater, R.layout.dialog_download, container, false) - mBinding.title.text = mGameEntity.downloadDialogTitle + mBinding.title.text = mGameEntity.pluginDesc val downloadNotice = mGameEntity.downloadAd if (downloadNotice != null) { diff --git a/app/src/main/java/com/gh/download/dialog/DownloadDialogInstalledItemViewHolder.kt b/app/src/main/java/com/gh/download/dialog/DownloadDialogInstalledItemViewHolder.kt index 29adce7bbf..68731a5825 100644 --- a/app/src/main/java/com/gh/download/dialog/DownloadDialogInstalledItemViewHolder.kt +++ b/app/src/main/java/com/gh/download/dialog/DownloadDialogInstalledItemViewHolder.kt @@ -40,6 +40,8 @@ class DownloadDialogInstalledItemViewHolder(val binding: DownloadDialogInstalled } else "查看详情" itemView.setTag(DownloadDialogAdapter.ITEM_TAG_KEY, DownloadDialogItemStatus.COLLECTION) } else { + binding.collection.visibility = View.GONE + val downloadEntity = DownloadManager.getInstance(HaloApp.getInstance().application).getDownloadEntityByUrl(apkEntity.url) if (downloadEntity != null) { binding.downloadStatusIcon.visibility = View.VISIBLE diff --git a/app/src/main/java/com/gh/gamecenter/download/GameUpdateFragment.java b/app/src/main/java/com/gh/gamecenter/download/GameUpdateFragment.java index 02c84c9392..b22465c063 100644 --- a/app/src/main/java/com/gh/gamecenter/download/GameUpdateFragment.java +++ b/app/src/main/java/com/gh/gamecenter/download/GameUpdateFragment.java @@ -6,6 +6,11 @@ import android.view.View; import android.widget.LinearLayout; import android.widget.TextView; +import androidx.annotation.Nullable; +import androidx.lifecycle.ViewModelProviders; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + import com.gh.base.fragment.BaseFragment; import com.gh.common.exposure.ExposureListener; import com.gh.common.util.EntranceUtils; @@ -21,10 +26,6 @@ import org.greenrobot.eventbus.ThreadMode; import java.util.ArrayList; -import androidx.annotation.Nullable; -import androidx.lifecycle.ViewModelProviders; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; import butterknife.BindView; /** @@ -48,7 +49,7 @@ public class GameUpdateFragment extends BaseFragment { private PackageViewModel mPackageViewModel; private GameUpdateFragmentAdapter mAdapter; - + private ExposureListener mExposureListener; @Override @@ -87,7 +88,9 @@ public class GameUpdateFragment extends BaseFragment { @Subscribe(threadMode = ThreadMode.MAIN) public void onEventMainThread(EBDownloadStatus status) { - if ("delete".equals(status.getStatus()) || "download".equals(status.getStatus())) { + if ("delete".equals(status.getStatus()) + || "download".equals(status.getStatus()) + || "done".equals(status.getStatus())) { ArrayList locationList = mAdapter.getLocationMap().get(status.getPackageName()); if (locationList != null) { for (int location : locationList) { diff --git a/app/src/main/java/com/gh/gamecenter/download/GameUpdateFragmentAdapter.java b/app/src/main/java/com/gh/gamecenter/download/GameUpdateFragmentAdapter.java index dbf9820ad7..6dbfef1cba 100644 --- a/app/src/main/java/com/gh/gamecenter/download/GameUpdateFragmentAdapter.java +++ b/app/src/main/java/com/gh/gamecenter/download/GameUpdateFragmentAdapter.java @@ -8,6 +8,11 @@ import android.view.View; import android.view.ViewGroup; import android.widget.LinearLayout; +import androidx.collection.ArrayMap; +import androidx.core.content.ContextCompat; +import androidx.recyclerview.widget.RecyclerView; +import androidx.recyclerview.widget.RecyclerView.ViewHolder; + import com.gh.common.AppExecutor; import com.gh.common.exposure.ExposureEvent; import com.gh.common.exposure.ExposureSource; @@ -59,10 +64,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import androidx.collection.ArrayMap; -import androidx.core.content.ContextCompat; -import androidx.recyclerview.widget.RecyclerView; -import androidx.recyclerview.widget.RecyclerView.ViewHolder; import io.reactivex.Observable; import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.schedulers.Schedulers; @@ -97,9 +98,9 @@ class GameUpdateFragmentAdapter extends BaseRecyclerAdapter implemen locationMap = new ArrayMap<>(); updateList = new ArrayList<>(); - + mExposureSource = new ArrayList<>(); - mExposureSource.add(new ExposureSource("下载管理","")); + mExposureSource.add(new ExposureSource("下载管理", "")); mExposureSource.add(new ExposureSource("游戏更新", "")); } @@ -272,7 +273,7 @@ class GameUpdateFragmentAdapter extends BaseRecyclerAdapter implemen viewHolder.dm_item_head_tv_allstart.setOnClickListener(v -> { String str = viewHolder.dm_item_head_tv_allstart.getText().toString(); if ("全部更新".equals(str)) { - MtaHelper.onEvent( "下载管理", "游戏更新", str); + MtaHelper.onEvent("下载管理", "游戏更新", str); if (NetworkUtils.isWifiConnected(mContext)) { viewHolder.dm_item_head_tv_allstart.setText(R.string.updating); for (int i = 0; i < updateList.size(); i++) { @@ -368,9 +369,10 @@ class GameUpdateFragmentAdapter extends BaseRecyclerAdapter implemen } else if (mContext.getString(R.string.updating).equals(str) || "插件化中".equals(str)) { notifyItemChanged(0); EventBus.getDefault().post(new EBSkip(DownloadManagerActivity.TAG, DownloadManagerActivity.INDEX_DOWNLOAD)); + } else if (mContext.getString(R.string.install).equals(str)) { + PackageUtils.launchSetup(mContext, DownloadManager.getInstance(mContext).getDownloadEntityByUrl(updateEntity.getUrl())); } - - MtaHelper.onEvent( "下载管理", "游戏更新", str); + MtaHelper.onEvent("下载管理", "游戏更新", str); }); DownloadEntity downloadEntity = DownloadManager.getInstance(mContext).getDownloadEntityByUrl(updateEntity.getUrl()); @@ -399,15 +401,27 @@ class GameUpdateFragmentAdapter extends BaseRecyclerAdapter implemen } } else { if (updateEntity.isPluggable()) { - viewHolder.guUpdate.setText("插件化中"); - viewHolder.guUpdate.setTextColor( - ContextCompat.getColorStateList(mContext, R.color.text_plugining_style)); - viewHolder.guUpdate.setBackgroundResource(R.drawable.game_item_btn_plugining_style); + if (downloadEntity.getStatus() == DownloadStatus.done) { + viewHolder.guUpdate.setText(R.string.install); + viewHolder.guUpdate.setTextColor(Color.WHITE); + viewHolder.guUpdate.setBackgroundResource(R.drawable.game_item_btn_plugin_style); + } else { + viewHolder.guUpdate.setText("插件化中"); + viewHolder.guUpdate.setTextColor( + ContextCompat.getColorStateList(mContext, R.color.text_plugining_style)); + viewHolder.guUpdate.setBackgroundResource(R.drawable.game_item_btn_plugining_style); + } } else { - viewHolder.guUpdate.setText(R.string.updating); - viewHolder.guUpdate.setTextColor( - ContextCompat.getColorStateList(mContext, R.color.text_downloading_style)); - viewHolder.guUpdate.setBackgroundResource(R.drawable.game_item_btn_downloading_style); + if (downloadEntity.getStatus() == DownloadStatus.done) { + viewHolder.guUpdate.setText(R.string.install); + viewHolder.guUpdate.setTextColor(Color.WHITE); + viewHolder.guUpdate.setBackgroundResource(R.drawable.game_item_btn_download_style); + } else { + viewHolder.guUpdate.setText(R.string.updating); + viewHolder.guUpdate.setTextColor( + ContextCompat.getColorStateList(mContext, R.color.text_downloading_style)); + viewHolder.guUpdate.setBackgroundResource(R.drawable.game_item_btn_downloading_style); + } } } @@ -427,16 +441,16 @@ class GameUpdateFragmentAdapter extends BaseRecyclerAdapter implemen }); mPackageName = null; } - + generateExposureEvent(updateEntity); } } - + private void generateExposureEvent(GameUpdateEntity updateEntity) { ExposureEvent event = ExposureEvent.createEvent(updateEntity.transformGameEntity(), mExposureSource, null, ExposureType.EXPOSURE); updateEntity.setExposureEvent(event); } - + @Override public int getItemViewType(int position) { if (position == 0) { @@ -474,7 +488,7 @@ class GameUpdateFragmentAdapter extends BaseRecyclerAdapter implemen GameUpdateEntity updateEntity = updateList.get(position); ExposureUtils.DownloadType downloadType; - + Map kv = new HashMap<>(); kv.put("版本", updateEntity.getPlatform()); kv.put("状态", "下载开始"); @@ -502,7 +516,7 @@ class GameUpdateFragmentAdapter extends BaseRecyclerAdapter implemen } else { downloadEntity.setUpdate(true); } - + // 确定下载类型 if (downloadEntity.isPluggable()) { downloadType = ExposureUtils.DownloadType.PLUGIN_DOWNLOAD; @@ -511,10 +525,10 @@ class GameUpdateFragmentAdapter extends BaseRecyclerAdapter implemen } else { downloadType = ExposureUtils.DownloadType.UPDATE; } - + ExposureEvent event = ExposureUtils.logADownloadExposureEvent(new GameEntity(updateEntity.getId(), updateEntity - .getName()), updateEntity.getPlatform(), updateEntity.getExposureEvent(), downloadType); - + .getName()), updateEntity.getPlatform(), updateEntity.getExposureEvent(), downloadType); + downloadEntity.setExposureTrace(GsonUtils.toJson(event)); downloadEntity.setEntrance(entrance + "+(下载管理:游戏更新)"); @@ -541,13 +555,13 @@ class GameUpdateFragmentAdapter extends BaseRecyclerAdapter implemen public ArrayMap> getLocationMap() { return locationMap; } - + @Nullable @Override public ExposureEvent getEventByPosition(int pos) { return updateList.get(pos).getExposureEvent(); } - + @Nullable @Override public List getEventListByPosition(int pos) { diff --git a/app/src/main/java/com/gh/gamecenter/entity/GameEntity.kt b/app/src/main/java/com/gh/gamecenter/entity/GameEntity.kt index 1e78d5dd37..c1b06edc9a 100644 --- a/app/src/main/java/com/gh/gamecenter/entity/GameEntity.kt +++ b/app/src/main/java/com/gh/gamecenter/entity/GameEntity.kt @@ -171,7 +171,7 @@ data class GameEntity( @SerializedName("plugin_link") val pluginLink: List = arrayListOf(), @SerializedName("p_button_add_word") - val downloadDialogTitle: String = "" + var pluginDesc: String = "" //插件功能描述 ) : Parcelable { @IgnoredOnParcel diff --git a/app/src/main/java/com/gh/gamecenter/entity/GameUpdateEntity.kt b/app/src/main/java/com/gh/gamecenter/entity/GameUpdateEntity.kt index 7f2b280baf..38e4f9ae7f 100644 --- a/app/src/main/java/com/gh/gamecenter/entity/GameUpdateEntity.kt +++ b/app/src/main/java/com/gh/gamecenter/entity/GameUpdateEntity.kt @@ -28,7 +28,10 @@ data class GameUpdateEntity( @SerializedName("index_plugin") var indexPlugin: String = "open", var exposureEvent: ExposureEvent? = null, - var download: Int = 0/*7天下载量*/) { + var download: Int = 0/*7天下载量*/, + @SerializedName("p_button_add_word") + var pluginDesc: String = "" //插件功能描述 +) { fun isShowPlugin(location: PluginLocation): Boolean { if (plugin.isNullOrEmpty() || "open" == plugin || plugin == location.name) { @@ -39,7 +42,7 @@ data class GameUpdateEntity( fun transformGameEntity(): GameEntity { val gameEntity = GameEntity() - gameEntity.id = id ?: "" + gameEntity.id = id gameEntity.name = name gameEntity.icon = icon gameEntity.setTag(tag) @@ -48,6 +51,7 @@ data class GameUpdateEntity( gameEntity.download = download gameEntity.isPluggable = true gameEntity.indexPlugin = indexPlugin + gameEntity.pluginDesc = pluginDesc val apkEntity = ApkEntity() apkEntity.url = url diff --git a/app/src/main/res/layout/dialog_download.xml b/app/src/main/res/layout/dialog_download.xml index 41b2ee15b7..dff4a07f07 100644 --- a/app/src/main/res/layout/dialog_download.xml +++ b/app/src/main/res/layout/dialog_download.xml @@ -8,7 +8,7 @@ diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index bf2fd24f9a..ce7ab77119 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -342,6 +342,7 @@ 等待中 打开 试玩 + 展开 已淘号:%1$s]]> 已领取:%1$s]]>