diff --git a/app/src/main/java/com/gh/common/databind/BindingAdapters.java b/app/src/main/java/com/gh/common/databind/BindingAdapters.java index 7341a18262..07a164a653 100644 --- a/app/src/main/java/com/gh/common/databind/BindingAdapters.java +++ b/app/src/main/java/com/gh/common/databind/BindingAdapters.java @@ -441,9 +441,9 @@ public class BindingAdapters { ApkEntity apkEntity = gameEntity.getApk().get(0); String msg = FileUtils.isCanDownload(progressBar.getContext(), apkEntity.getSize()); if (TextUtils.isEmpty(msg)) { - DataUtils.onGameDownloadEvent(progressBar.getContext(), gameEntity.getName(), apkEntity.getPlatform(), "(我的光环:我的游戏)", "下载开始"); + DataUtils.onGameDownloadEvent(progressBar.getContext(), gameEntity.getName(), apkEntity.getPlatform(), "(我的光环:我的游戏)", "下载开始", method); - ExposureEvent downloadExposureEvent = ExposureUtils.INSTANCE.logADownloadExposureEvent(gameEntity, apkEntity.getPlatform(), traceEvent, ExposureUtils.DownloadType.DOWNLOAD); + ExposureEvent downloadExposureEvent = ExposureUtils.logADownloadExposureEvent(gameEntity, apkEntity.getPlatform(), traceEvent, ExposureUtils.DownloadType.DOWNLOAD); DownloadManager.createDownload(progressBar.getContext(), apkEntity, diff --git a/app/src/main/java/com/gh/common/exposure/ExposureUtils.kt b/app/src/main/java/com/gh/common/exposure/ExposureUtils.kt index 8b1fffb11c..0b72bcc288 100644 --- a/app/src/main/java/com/gh/common/exposure/ExposureUtils.kt +++ b/app/src/main/java/com/gh/common/exposure/ExposureUtils.kt @@ -8,6 +8,7 @@ object ExposureUtils { val gson = Gson() + @JvmStatic fun logADownloadExposureEvent(entity: GameEntity, platform: String?, traceEvent: ExposureEvent?, downloadType: DownloadType): ExposureEvent { val gameEntity = entity.clone() gameEntity.platform = platform @@ -20,6 +21,7 @@ object ExposureUtils { return exposureEvent } + @JvmStatic fun logADownloadCompleteExposureEvent(entity: GameEntity, platform: String?, trace: String?, downloadType: DownloadType) { val gameEntity = entity.clone() gameEntity.platform = platform diff --git a/app/src/main/java/com/gh/common/util/DataUtils.java b/app/src/main/java/com/gh/common/util/DataUtils.java index eba8fa2403..7d373ae063 100644 --- a/app/src/main/java/com/gh/common/util/DataUtils.java +++ b/app/src/main/java/com/gh/common/util/DataUtils.java @@ -182,17 +182,20 @@ public class DataUtils { } // 游戏下载 - public static void onGameDownloadEvent(Context context, String gameName, String platform, String entrance, String status) { + public static void onGameDownloadEvent(Context context, String gameName, String platform, String entrance, String status, String method) { Map kv = new HashMap<>(); platform = PlatformUtils.getInstance(HaloApp.getInstance().getApplication()).getPlatformName(platform); kv.put("版本", platform); - kv.put("状态", status); kv.put("用户机型", Build.MODEL); kv.put("设备IMEI", Util_System_Phone_State.getDeviceId(HaloApp.getInstance().getApplication())); kv.put("网络状态", DeviceUtils.getNetwork(HaloApp.getInstance().getApplication())); kv.put("光环助手版本", BuildConfig.VERSION_NAME); + kv.put("位置", entrance); + kv.put("类型", method); + kv.put("厂商", Build.MANUFACTURER); + kv.put("Android版本", Build.VERSION.RELEASE); onEvent(context, "游戏下载", gameName, kv); Map kv2 = new HashMap<>(); 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 a3ccbe2f44..b8ff990643 100644 --- a/app/src/main/java/com/gh/common/util/DownloadItemUtils.java +++ b/app/src/main/java/com/gh/common/util/DownloadItemUtils.java @@ -413,9 +413,9 @@ public class DownloadItemUtils { @Nullable ExposureEvent traceEvent) { String msg = FileUtils.isCanDownload(context, gameEntity.getApk().get(0).getSize()); if (TextUtils.isEmpty(msg)) { - DataUtils.onGameDownloadEvent(context, gameEntity.getName(), gameEntity.getApk().get(0).getPlatform(), entrance, "下载开始"); + DataUtils.onGameDownloadEvent(context, gameEntity.getName(), gameEntity.getApk().get(0).getPlatform(), entrance, "下载开始", "下载"); - ExposureEvent downloadExposureEvent = ExposureUtils.INSTANCE.logADownloadExposureEvent(gameEntity, gameEntity.getApk().get(0).getPlatform(), traceEvent, ExposureUtils.DownloadType.DOWNLOAD); + ExposureEvent downloadExposureEvent = ExposureUtils.logADownloadExposureEvent(gameEntity, gameEntity.getApk().get(0).getPlatform(), traceEvent, ExposureUtils.DownloadType.DOWNLOAD); DownloadManager.createDownload(context, gameEntity, context.getString(R.string.download), entrance, location, downloadExposureEvent); Utils.toast(context, gameEntity.getName() + "已加入下载队列"); @@ -435,9 +435,9 @@ public class DownloadItemUtils { String location, @Nullable ExposureEvent traceEvent) { String msg = FileUtils.isCanDownload(context, gameEntity.getApk().get(0).getSize()); if (TextUtils.isEmpty(msg)) { - DataUtils.onGameDownloadEvent(context, gameEntity.getName(), gameEntity.getApk().get(0).getPlatform(), entrance, "下载开始"); + DataUtils.onGameDownloadEvent(context, gameEntity.getName(), gameEntity.getApk().get(0).getPlatform(), entrance, "下载开始", "插件化"); - ExposureEvent downloadExposureEvent = ExposureUtils.INSTANCE.logADownloadExposureEvent(gameEntity, gameEntity.getApk().get(0).getPlatform(), traceEvent, ExposureUtils.DownloadType.PLUGIN_DOWNLOAD); + ExposureEvent downloadExposureEvent = ExposureUtils.logADownloadExposureEvent(gameEntity, gameEntity.getApk().get(0).getPlatform(), traceEvent, ExposureUtils.DownloadType.PLUGIN_DOWNLOAD); DownloadManager.createDownload(context, gameEntity, "插件化", entrance, location, downloadExposureEvent); Utils.toast(context, gameEntity.getName() + "已加入下载队列"); diff --git a/app/src/main/java/com/gh/common/util/StringUtils.java b/app/src/main/java/com/gh/common/util/StringUtils.java index 47a58b67d7..68d751346a 100644 --- a/app/src/main/java/com/gh/common/util/StringUtils.java +++ b/app/src/main/java/com/gh/common/util/StringUtils.java @@ -1,5 +1,6 @@ package com.gh.common.util; +import android.text.Html; import android.text.TextUtils; /** @@ -34,7 +35,10 @@ public class StringUtils { public static String combineTwoString(String displayName, String description) { if (TextUtils.isEmpty(displayName) || TextUtils.isEmpty(description)) return ""; + displayName = Html.fromHtml(displayName).toString(); + if (displayName.length() > 30) { + displayName = displayName.substring(0, 30) + "..."; } @@ -44,7 +48,7 @@ public class StringUtils { /** * 截取字符串部分长度,超出的以 "..." 代替 * - * @param text 字符串内容 + * @param text 字符串内容 * @param maxLength 最大长度 * @return 修饰后的字符串 */ diff --git a/app/src/main/java/com/gh/gamecenter/MainActivity.java b/app/src/main/java/com/gh/gamecenter/MainActivity.java index 2deb3a1ed6..507c698492 100644 --- a/app/src/main/java/com/gh/gamecenter/MainActivity.java +++ b/app/src/main/java/com/gh/gamecenter/MainActivity.java @@ -262,6 +262,12 @@ public class MainActivity extends BaseActivity { , "网络状态", DeviceUtils.getNetwork(getApplication()) , "用户机型", Build.MODEL , "设备IMEI", Util_System_Phone_State.getDeviceId(getApplication())); + +// DataUtils.onMtaEvent( +// getApplication(), +// "解析包错误_新", +// "游戏", downloadEntity.getName() + "-" + PlatformUtils.getInstance(getApplicationContext()).getPlatformName(downloadEntity.getPlatform()) +// ); } } } @@ -308,7 +314,6 @@ public class MainActivity extends BaseActivity { DataUtils.onEvent(MainActivity.this, "游戏更新", downloadEntity.getName(), kv1); } else { type = ExposureUtils.DownloadType.DOWNLOAD; - DataUtils.onEvent(MainActivity.this, "游戏下载", downloadEntity.getName(), kv1); } Map kv2 = new HashMap<>(); @@ -328,7 +333,7 @@ public class MainActivity extends BaseActivity { DataUtils.onEvent(MainActivity.this, "插件化", downloadEntity.getName(), kv3); } - ExposureUtils.INSTANCE.logADownloadCompleteExposureEvent(new GameEntity(downloadEntity.getGameId()), downloadEntity.getPlatform(), downloadEntity.getExposureTrace(), type); + ExposureUtils.logADownloadCompleteExposureEvent(new GameEntity(downloadEntity.getGameId()), downloadEntity.getPlatform(), downloadEntity.getExposureTrace(), type); DataCollectionUtils.uploadDownload(this, downloadEntity, "完成"); } diff --git a/app/src/main/java/com/gh/gamecenter/adapter/PlatformAdapter.java b/app/src/main/java/com/gh/gamecenter/adapter/PlatformAdapter.java index 9940246fe1..3d4560aa6b 100644 --- a/app/src/main/java/com/gh/gamecenter/adapter/PlatformAdapter.java +++ b/app/src/main/java/com/gh/gamecenter/adapter/PlatformAdapter.java @@ -359,12 +359,15 @@ public class PlatformAdapter extends BaseRecyclerAdapter { String platform = PlatformUtils.getInstance(HaloApp.getInstance().getApplication()).getPlatformName(apkEntity.getPlatform()); Map kv = new HashMap<>(); - kv.put("版本", platform); - kv.put("状态", "下载开始"); + kv.put("游戏", mGameEntity.getName() + "-" + platform); kv.put("用户机型", Build.MODEL); kv.put("设备IMEI", Util_System_Phone_State.getDeviceId(HaloApp.getInstance().getApplication())); kv.put("网络状态", DeviceUtils.getNetwork(HaloApp.getInstance().getApplication())); kv.put("光环助手版本", BuildConfig.VERSION_NAME); + kv.put("位置", mEntrance); + kv.put("类型", method); + kv.put("厂商", Build.MANUFACTURER); + kv.put("Android版本", Build.VERSION.RELEASE); DataUtils.onEvent(mContext, "游戏下载", mGameEntity.getName(), kv); Map kv2 = new HashMap<>(); @@ -380,7 +383,7 @@ public class PlatformAdapter extends BaseRecyclerAdapter { kv6.put("版本", apkEntity.getPlatform()); DataUtils.onEvent(mContext, "插件化", mGameEntity.getName(), kv6); - ExposureEvent downloadExposureEvent = ExposureUtils.INSTANCE.logADownloadExposureEvent(mGameEntity, apkEntity.getPlatform(), mTraceEvent, ExposureUtils.DownloadType.PLUGIN_DOWNLOAD); + ExposureEvent downloadExposureEvent = ExposureUtils.logADownloadExposureEvent(mGameEntity, apkEntity.getPlatform(), mTraceEvent, ExposureUtils.DownloadType.PLUGIN_DOWNLOAD); DownloadManager.createDownload(mContext, apkEntity, mGameEntity, method, mEntrance, mLocation, downloadExposureEvent); // DownloadManager.getInstance(mContext).putStatus(apkEntity.getUrl(), "downloading"); @@ -444,7 +447,7 @@ public class PlatformAdapter extends BaseRecyclerAdapter { kv.put("状态", "下载开始"); DataUtils.onEvent(mContext, "游戏更新", mGameEntity.getName(), kv); - ExposureEvent downloadExposureEvent = ExposureUtils.INSTANCE.logADownloadExposureEvent(mGameEntity, apkEntity.getPlatform(), mTraceEvent, ExposureUtils.DownloadType.PLUGIN_UPDATE); + ExposureEvent downloadExposureEvent = ExposureUtils.logADownloadExposureEvent(mGameEntity, apkEntity.getPlatform(), mTraceEvent, ExposureUtils.DownloadType.PLUGIN_UPDATE); DownloadManager.createDownload(mContext, apkEntity, mGameEntity, "更新", mEntrance, mLocation, downloadExposureEvent); } 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 4a01451e00..9ee49eb71d 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 @@ -142,7 +142,11 @@ public class DetailViewHolder { ApkEntity apkEntity = mGameEntity.getApk().get(0); String msg = FileUtils.isCanDownload(mViewHolder.context, apkEntity.getSize()); if (TextUtils.isEmpty(msg)) { - DataUtils.onGameDownloadEvent(mViewHolder.context, mGameEntity.getName(), apkEntity.getPlatform(), StringUtils.buildString(mEntrance, "+(", mName, "[", mTitle, "])"), "下载开始"); + DataUtils.onGameDownloadEvent(mViewHolder.context, mGameEntity.getName(), + apkEntity.getPlatform(), + StringUtils.buildString(mEntrance, "+(", mName, "[", mTitle, "])"), + "下载开始", + method); ExposureEvent downloadExposureEvent = ExposureUtils.INSTANCE.logADownloadExposureEvent(mGameEntity, apkEntity.getPlatform(), mTraceEvent, ExposureUtils.DownloadType.DOWNLOAD); DownloadManager.createDownload(mViewHolder.context, diff --git a/app/src/main/java/com/gh/gamecenter/message/KeFuFragment.java b/app/src/main/java/com/gh/gamecenter/message/KeFuFragment.java index 1dd5b58a39..0b220b7abf 100644 --- a/app/src/main/java/com/gh/gamecenter/message/KeFuFragment.java +++ b/app/src/main/java/com/gh/gamecenter/message/KeFuFragment.java @@ -7,6 +7,7 @@ import android.support.annotation.Nullable; import android.text.TextUtils; import android.view.View; +import com.gh.common.im.ImManager; import com.gh.common.util.DirectUtils; import com.gh.common.util.EntranceUtils; import com.gh.gamecenter.GameDetailActivity; @@ -105,6 +106,9 @@ public class KeFuFragment extends ListFragment