Merge branch 'fix-GHZS-1629' into 'dev'
fix: 神策数据埋点第一期--光环助手(修复部分上报数据不准确的问题) https://jira.shanqu.cc/browse/GHZS-1629 See merge request halo/android/assistant-android!820
This commit is contained in:
@ -1063,7 +1063,7 @@ object DownloadItemUtils {
|
||||
"DownLoadbuttonClick",
|
||||
"game_id", gameEntity.id,
|
||||
"game_name", gameEntity.name ?: "",
|
||||
"game_type", gameEntity.gameType,
|
||||
"game_type", gameEntity.category ?: "",
|
||||
"download_status", gameEntity.downloadStatusChinese ?: "",
|
||||
"button_name", buttonName,
|
||||
"page_name", GlobalActivityManager.getCurrentPageEntity().pageName,
|
||||
|
||||
@ -306,7 +306,7 @@ public class LibaoUtils {
|
||||
|
||||
public static void initLibaoBtn(final Context context, final TextView libaoBtn, final LibaoEntity libaoEntity,
|
||||
final boolean isInstallRequired, final LibaoDetailAdapter adapter, boolean shouldUpdateStatus,
|
||||
final String entrance, final OnLibaoStatusChangeListener listener) {
|
||||
final String entrance, final String sourceEntrance, final OnLibaoStatusChangeListener listener) {
|
||||
setLiBaoBtnStatusRound(libaoBtn, libaoEntity, shouldUpdateStatus, context);
|
||||
String status = libaoEntity.getStatus();
|
||||
|
||||
@ -407,7 +407,7 @@ public class LibaoUtils {
|
||||
if ("repeatLing".equals(status)) {
|
||||
ToastUtils.showToast("礼包每天0点刷新,明日0点后可再领一个");
|
||||
} else {
|
||||
libaoLing(context, libaoBtn, libaoEntity, adapter, isInstallRequired, null, entrance, listener);
|
||||
libaoLing(context, libaoBtn, libaoEntity, adapter, isInstallRequired, null, entrance, sourceEntrance, listener);
|
||||
}
|
||||
SensorsBridge.trackEvent("GameGiftDraw",
|
||||
"gift_type", "普通礼包",
|
||||
@ -415,20 +415,20 @@ public class LibaoUtils {
|
||||
"game_id", libaoEntity.getGame().getId(),
|
||||
"gift_id", libaoEntity.getId(),
|
||||
"gift_name", libaoEntity.getName(),
|
||||
"source_entrance", entrance
|
||||
"source_entrance", sourceEntrance
|
||||
);
|
||||
break;
|
||||
case "再淘":
|
||||
case "再淘一个":
|
||||
case "淘号":
|
||||
libaoTao(context, libaoBtn, libaoEntity, isInstallRequired, adapter, status, entrance, listener);
|
||||
libaoTao(context, libaoBtn, libaoEntity, isInstallRequired, adapter, status, entrance, sourceEntrance, listener);
|
||||
SensorsBridge.trackEvent("GameGiftDraw",
|
||||
"gift_type", "淘号礼包",
|
||||
"game_name", libaoEntity.getGame().getName(),
|
||||
"game_id", libaoEntity.getGame().getId(),
|
||||
"gift_id", libaoEntity.getId(),
|
||||
"gift_name", libaoEntity.getName(),
|
||||
"source_entrance", entrance
|
||||
"source_entrance", sourceEntrance
|
||||
);
|
||||
break;
|
||||
}
|
||||
@ -437,7 +437,7 @@ public class LibaoUtils {
|
||||
}
|
||||
|
||||
private static void libaoTao(Context context, TextView libaoBtn, LibaoEntity libaoEntity, boolean isInstallRequired, LibaoDetailAdapter adapter,
|
||||
String status, String entrance, final OnLibaoStatusChangeListener listener) {
|
||||
String status, String entrance, String sourceEntrance, final OnLibaoStatusChangeListener listener) {
|
||||
if ("repeatTao".equals(status)) {
|
||||
Utils.toast(context, "没到重复淘号时间, 礼包每天0点刷新");
|
||||
return;
|
||||
@ -500,7 +500,7 @@ public class LibaoUtils {
|
||||
"game_id", libaoEntity.getGame().getId(),
|
||||
"gift_id", libaoEntity.getId(),
|
||||
"gift_name", libaoEntity.getName(),
|
||||
"source_entrance", entrance
|
||||
"source_entrance", sourceEntrance
|
||||
);
|
||||
}
|
||||
|
||||
@ -568,14 +568,14 @@ public class LibaoUtils {
|
||||
"game_id", libaoEntity.getGame().getId(),
|
||||
"gift_id", libaoEntity.getId(),
|
||||
"gift_name", libaoEntity.getName(),
|
||||
"source_entrance", entrance
|
||||
"source_entrance", sourceEntrance
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private static void libaoLing(final Context context, TextView libaoBtn, final LibaoEntity libaoEntity, final LibaoDetailAdapter adapter,
|
||||
final boolean isInstallRequired, String captchaCode, final String entrance, final OnLibaoStatusChangeListener listener) {
|
||||
final boolean isInstallRequired, String captchaCode, final String entrance, final String sourceEntrance, final OnLibaoStatusChangeListener listener) {
|
||||
|
||||
if (BuildConfig.DEBUG) {
|
||||
if (libaoBtn != null) {
|
||||
@ -613,7 +613,7 @@ public class LibaoUtils {
|
||||
"game_id", libaoEntity.getGame().getId(),
|
||||
"gift_id", libaoEntity.getId(),
|
||||
"gift_name", libaoEntity.getName(),
|
||||
"source_entrance", entrance
|
||||
"source_entrance", sourceEntrance
|
||||
);
|
||||
return;
|
||||
}
|
||||
@ -649,7 +649,7 @@ public class LibaoUtils {
|
||||
"game_id", libaoEntity.getGame().getId(),
|
||||
"gift_id", libaoEntity.getId(),
|
||||
"gift_name", libaoEntity.getName(),
|
||||
"source_entrance", entrance
|
||||
"source_entrance", sourceEntrance
|
||||
);
|
||||
}
|
||||
|
||||
@ -696,7 +696,7 @@ public class LibaoUtils {
|
||||
}, false, "", "");
|
||||
libaoEntity.setStatus("used_up");
|
||||
if (libaoBtn != null) {
|
||||
initLibaoBtn(context, libaoBtn, libaoEntity, isInstallRequired, adapter, false, entrance, listener);
|
||||
initLibaoBtn(context, libaoBtn, libaoEntity, isInstallRequired, adapter, false, entrance, sourceEntrance, listener);
|
||||
}
|
||||
break;
|
||||
case "maintaining":
|
||||
@ -714,7 +714,7 @@ public class LibaoUtils {
|
||||
} else if (exception.code() == 412) {
|
||||
// 需要验证
|
||||
GeetestUtils.getInstance().showDialog(context, captcha ->
|
||||
libaoLing(context, libaoBtn, libaoEntity, adapter, isInstallRequired, captcha, entrance, listener));
|
||||
libaoLing(context, libaoBtn, libaoEntity, adapter, isInstallRequired, captcha, entrance, sourceEntrance, listener));
|
||||
return;
|
||||
} else if (exception.code() == 401) {
|
||||
return;
|
||||
@ -728,7 +728,7 @@ public class LibaoUtils {
|
||||
"game_id", libaoEntity.getGame().getId(),
|
||||
"gift_id", libaoEntity.getId(),
|
||||
"gift_name", libaoEntity.getName(),
|
||||
"source_entrance", entrance
|
||||
"source_entrance", sourceEntrance
|
||||
);
|
||||
}
|
||||
}, captchaCode);
|
||||
|
||||
@ -328,7 +328,7 @@ public class DownloadManager implements DownloadStatusListener {
|
||||
ExtensionsKt.addMetaExtra(downloadEntity, Constants.GAME_ICON_SUBSCRIPT, gameEntity.getIconSubscript());
|
||||
ExtensionsKt.addMetaExtra(downloadEntity, Constants.IS_PLATFORM_RECOMMEND, apkEntity.getRecommend() != null ? "true" : "false");
|
||||
ExtensionsKt.addMetaExtra(downloadEntity, Constants.GAME_NAME, gameEntity.getName());
|
||||
ExtensionsKt.addMetaExtra(downloadEntity, Constants.GAME_TYPE, gameEntity.getGameType());
|
||||
ExtensionsKt.addMetaExtra(downloadEntity, Constants.GAME_TYPE, gameEntity.getCategory());
|
||||
ExtensionsKt.addMetaExtra(downloadEntity, Constants.AD_ICON_ACTIVE, String.valueOf(gameEntity.getAdIconActive()));
|
||||
ExtensionsKt.addMetaExtra(downloadEntity, Constants.IS_AD_DATA, String.valueOf(gameEntity.isAdData()));
|
||||
if (gameEntity.getIconFloat() != null) {
|
||||
@ -380,7 +380,7 @@ public class DownloadManager implements DownloadStatusListener {
|
||||
SensorsBridge.trackEvent("DownloadProcessBegin",
|
||||
"game_id", gameEntity.getId(),
|
||||
"game_name", gameEntity.getName(),
|
||||
"game_type", gameEntity.getGameType(),
|
||||
"game_type", gameEntity.getCategory(),
|
||||
"page_name", GlobalActivityManager.getCurrentPageEntity().getPageName(),
|
||||
"page_id", GlobalActivityManager.getCurrentPageEntity().getPageId(),
|
||||
"page_business_id", GlobalActivityManager.getCurrentPageEntity().getPageBusinessId(),
|
||||
|
||||
@ -298,11 +298,18 @@ open class SearchActivity : BaseActivity() {
|
||||
private const val HINT_TEXT = "搜索游戏..."
|
||||
|
||||
@JvmStatic
|
||||
fun getIntent(context: Context, searchImmediately: Boolean, hint: String, entrance: String): Intent {
|
||||
fun getIntent(
|
||||
context: Context,
|
||||
searchImmediately: Boolean,
|
||||
hint: String,
|
||||
entrance: String,
|
||||
sourceEntrance: String
|
||||
): Intent {
|
||||
val intent = Intent(context, SearchActivity::class.java)
|
||||
intent.putExtra(KEY_SEARCH_IMMEDIATELY, searchImmediately)
|
||||
intent.putExtra(EntranceConsts.KEY_HINT, hint)
|
||||
intent.putExtra(EntranceConsts.KEY_ENTRANCE, entrance)
|
||||
intent.putExtra(EntranceConsts.KEY_SOURCE_ENTRANCE, sourceEntrance)
|
||||
return intent
|
||||
}
|
||||
}
|
||||
|
||||
@ -245,7 +245,7 @@ public class LibaoDetailAdapter extends BaseRecyclerAdapter<ViewHolder> {
|
||||
List<UserDataLibaoEntity> userDataLibaoList = mLibaoEntity.getMe().getUserDataLibaoList();
|
||||
LibaoUtils.initLibaoBtn(mContext, holder.binding.libaodetailCopyBtn, mLibaoEntity,
|
||||
mLibaoDetailEntity.getInstallRequired(), this, false,
|
||||
StringUtils.buildString(mEntrance, "+(礼包详情[", mLibaoEntity.getName(), "])"), null);
|
||||
StringUtils.buildString(mEntrance, "+(礼包详情[", mLibaoEntity.getName(), "])"), "礼包详情", null);
|
||||
if (mLibaoEntity.getUniversal()) {
|
||||
holder.binding.libaodetailDes.setVisibility(View.GONE);
|
||||
} else {
|
||||
@ -285,7 +285,7 @@ public class LibaoDetailAdapter extends BaseRecyclerAdapter<ViewHolder> {
|
||||
if (mLibaoEntity.getStatus() != null && mLibaoDetailEntity != null) {
|
||||
LibaoUtils.initLibaoBtn(mContext, holder.binding.libaodetailCopyBtn, mLibaoEntity,
|
||||
mLibaoDetailEntity.getInstallRequired(), this, false,
|
||||
StringUtils.buildString(mEntrance, "+(礼包详情[", mLibaoEntity.getName(), "])"), null);
|
||||
StringUtils.buildString(mEntrance, "+(礼包详情[", mLibaoEntity.getName(), "])"), "礼包详情", null);
|
||||
}
|
||||
|
||||
// 判断按钮状态是否为空(礼包详情进入),重新获取
|
||||
|
||||
@ -164,7 +164,7 @@ public class DetailViewHolder {
|
||||
"DownLoadbuttonClick",
|
||||
"game_id", mGameEntity.getId(),
|
||||
"game_name", mGameEntity.getName(),
|
||||
"game_type", mGameEntity.getGameType(),
|
||||
"game_type", mGameEntity.getCategory(),
|
||||
"download_status", mGameEntity.getDownloadStatusChinese(),
|
||||
"button_name", mViewHolder.mDownloadPb.getText(),
|
||||
"page_name", GlobalActivityManager.getCurrentPageEntity().getPageName(),
|
||||
|
||||
@ -206,6 +206,7 @@ class CategoryV2Fragment : LazyFragment() {
|
||||
requireContext(),
|
||||
false,
|
||||
"",
|
||||
"新分类2.0",
|
||||
"新分类2.0"
|
||||
)
|
||||
startActivity(intent)
|
||||
|
||||
@ -284,7 +284,7 @@ public class SearchToolbarFragment extends BaseLazyFragment implements View.OnCl
|
||||
MtaHelper.onEvent("首页_点击", "顶栏", "搜索");
|
||||
DataCollectionUtils.uploadClick(getActivity(), "搜索图标", "主页");
|
||||
|
||||
intent = SearchActivity.getIntent(requireContext(), true, mSearchHintTv.getHint().toString(), "(工具栏)");
|
||||
intent = SearchActivity.getIntent(requireContext(), true, mSearchHintTv.getHint().toString(), "(工具栏)", mLocation);
|
||||
startActivity(intent);
|
||||
} else if (id == R.id.actionbar_search_input || id == R.id.actionbar_search_rl || id == R.id.actionbar_search_right) {
|
||||
MtaHelper.onEvent("首页_点击", "顶栏", "搜索");
|
||||
@ -293,7 +293,7 @@ public class SearchToolbarFragment extends BaseLazyFragment implements View.OnCl
|
||||
LogUtils.uploadSearchGame("access_to_search", mLocation, "", "");
|
||||
}
|
||||
|
||||
intent = SearchActivity.getIntent(requireContext(), false, mSearchHintTv.getHint().toString(), "(工具栏)");
|
||||
intent = SearchActivity.getIntent(requireContext(), false, mSearchHintTv.getHint().toString(), "(工具栏)", mLocation);
|
||||
startActivity(intent);
|
||||
} else if (id == R.id.actionbar_notification) {
|
||||
MtaHelper.onEvent("首页_点击", "顶栏", "消息中心");
|
||||
|
||||
@ -382,7 +382,7 @@ class GameDetailFragment : ToolbarFragment(), IScrollable {
|
||||
|
||||
R.id.menu_search -> {
|
||||
LogUtils.uploadSearchGame("access_to_search", "游戏详情", "", "")
|
||||
val intent = SearchActivity.getIntent(requireContext(), false, "", "游戏详情")
|
||||
val intent = SearchActivity.getIntent(requireContext(), false, "", "游戏详情", "游戏详情")
|
||||
startActivity(intent)
|
||||
}
|
||||
}
|
||||
@ -726,7 +726,7 @@ class GameDetailFragment : ToolbarFragment(), IScrollable {
|
||||
"game_name", mGameEntity?.name ?: "",
|
||||
"download_status", mGameEntity?.downloadStatusChinese ?: "",
|
||||
"cloud_save_tab_status", if (data.showArchive) "开启" else "关闭",
|
||||
"game_type", mGameEntity?.gameType ?: "",
|
||||
"game_type", mGameEntity?.category ?: "",
|
||||
"page_name", getCurrentPageEntity().pageName,
|
||||
"page_id", getCurrentPageEntity().pageId,
|
||||
"page_business_id", getCurrentPageEntity().pageBusinessId,
|
||||
|
||||
@ -162,7 +162,16 @@ class GameLibaoAdapter(
|
||||
}
|
||||
|
||||
// LibaoUtils.setLiBaoBtnStatusRound(holder.binding.receiveTv, libaoEntity,true, context)
|
||||
LibaoUtils.initLibaoBtn(context, holder.binding.receiveTv, libaoEntity, false, null, true, "游戏详情") {
|
||||
LibaoUtils.initLibaoBtn(
|
||||
context,
|
||||
holder.binding.receiveTv,
|
||||
libaoEntity,
|
||||
false,
|
||||
null,
|
||||
true,
|
||||
"游戏详情",
|
||||
"游戏详情"
|
||||
) {
|
||||
notifyItemChanged(position)
|
||||
}
|
||||
if (!libaoEntity.packageName.isNullOrEmpty()) {
|
||||
|
||||
@ -224,7 +224,7 @@ class Libao2FragmentAdapter extends BaseRecyclerAdapter<ViewHolder> {
|
||||
holder.binding.libaoDes.setText(content);
|
||||
|
||||
if (libaoEntity.getStatus() != null) {
|
||||
LibaoUtils.initLibaoBtn(mContext, holder.binding.libaoBtnStatus, libaoEntity, false, null, true, mEntrance + "+(礼包中心:关注)", new LibaoUtils.OnLibaoStatusChangeListener() {
|
||||
LibaoUtils.initLibaoBtn(mContext, holder.binding.libaoBtnStatus, libaoEntity, false, null, true, mEntrance + "+(礼包中心:关注)", "礼包中心-关注", new LibaoUtils.OnLibaoStatusChangeListener() {
|
||||
@Override
|
||||
public void onLibaoStatusChange() {
|
||||
notifyItemChanged(position);
|
||||
|
||||
@ -217,7 +217,8 @@ class LibaoNewAdapter(
|
||||
if (libaoEntity.status != null) {
|
||||
LibaoUtils.initLibaoBtn(
|
||||
mContext, holder.binding.libaoBtnStatus, libaoEntity, false, null, true,
|
||||
mEntrance + "+(礼包中心:最新)"
|
||||
mEntrance + "+(礼包中心:最新)",
|
||||
"礼包中心-最新"
|
||||
) {
|
||||
notifyItemChanged(position)
|
||||
}
|
||||
|
||||
@ -239,7 +239,8 @@ class LibaoSearchAdapter(
|
||||
if (libaoEntity.status != null) {
|
||||
LibaoUtils.initLibaoBtn(
|
||||
mContext, holder.binding.libaoBtnStatus, libaoEntity, false, null, false,
|
||||
"$mEntrance+(礼包中心:最新)"
|
||||
"$mEntrance+(礼包中心:最新)",
|
||||
"礼包中心-最新"
|
||||
) {
|
||||
notifyItemChanged(position)
|
||||
}
|
||||
|
||||
@ -52,8 +52,20 @@ class GlobalActivityLifecycleObserver : Application.ActivityLifecycleCallbacks {
|
||||
override fun onActivityDestroyed(activity: Activity) {
|
||||
AppManager.getInstance().removeActivityFromStack(activity)
|
||||
|
||||
if (activity is BaseActivity && GlobalActivityManager.pageStack.peek().pageId == activity.getUniqueId()) {
|
||||
GlobalActivityManager.pageStack.pop()
|
||||
if (activity is BaseActivity) {
|
||||
if (GlobalActivityManager.pageStack.peek().pageId == activity.getUniqueId()) {
|
||||
GlobalActivityManager.pageStack.pop()
|
||||
} else {
|
||||
var position = -1
|
||||
GlobalActivityManager.pageStack.forEachIndexed { index, pageEntity ->
|
||||
if (pageEntity.pageId == activity.getUniqueId()) {
|
||||
position = index
|
||||
}
|
||||
}
|
||||
if (position != -1) {
|
||||
GlobalActivityManager.pageStack.removeAt(position)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -83,6 +83,8 @@ public class EntranceConsts {
|
||||
public static final String KEY_POSITION = "position";
|
||||
public static final String KEY_SUB_POSITION = "sub_position";
|
||||
public static final String KEY_ENTRANCE = "entrance";
|
||||
|
||||
public static final String KEY_SOURCE_ENTRANCE = "source_entrance";
|
||||
public static final String KEY_ENTRANCE_LINK = "entrance_link";
|
||||
public static final String KEY_TARGET = "target";
|
||||
public static final String ENTRANCE_BROWSER = "(浏览器)";
|
||||
|
||||
Reference in New Issue
Block a user