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 f33c2ff844..3fad12c719 100644 --- a/app/src/main/java/com/gh/common/util/StringUtils.java +++ b/app/src/main/java/com/gh/common/util/StringUtils.java @@ -9,13 +9,13 @@ public class StringUtils { public static String buildString(String... arrStr) { int strCount = 0; - for(int i = 0; i < arrStr.length; ++i) { - strCount += arrStr[i] == null?0:arrStr[i].length(); + for (int i = 0; i < arrStr.length; ++i) { + strCount += arrStr[i] == null ? 0 : arrStr[i].length(); } StringBuilder result = new StringBuilder(strCount); - for(int j = 0; j < arrStr.length; ++j) { + for (int j = 0; j < arrStr.length; ++j) { result.append(arrStr[j]); } diff --git a/app/src/main/java/com/gh/gamecenter/adapter/BaseRecyclerAdapter.java b/app/src/main/java/com/gh/gamecenter/adapter/BaseRecyclerAdapter.java index 92197dcbe1..0716354471 100644 --- a/app/src/main/java/com/gh/gamecenter/adapter/BaseRecyclerAdapter.java +++ b/app/src/main/java/com/gh/gamecenter/adapter/BaseRecyclerAdapter.java @@ -13,6 +13,8 @@ import android.view.LayoutInflater; public abstract class BaseRecyclerAdapter extends RecyclerView.Adapter { + protected static final int TAG_POSITION = 0x12345678; + protected Context mContext; protected LayoutInflater mLayoutInflater; diff --git a/app/src/main/java/com/gh/gamecenter/adapter/viewholder/FooterViewHolder.java b/app/src/main/java/com/gh/gamecenter/adapter/viewholder/FooterViewHolder.java index 375534f887..3ed188cd70 100644 --- a/app/src/main/java/com/gh/gamecenter/adapter/viewholder/FooterViewHolder.java +++ b/app/src/main/java/com/gh/gamecenter/adapter/viewholder/FooterViewHolder.java @@ -2,6 +2,7 @@ package com.gh.gamecenter.adapter.viewholder; import android.support.v7.widget.RecyclerView.ViewHolder; import android.view.View; +import android.view.View.OnClickListener; import android.widget.ProgressBar; import android.widget.TextView; import butterknife.BindView; @@ -31,4 +32,36 @@ public class FooterViewHolder extends ViewHolder { ButterKnife.bind(this, itemView); } + public void initFooterViewHolder(boolean mIsNetworkError, boolean mIsOver, + OnClickListener onClickListener) { + if (mIsNetworkError) { + lineLeft.setVisibility(View.GONE); + lineRight.setVisibility(View.GONE); + loading.setVisibility(View.GONE); + hint.setText("加载失败,点击重试"); + itemView.setClickable(true); +// holder.itemView.setOnClickListener(new View.OnClickListener() { +// @Override +// public void onClick(View v) { +// mIsNetworkError = false; +// notifyItemChanged(getItemCount() - 1); +// initSubjectList(); +// } +// }); + itemView.setOnClickListener(onClickListener); + } else if (mIsOver) { + lineLeft.setVisibility(View.VISIBLE); + lineRight.setVisibility(View.VISIBLE); + loading.setVisibility(View.GONE); + hint.setText("到底了哦~"); + itemView.setClickable(false); + } else { + lineLeft.setVisibility(View.GONE); + lineRight.setVisibility(View.GONE); + loading.setVisibility(View.VISIBLE); + hint.setText(R.string.loading); + itemView.setClickable(false); + } + } + } \ No newline at end of file diff --git a/app/src/main/java/com/gh/gamecenter/adapter/viewholder/GameTestViewHolder.java b/app/src/main/java/com/gh/gamecenter/adapter/viewholder/GameTestViewHolder.java index e699db1241..f45fb954fd 100644 --- a/app/src/main/java/com/gh/gamecenter/adapter/viewholder/GameTestViewHolder.java +++ b/app/src/main/java/com/gh/gamecenter/adapter/viewholder/GameTestViewHolder.java @@ -1,9 +1,19 @@ package com.gh.gamecenter.adapter.viewholder; +import android.content.Context; +import android.text.TextUtils; import android.view.View; +import android.view.View.OnClickListener; import android.widget.*; import com.facebook.drawee.view.SimpleDraweeView; +import com.gh.common.util.*; import com.gh.gamecenter.R; +import com.gh.gamecenter.entity.GameEntity; +import com.gh.gamecenter.entity.SubjectEntity; +import com.gh.gamecenter.game.GameFragmentAdapter; + +import java.util.Date; +import java.util.List; public class GameTestViewHolder extends GameViewHolder { @@ -31,4 +41,101 @@ public class GameTestViewHolder extends GameViewHolder { } + public interface OnGameTestItemClickListener { + void onClick(GameEntity gameEntity, SubjectEntity subjectEntity, int position); + } + + public void initGameTestViewHolder(Context context, GameFragmentAdapter adapter, List subjectList, + List pluginList, int position, + final OnGameTestItemClickListener onGameTestItemClickListener) { + int offset = 1; + if (!pluginList.isEmpty()) { + offset += 1 + pluginList.size(); + } + for (int i = 0, size = subjectList.size(); i < size; i++) { + if (position > offset && position <= subjectList.get(i).getData().size() + offset) { + final GameEntity gameEntity = subjectList.get(i).getData().get(position - offset - 1); + if (gameEntity.getTest() != null) { + int order = position - offset - 1; + if (subjectList.get(i).getData().get(0).getImage() != null) { + order--; + } + final SubjectEntity subjectEntity = subjectList.get(i); + if (subjectEntity.isOrder()) { + gameOrder.setVisibility(View.VISIBLE); + gameOrder.setText(String.valueOf(i + 1)); + } else { + gameOrder.setVisibility(View.GONE); + } + + int paddRight = 0; + String serverType = gameEntity.getServerType(); + if (TextUtils.isEmpty(serverType)) { + gameServerType.setVisibility(View.GONE); + } else { + gameServerType.setVisibility(View.VISIBLE); + gameServerType.setText(serverType); + if ("删档内测".equals(serverType) || "不删档内测".equals(serverType)) { + gameServerType.setBackgroundResource(R.drawable.textview_server_tag); + if ("删档内测".equals(serverType)) { + paddRight = DisplayUtils.dip2px(context, 50); + } else { + paddRight = DisplayUtils.dip2px(context, 60); + } + } else { + gameServerType.setBackgroundResource(R.drawable.textview_orange_up); + paddRight = DisplayUtils.dip2px(context, 30); + } + } + gameName.setPadding(0, 0, paddRight, 0); + + ImageUtils.display(gameThumb, gameEntity.getIcon()); + gameName.setText(gameEntity.getName()); + if (gameEntity.getApk() == null || gameEntity.getApk().isEmpty()) { + gameDes.setText(gameEntity.getBrief()); + } else { + gameDes.setText(String.format("%s %s", gameEntity.getApk().get(0).getSize(), gameEntity.getBrief())); + } + gameTestType.setText(gameEntity.getTest().getType()); + if (gameEntity.getTest().getStart() == 0) { + gameTestTime.setVisibility(View.GONE); + } else { + gameTestTime.setText(GameViewUtils.getGameTestDate(gameEntity.getTest().getStart())); + } + + final int finalI = i; + itemView.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + if (onGameTestItemClickListener != null) { + onGameTestItemClickListener.onClick(gameEntity, subjectEntity, finalI); + } + } + }); + + if (gameEntity.getTest().getEnd() != 0) { + long endTime = Long.valueOf(gameEntity.getTest().getEnd() + "000"); + long todayTime = new Date().getTime(); + if (todayTime > endTime) { + // 测试时间已过 + gameEntity.setApk(null); + } + } + + DownloadItemUtils.setOnClickListener(context, + gameDownloadBtn, gameEntity, i, adapter, + StringUtils.buildString("(游戏-专题:", + subjectEntity.getName(), "-列表[", String.valueOf(i + 1), "])"), + StringUtils.buildString("游戏-专题-", + subjectEntity.getName(), ":", gameEntity.getName())); + + DownloadItemUtils.updateItem(context, gameEntity, this, true); +// adapter.initGameTest(this, gameEntity, order, subjectEntity); + break; + } + } + offset = subjectList.get(i).getData().size() + offset + 1; + } + } + } diff --git a/app/src/main/java/com/gh/gamecenter/game/GameFragmentAdapter.java b/app/src/main/java/com/gh/gamecenter/game/GameFragmentAdapter.java index 39bccd0853..57be7c6c9b 100644 --- a/app/src/main/java/com/gh/gamecenter/game/GameFragmentAdapter.java +++ b/app/src/main/java/com/gh/gamecenter/game/GameFragmentAdapter.java @@ -12,6 +12,7 @@ import android.support.v7.widget.RecyclerView.ViewHolder; import android.text.TextUtils; import android.util.DisplayMetrics; import android.view.*; +import android.view.View.OnClickListener; import android.widget.*; import cn.trinea.android.view.autoscrollviewpager.AutoScrollViewPager; import com.facebook.drawee.view.SimpleDraweeView; @@ -22,6 +23,7 @@ import com.gh.gamecenter.*; import com.gh.gamecenter.adapter.BaseRecyclerAdapter; import com.gh.gamecenter.adapter.ImagePagerAdapter; import com.gh.gamecenter.adapter.viewholder.*; +import com.gh.gamecenter.adapter.viewholder.GameTestViewHolder.OnGameTestItemClickListener; import com.gh.gamecenter.entity.*; import com.gh.gamecenter.listener.OnCallBackListener; import com.gh.gamecenter.manager.GameManager; @@ -38,88 +40,88 @@ import java.util.*; /** * Created by khy on 2016/12/6. */ -class GameFragmentAdapter extends BaseRecyclerAdapter { +public class GameFragmentAdapter extends BaseRecyclerAdapter { - private GameFragment fragment; - private OnCallBackListener listener; + private GameFragment mGameFragment; + private OnCallBackListener mCallBackListener; - private SwipeRefreshLayout game_swipe_refresh; + private SwipeRefreshLayout mSwipeRefreshLayout; - private List slideList; - private List pluginList; - private List subjectList; - private List subjectDigestList; + private List mSlideList; + private List mPluginList; + private List mSubjectList; + private List mSubjectDigestList; - // 包名对应游戏位置 - private ArrayMap> locationMap; - private ArrayMap> subjectChangedMap; //存储换一换的数据 + private ArrayMap> mLocationMap; // 包名对应游戏位置 + private ArrayMap> mSubjectChangedMap; //存储换一换的数据 - private int itemCount; - private int pluginSize; + private int mItemCount; + private int mPluginSize; - private boolean isNetworkError; - private boolean isSlideError; - private boolean isListError; - private boolean isSubjectDigestError; - private boolean isOver; - private boolean isInitPlugin; - private boolean isAutoScroll; - private int topHeight; + private boolean mIsNetworkError; + private boolean mIsSlideError; + private boolean mIsListError; + private boolean mIsSubjectDigestError; + private boolean mIsOver; + private boolean mIsInitPlugin; + private boolean mIsAutoScroll; + private int mTopHeight; - GameFragmentAdapter(GameFragment fragment, SwipeRefreshLayout refreshLayout) { - super(fragment.getContext()); + GameFragmentAdapter(GameFragment mGameFragment, SwipeRefreshLayout refreshLayout) { + super(mGameFragment.getContext()); - this.fragment = fragment; - this.listener = fragment; + this.mGameFragment = mGameFragment; + this.mCallBackListener = mGameFragment; - game_swipe_refresh = refreshLayout; + mSwipeRefreshLayout = refreshLayout; - slideList = new ArrayList<>(); - pluginList = new ArrayList<>(); - subjectList = new ArrayList<>(); - subjectDigestList = new ArrayList<>(); + mSlideList = new ArrayList<>(); + mPluginList = new ArrayList<>(); + mSubjectList = new ArrayList<>(); + mSubjectDigestList = new ArrayList<>(); - locationMap = new ArrayMap<>(); - subjectChangedMap = new ArrayMap<>(); + mLocationMap = new ArrayMap<>(); + mSubjectChangedMap = new ArrayMap<>(); - itemCount = 0; - pluginSize = 0; + mItemCount = 0; + mPluginSize = 0; - isNetworkError = false; - isSlideError = false; - isListError = false; - isSubjectDigestError = false; - isOver = false; - isInitPlugin = false; - isAutoScroll = false; + mIsNetworkError = false; + mIsSlideError = false; + mIsListError = false; + mIsSubjectDigestError = false; + mIsOver = false; + mIsInitPlugin = false; + mIsAutoScroll = false; DisplayMetrics outMetrics = new DisplayMetrics(); - fragment.getActivity().getWindowManager().getDefaultDisplay().getMetrics(outMetrics); + mGameFragment.getActivity().getWindowManager().getDefaultDisplay().getMetrics(outMetrics); - topHeight = (int) (outMetrics.widthPixels / 16f * 10.5f); + mTopHeight = (int) (outMetrics.widthPixels / 16f * 10.5f); initSubjectDigest(true); } public ArrayMap> getLocationMap() { - return locationMap; + return mLocationMap; } GameEntity getGameEntityByLocation(int location) { - if (!pluginList.isEmpty() && location > 1 && location <= 1 + pluginList.size()) { - return pluginList.get(location - 2); + if (!mPluginList.isEmpty() && location > 1 && location <= 1 + mPluginList.size()) { + return mPluginList.get(location - 2); } int offset = 1; - if (!pluginList.isEmpty()) { - offset += 1 + pluginList.size(); + if (!mPluginList.isEmpty()) { + offset += 1 + mPluginList.size(); } - for (int i = 0, size = subjectList.size(); i < size; i++) { - if (location > offset && location <= subjectList.get(i).getData().size() + offset) { - return subjectList.get(i).getData().get(location - offset - 1); + for (int i = 0, size = mSubjectList.size(); i < size; i++) { + List gameEntities = mSubjectList.get(i).getData(); + if (location > offset && location <= gameEntities.size() + offset) { + return gameEntities.get(location - offset - 1); } - offset = subjectList.get(i).getData().size() + offset + 1; + offset = gameEntities.size() + offset + 1; } return null; @@ -134,9 +136,9 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { @Override public void onResponse(List response) { if (response.size() == 5) { - subjectDigestList = response; + mSubjectDigestList = response; } else { - isSubjectDigestError = true; + mIsSubjectDigestError = true; Utils.toast(mContext, "专题入口数据异常" + response.size()); } notifyItemChanged(0); @@ -147,7 +149,7 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { @Override public void onFailure(HttpException e) { - isSubjectDigestError = true; + mIsSubjectDigestError = true; notifyItemChanged(0); if (isLoadMore) { initSlide(true); @@ -163,8 +165,8 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { .subscribe(new Response>() { @Override public void onResponse(List response) { - slideList = response; - if (slideList.size() != 0) { + mSlideList = response; + if (mSlideList.size() != 0) { notifyItemChanged(0); } if (isFirst) { @@ -174,7 +176,7 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { @Override public void onFailure(HttpException e) { - isSlideError = true; + mIsSlideError = true; showView(); if (isFirst) { initSubjectList(); @@ -224,30 +226,30 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { @Override public void onResponse(List response) { if (response.size() != 0) { - if (!fragment.isHidden() && !fragment.isEverpause()) { - if (pluginList.isEmpty()) { - subjectList = response; + if (!mGameFragment.isHidden() && !mGameFragment.isEverpause()) { + if (mPluginList.isEmpty()) { + mSubjectList = response; initItemCount(); notifyItemRangeInserted(1, getItemCount() - 2); } else { - int start = 2 + pluginList.size(); - subjectList = response; + int start = 2 + mPluginList.size(); + mSubjectList = response; initItemCount(); notifyItemRangeInserted(start, getItemCount() - start - 1); } } else { - subjectList = response; + mSubjectList = response; initItemCount(); notifyDataSetChanged(); } initLocationMap(); } - if (listener != null) { - listener.loadDone(); + if (mCallBackListener != null) { + mCallBackListener.loadDone(); } - isOver = true; + mIsOver = true; notifyItemChanged(getItemCount() - 1); initPlugin(); @@ -255,33 +257,33 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { @Override public void onFailure(HttpException e) { - if (listener != null) { - listener.loadDone(); + if (mCallBackListener != null) { + mCallBackListener.loadDone(); } - isListError = true; - isNetworkError = true; + mIsListError = true; + mIsNetworkError = true; showView(); } }); } void initPlugin() { - if (isInitPlugin) { + if (mIsInitPlugin) { return; } - isInitPlugin = true; + mIsInitPlugin = true; ArrayList updateList = PackageManager.getUpdateList(); if (updateList.isEmpty()) { - isInitPlugin = false; + mIsInitPlugin = false; return; } List list = new ArrayList<>(); GameUpdateEntity gameUpdateEntity; - pluginSize = 0; + mPluginSize = 0; for (int i = 0, size = updateList.size(); i < size; i++) { gameUpdateEntity = updateList.get(i); if (gameUpdateEntity.isPluggable()) { - pluginSize++; + mPluginSize++; if (list.size() < 2) { GameEntity gameEntity = new GameEntity(); gameEntity.setId(gameUpdateEntity.getId()); @@ -310,53 +312,52 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { } if (!list.isEmpty()) { for (GameEntity gEntity : list) { - gEntity.setEntryMap(DownloadManager.getInstance(mContext). - getEntryMap(gEntity.getName())); + gEntity.setEntryMap(DownloadManager.getInstance(mContext).getEntryMap(gEntity.getName())); } - if (pluginList.isEmpty()) { - pluginList = list; + if (mPluginList.isEmpty()) { + mPluginList = list; initItemCount(); - notifyItemRangeInserted(1, pluginList.size() + 1); - if (getItemCount() > pluginList.size() + 2) { - notifyItemChanged(pluginList.size() + 2); + notifyItemRangeInserted(1, mPluginList.size() + 1); + if (getItemCount() > mPluginList.size() + 2) { + notifyItemChanged(mPluginList.size() + 2); } } else { - pluginList = list; + mPluginList = list; notifyDataSetChanged(); } initLocationMap(); } - isInitPlugin = false; + mIsInitPlugin = false; } private void showView() { - if (isSlideError && isListError) { + if (mIsSlideError && mIsListError) { Toast.makeText(mContext, "加载失败,请检查网络状态", Toast.LENGTH_SHORT).show(); - listener.loadError(); - } else if (isSlideError) { + mCallBackListener.loadError(); + } else if (mIsSlideError) { Toast.makeText(mContext, "加载失败,请检查网络状态", Toast.LENGTH_SHORT).show(); notifyItemChanged(0); - } else if (isListError) { + } else if (mIsListError) { Toast.makeText(mContext, "加载失败,请检查网络状态", Toast.LENGTH_SHORT).show(); notifyItemChanged(getItemCount() - 1); } } public void initLocationMap() { - locationMap.clear(); + mLocationMap.clear(); int count = getItemCount(); - if (!pluginList.isEmpty()) { + if (!mPluginList.isEmpty()) { GameEntity gameEntity; ArrayList list; - for (int position = 0, size = pluginList.size(); position < size; position++) { - gameEntity = pluginList.get(position); + for (int position = 0, size = mPluginList.size(); position < size; position++) { + gameEntity = mPluginList.get(position); if (gameEntity.getApk() != null && gameEntity.getApk().size() != 0) { for (ApkEntity apkEntity : gameEntity.getApk()) { - list = locationMap.get(apkEntity.getPackageName()); + list = mLocationMap.get(apkEntity.getPackageName()); if (list == null) { list = new ArrayList<>(); - locationMap.put(apkEntity.getPackageName(), list); + mLocationMap.put(apkEntity.getPackageName(), list); } list.add(position + 2); } @@ -364,31 +365,31 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { } } - if (!subjectList.isEmpty()) { + if (!mSubjectList.isEmpty()) { int offset; GameEntity gameEntity; ArrayList list; for (int position = 0; position < count; position++) { offset = 1; - if (!pluginList.isEmpty()) { - offset += 1 + pluginList.size(); + if (!mPluginList.isEmpty()) { + offset += 1 + mPluginList.size(); } - for (int i = 0, size = subjectList.size(); i < size; i++) { - if (position > offset && position <= subjectList.get(i).getData().size() + offset) { - gameEntity = subjectList.get(i).getData().get(position - offset - 1); + for (int i = 0, size = mSubjectList.size(); i < size; i++) { + if (position > offset && position <= mSubjectList.get(i).getData().size() + offset) { + gameEntity = mSubjectList.get(i).getData().get(position - offset - 1); if (gameEntity.getApk() != null && !gameEntity.getApk().isEmpty()) { for (ApkEntity apkEntity : gameEntity.getApk()) { - list = locationMap.get(apkEntity.getPackageName()); + list = mLocationMap.get(apkEntity.getPackageName()); if (list == null) { list = new ArrayList<>(); - locationMap.put(apkEntity.getPackageName(), list); + mLocationMap.put(apkEntity.getPackageName(), list); } list.add(position); } } break; } - offset = subjectList.get(i).getData().size() + offset + 1; + offset = mSubjectList.get(i).getData().size() + offset + 1; } } } @@ -396,23 +397,23 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { void initItemCount() { int pluginSize = 0; - if (!pluginList.isEmpty()) { - pluginSize += 1 + pluginList.size(); + if (!mPluginList.isEmpty()) { + pluginSize += 1 + mPluginList.size(); } int subjectSize = 0; - if (!subjectList.isEmpty()) { + if (!mSubjectList.isEmpty()) { SubjectEntity subjectEntity; - for (int i = 0, size = subjectList.size(); i < size; i++) { - subjectEntity = subjectList.get(i); + for (int i = 0, size = mSubjectList.size(); i < size; i++) { + subjectEntity = mSubjectList.get(i); subjectSize += 1 + subjectEntity.getData().size(); //getDataSize判断个数 } } - itemCount = pluginSize + subjectSize; + mItemCount = pluginSize + subjectSize; } @Override public int getItemCount() { - return 1 + itemCount + 1; + return 1 + mItemCount + 1; } @Override @@ -422,33 +423,33 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { return ItemViewType.GAME_SLIDE; } - if (!pluginList.isEmpty()) { + if (!mPluginList.isEmpty()) { if (position == 1) { return ItemViewType.COLUMN_HEADER; } - if (position > 1 && position <= 1 + pluginList.size()) { + if (position > 1 && position <= 1 + mPluginList.size()) { return ItemViewType.GAME_NORMAL; } } int offset = 1; - if (!pluginList.isEmpty()) { - offset += 1 + pluginList.size(); + if (!mPluginList.isEmpty()) { + offset += 1 + mPluginList.size(); } GameEntity gameEntity; - for (int i = 0, size = subjectList.size(); i < size; i++) { - if (position >= offset && position <= subjectList.get(i).getData().size() + offset) { + for (int i = 0, size = mSubjectList.size(); i < size; i++) { + if (position >= offset && position <= mSubjectList.get(i).getData().size() + offset) { int index = position - offset - 1; if (index < 0) { index = 0; } - gameEntity = subjectList.get(i).getData().get(index); + gameEntity = mSubjectList.get(i).getData().get(index); if (position == offset && !TextUtils.isEmpty(gameEntity.getImage())) { return ItemViewType.GAME_IMAGE; } else if (position == offset) { return ItemViewType.COLUMN_HEADER; } - if (position == offset + 1 && !TextUtils.isEmpty(subjectList.get(i).getData().get(0).getImage())) { + if (position == offset + 1 && !TextUtils.isEmpty(mSubjectList.get(i).getData().get(0).getImage())) { return ItemViewType.COLUMN_HEADER; } if (!TextUtils.isEmpty(gameEntity.getImage())) { @@ -459,7 +460,7 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { } return ItemViewType.GAME_NORMAL; } - offset = subjectList.get(i).getData().size() + offset + 1; + offset = mSubjectList.get(i).getData().size() + offset + 1; } return ItemViewType.LOADING; } @@ -469,9 +470,9 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { if (viewType == ItemViewType.GAME_SLIDE) { View view = mLayoutInflater.inflate(R.layout.game_viewpager_item, parent, false); DisplayMetrics outMetrics = new DisplayMetrics(); - fragment.getActivity().getWindowManager().getDefaultDisplay().getMetrics(outMetrics); + mGameFragment.getActivity().getWindowManager().getDefaultDisplay().getMetrics(outMetrics); LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( - LinearLayout.LayoutParams.MATCH_PARENT, topHeight); //整个头部大小16:10 viewpager大小16:7 + LinearLayout.LayoutParams.MATCH_PARENT, mTopHeight); //整个头部大小16:10 viewpager大小16:7 view.setLayoutParams(params); AutoScrollViewPager viewPager = (AutoScrollViewPager) view.findViewById(R.id.view_pager); @@ -536,7 +537,7 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { private void initGameViewPagerViewHolder(final GameViewPagerViewHolder viewHolder) { - if (isSlideError) { + if (mIsSlideError) { viewHolder.viewpager_tv_failure.setVisibility(View.VISIBLE); viewHolder.viewPager.setVisibility(View.GONE); } else { @@ -544,7 +545,7 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { viewHolder.viewPager.setVisibility(View.VISIBLE); } - if (isSubjectDigestError) { + if (mIsSubjectDigestError) { viewHolder.subjectLl.setVisibility(View.GONE); viewHolder.subjectFailure.setVisibility(View.VISIBLE); } else { @@ -552,9 +553,9 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { viewHolder.subjectFailure.setVisibility(View.GONE); } - if (slideList.size() != 0 && viewHolder.viewPager.getAdapter() == null) { + if (mSlideList.size() != 0 && viewHolder.viewPager.getAdapter() == null) { viewHolder.viewpager_ll_hint.removeAllViews(); - for (int i = 0, size = slideList.size(); i < size; i++) { + for (int i = 0, size = mSlideList.size(); i < size; i++) { ImageView imageView = new ImageView(mContext); LinearLayout.LayoutParams lparams = new LinearLayout.LayoutParams( DisplayUtils.dip2px(mContext, 6), DisplayUtils.dip2px(mContext, 6)); @@ -571,7 +572,7 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { viewHolder.viewpager_ll_hint.addView(imageView); } - viewHolder.viewPager.setAdapter(new ImagePagerAdapter(mContext, slideList, true)); + viewHolder.viewPager.setAdapter(new ImagePagerAdapter(mContext, mSlideList, true)); viewHolder.viewPager.setInterval(3000); viewHolder.viewPager.startAutoScroll(); viewHolder.viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @@ -597,9 +598,9 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { public void onPageScrollStateChanged(int state) { // 解决viewpager和SwipeRefreshLayout滑动冲突 if (state == ViewPager.SCROLL_STATE_DRAGGING) { - game_swipe_refresh.setEnabled(false); + mSwipeRefreshLayout.setEnabled(false); } else { - game_swipe_refresh.setEnabled(true); + mSwipeRefreshLayout.setEnabled(true); } } }); @@ -608,13 +609,13 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { viewHolder.viewpager_tv_failure.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - isSlideError = false; + mIsSlideError = false; notifyItemChanged(0); initSlide(false); } }); - if (isAutoScroll) { + if (mIsAutoScroll) { viewHolder.viewPager.startAutoScroll(); } else { viewHolder.viewPager.stopAutoScroll(); @@ -623,7 +624,7 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { viewHolder.subjectFailure.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - isSubjectDigestError = false; + mIsSubjectDigestError = false; notifyItemChanged(0); initSubjectDigest(false); } @@ -631,7 +632,8 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { //初始化专题入口 viewHolder.subjectLl.removeAllViews(); - for (int i = 0; i < 5; i++) { + final int entrance_size = 5; + for (int i = 0; i < entrance_size; i++) { View contentView = View.inflate(mContext, R.layout.home_subject_entrance_item, null); TextView subjectName = (TextView) contentView.findViewById(R.id.home_subject_name); SimpleDraweeView subjectIcon = (SimpleDraweeView) contentView.findViewById(R.id.home_subject_icon); @@ -639,9 +641,11 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { contentView.setLayoutParams(lp); viewHolder.subjectLl.addView(contentView); - if (subjectDigestList.size() >= 5 && i < 5) { - ImageUtils.display(subjectIcon, subjectDigestList.get(i).getIcon()); - subjectName.setText(subjectDigestList.get(i).getName()); + if (mSubjectDigestList.size() >= entrance_size) { +// if (mSubjectDigestList.size() >= 5 && i < 5) { + + ImageUtils.display(subjectIcon, mSubjectDigestList.get(i).getIcon()); + subjectName.setText(mSubjectDigestList.get(i).getName()); } if (i == 4) { @@ -653,17 +657,17 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { contentView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - if (finalI < 4 && !isSubjectDigestError && subjectDigestList.size() > finalI) { + if (finalI < 4 && !mIsSubjectDigestError && mSubjectDigestList.size() > finalI) { Intent intent = new Intent(mContext, SubjectActivity.class); - intent.putExtra("id", subjectDigestList.get(finalI).getColumnId()); - intent.putExtra("name", subjectDigestList.get(finalI).getColumnName()); - intent.putExtra("order", subjectDigestList.get(finalI).getOrder()); - intent.putExtra("entrance", StringUtils.buildString("(游戏-专题:" , subjectDigestList.get(finalI).getName(), - "[1-" , String.valueOf(finalI + 1) , "]" , ")")); + intent.putExtra("id", mSubjectDigestList.get(finalI).getColumnId()); + intent.putExtra("name", mSubjectDigestList.get(finalI).getColumnName()); + intent.putExtra("order", mSubjectDigestList.get(finalI).getOrder()); + intent.putExtra("entrance", StringUtils.buildString("(游戏-专题:", + mSubjectDigestList.get(finalI).getName(), "[1-", String.valueOf(finalI + 1), "]", ")")); mContext.startActivity(intent); DataCollectionUtils.uploadPosition(mContext, "游戏", String.valueOf(finalI + 1), - subjectDigestList.get(finalI).getName()); + mSubjectDigestList.get(finalI).getName()); } else if (finalI == 4) { Intent intent = new Intent(mContext, KaiFuActivity.class); intent.putExtra("entrance", "(游戏-专题:开服表[1-6])"); @@ -679,139 +683,57 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { } private void initGameTestViewHolder(GameTestViewHolder holder, int position) { - int offset = 1; - if (!pluginList.isEmpty()) { - offset += 1 + pluginList.size(); - } - GameEntity gameEntity; - for (int i = 0, size = subjectList.size(); i < size; i++) { - if (position > offset && position <= subjectList.get(i).getData().size() + offset) { - gameEntity = subjectList.get(i).getData().get(position - offset - 1); - if (gameEntity.getTest() != null) { - int order = position - offset - 1; - if (subjectList.get(i).getData().get(0).getImage() != null) { - order--; - } - initGameTest(holder, gameEntity, order, subjectList.get(i)); - break; - } - } - offset = subjectList.get(i).getData().size() + offset + 1; - } - } - - private void initGameTest(GameTestViewHolder holder, final GameEntity gameEntity, - final int i, final SubjectEntity subjectEntity) { - - if (subjectEntity.isOrder()) { - holder.gameOrder.setVisibility(View.VISIBLE); - holder.gameOrder.setText(String.valueOf(i + 1)); - } else { - holder.gameOrder.setVisibility(View.GONE); - } - - int paddRight = 0; - String serverType = gameEntity.getServerType(); - if (TextUtils.isEmpty(serverType)) { - holder.gameServerType.setVisibility(View.GONE); - } else { - holder.gameServerType.setVisibility(View.VISIBLE); - holder.gameServerType.setText(serverType); - if ("删档内测".equals(serverType) || "不删档内测".equals(serverType)) { - holder.gameServerType.setBackgroundResource(R.drawable.textview_server_tag); - if ("删档内测".equals(serverType)) { - paddRight = DisplayUtils.dip2px(mContext, 50); - } else { - paddRight = DisplayUtils.dip2px(mContext, 60); - } - } else { - holder.gameServerType.setBackgroundResource(R.drawable.textview_orange_up); - paddRight = DisplayUtils.dip2px(mContext, 30); - } - } - holder.gameName.setPadding(0, 0, paddRight, 0); - - ImageUtils.display(holder.gameThumb, gameEntity.getIcon()); - holder.gameName.setText(gameEntity.getName()); - if (gameEntity.getApk() == null || gameEntity.getApk().isEmpty()) { - holder.gameDes.setText(gameEntity.getBrief()); - } else { - holder.gameDes.setText(String.format("%s %s", gameEntity.getApk().get(0).getSize(), gameEntity.getBrief())); - } - holder.gameTestType.setText(gameEntity.getTest().getType()); - if (gameEntity.getTest().getStart() == 0) { - holder.gameTestTime.setVisibility(View.GONE); - } else { - holder.gameTestTime.setText(GameViewUtils.getGameTestDate(gameEntity.getTest().getStart())); - } - - holder.itemView.setOnClickListener(new View.OnClickListener() { + holder.initGameTestViewHolder(mContext, this, mSubjectList, mPluginList, position, new OnGameTestItemClickListener() { @Override - public void onClick(View v) { + public void onClick(GameEntity gameEntity, SubjectEntity subjectEntity, int position) { Map kv = new HashMap<>(); kv.put("名字", gameEntity.getName()); - kv.put("位置", String.valueOf(i + 1)); + kv.put("位置", String.valueOf(position + 1)); DataUtils.onEvent(mContext, "点击", "游戏-专题-" + subjectEntity.getName(), kv); DataCollectionUtils.uploadClick(mContext, subjectEntity.getName() + "-列表", "游戏-专题", gameEntity.getName()); GameUtils.startGameDetailActivity(mContext, gameEntity, - StringUtils.buildString("(游戏-专题:" , subjectEntity.getName() , "-列表[" , String.valueOf(i + 1) , "])")); + StringUtils.buildString("(游戏-专题:", subjectEntity.getName(), "-列表[", String.valueOf(position + 1), "])")); } }); - if (gameEntity.getTest().getEnd() != 0) { - long endTime = Long.valueOf(gameEntity.getTest().getEnd() + "000"); - long todayTime = new Date().getTime(); - if (todayTime > endTime) { - // 测试时间已过 - gameEntity.setApk(null); - } - } - - DownloadItemUtils.setOnClickListener(mContext, - holder.gameDownloadBtn, gameEntity, i, - GameFragmentAdapter.this, StringUtils.buildString("(游戏-专题:" , subjectEntity.getName(), - "-列表[" , String.valueOf(i + 1) , "])"), - StringUtils.buildString("游戏-专题-" , subjectEntity.getName() , ":" , gameEntity.getName())); - - DownloadItemUtils.updateItem(mContext, gameEntity, holder, true); } private void initGameNormalViewHolder(GameNormalViewHolder holder, int position) { GameEntity gameEntity; - if (!pluginList.isEmpty() && position > 1 && position <= 1 + pluginList.size()) { - gameEntity = pluginList.get(position - 2); + if (!mPluginList.isEmpty() && position > 1 && position <= 1 + mPluginList.size()) { + gameEntity = mPluginList.get(position - 2); SubjectEntity subjectEntity = new SubjectEntity(); subjectEntity.setOrder(false); subjectEntity.setName("插件化"); - subjectEntity.setData(pluginList); + subjectEntity.setData(mPluginList); initGameNormal(holder, gameEntity, position - 2, subjectEntity); return; } int offset = 1; - if (!pluginList.isEmpty()) { - offset += 1 + pluginList.size(); + if (!mPluginList.isEmpty()) { + offset += 1 + mPluginList.size(); } - for (int i = 0, size = subjectList.size(); i < size; i++) { - if (position > offset && position <= subjectList.get(i).getData().size() + offset) { + for (int i = 0, size = mSubjectList.size(); i < size; i++) { + if (position > offset && position <= mSubjectList.get(i).getData().size() + offset) { int index = position - offset - 1; if (index < 0) { index = 0; } - gameEntity = subjectList.get(i).getData().get(index); + gameEntity = mSubjectList.get(i).getData().get(index); if (TextUtils.isEmpty(gameEntity.getImage()) && gameEntity.getTest() == null) { int order = position - offset - 1; - if (subjectList.get(i).getData().get(0).getImage() != null) { + if (mSubjectList.get(i).getData().get(0).getImage() != null) { order--; } - initGameNormal(holder, gameEntity, order, subjectList.get(i)); + initGameNormal(holder, gameEntity, order, mSubjectList.get(i)); break; } } - offset = subjectList.get(i).getData().size() + offset + 1; + offset = mSubjectList.get(i).getData().size() + offset + 1; } } @@ -873,39 +795,39 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { if (gameEntity.isPluggable()) { GameUtils.startGameDetailActivity(mContext, gameEntity.getId(), - StringUtils.buildString("(游戏-专题:插件化-列表[" , String.valueOf(i + 1) , "])")); + StringUtils.buildString("(游戏-专题:插件化-列表[", String.valueOf(i + 1), "])")); } else { GameUtils.startGameDetailActivity(mContext, gameEntity, - StringUtils.buildString("(游戏-专题:" , subjectEntity.getName() , "-列表[" , String.valueOf(i + 1) , "])")); + StringUtils.buildString("(游戏-专题:", subjectEntity.getName(), "-列表[", String.valueOf(i + 1), "])")); } } }); DownloadItemUtils.setOnClickListener(mContext, holder.gameDownloadBtn, gameEntity, i, GameFragmentAdapter.this, - StringUtils.buildString("(游戏-专题:" , subjectEntity.getName() , "-列表[" , String.valueOf(i + 1) , "])"), - StringUtils.buildString("游戏-专题-" , subjectEntity.getName() , ":" , gameEntity.getName())); + StringUtils.buildString("(游戏-专题:", subjectEntity.getName(), "-列表[", String.valueOf(i + 1), "])"), + StringUtils.buildString("游戏-专题-", subjectEntity.getName(), ":", gameEntity.getName())); DownloadItemUtils.updateItem(mContext, gameEntity, holder, !gameEntity.isPluggable()); } private void initGameImageViewHolder(GameImageViewHolder holder, int position) { int offset = 1; - if (!pluginList.isEmpty()) { - offset += 1 + pluginList.size(); + if (!mPluginList.isEmpty()) { + offset += 1 + mPluginList.size(); } GameEntity gameEntity; - for (int i = 0, size = subjectList.size(); i < size; i++) { - if (position >= offset && position <= subjectList.get(i).getData().size() + offset) { + for (int i = 0, size = mSubjectList.size(); i < size; i++) { + if (position >= offset && position <= mSubjectList.get(i).getData().size() + offset) { int index = position - offset - 1; if (index < 0) { index = 0; } - gameEntity = subjectList.get(i).getData().get(index); + gameEntity = mSubjectList.get(i).getData().get(index); if (position == offset && !TextUtils.isEmpty(gameEntity.getImage())) { final GameEntity entity = gameEntity; - final String name = subjectList.get(i).getName(); + final String name = mSubjectList.get(i).getName(); String tag = entity.getImage(); holder.image.setTag(tag); ImageUtils.getInstance().display(holder.image, entity.getImage(), @@ -942,18 +864,18 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { break; } } - offset = subjectList.get(i).getData().size() + offset + 1; + offset = mSubjectList.get(i).getData().size() + offset + 1; } } private void initGameHeadViewHolder(final GameHeadViewHolder holder, int position) { - if (!pluginList.isEmpty() && position == 1) { + if (!mPluginList.isEmpty() && position == 1) { holder.title.setTextColor(ContextCompat.getColor(mContext, R.color.theme)); holder.thumb.setVisibility(View.VISIBLE); holder.line.setVisibility(View.GONE); holder.thumb.setImageResource(R.drawable.home_plug_upgrade); - holder.title.setText(String.format(Locale.getDefault(), "你有%d个游戏可以升级插件版", pluginSize)); - if (pluginSize <= 2) { + holder.title.setText(String.format(Locale.getDefault(), "你有%d个游戏可以升级插件版", mPluginSize)); + if (mPluginSize <= 2) { holder.more.setVisibility(View.GONE); } else { holder.more.setVisibility(View.VISIBLE); @@ -971,35 +893,35 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { int offset = 1; GameEntity gameEntity; - if (!pluginList.isEmpty()) { - offset += 1 + pluginList.size(); + if (!mPluginList.isEmpty()) { + offset += 1 + mPluginList.size(); } - for (int i = 0, size = subjectList.size(); i < size; i++) { - if (position >= offset && position <= subjectList.get(i).getData().size() + offset) { + for (int i = 0, size = mSubjectList.size(); i < size; i++) { + if (position >= offset && position <= mSubjectList.get(i).getData().size() + offset) { int index = position - offset - 1; if (index < 0) { index = 0; } - if (TextUtils.isEmpty(subjectList.get(i).getData().get(0).getImage())) { + if (TextUtils.isEmpty(mSubjectList.get(i).getData().get(0).getImage())) { holder.lineTop.setVisibility(View.VISIBLE); } else { holder.lineTop.setVisibility(View.GONE); } - gameEntity = subjectList.get(i).getData().get(index); + gameEntity = mSubjectList.get(i).getData().get(index); if (position == offset && TextUtils.isEmpty(gameEntity.getImage()) || position == offset + 1 - && !TextUtils.isEmpty(subjectList.get(i).getData().get(0).getImage())) { + && !TextUtils.isEmpty(mSubjectList.get(i).getData().get(0).getImage())) { holder.thumb.setVisibility(View.GONE); holder.line.setVisibility(View.VISIBLE); - holder.title.setText(subjectList.get(i).getName()); + holder.title.setText(mSubjectList.get(i).getName()); holder.title.setTextColor(Color.BLACK); final int ii = i; - if (subjectList.get(i).getData().size() >= Integer.parseInt(subjectList.get(i).getMore())) { + if (mSubjectList.get(i).getData().size() >= Integer.parseInt(mSubjectList.get(i).getMore())) { holder.more.setVisibility(View.GONE); } else { holder.more.setVisibility(View.VISIBLE); - if (subjectList.get(i).getHome().equals("change")) { + if (mSubjectList.get(i).getHome().equals("change")) { holder.more.setText("换一批"); holder.more.setTextColor(ContextCompat.getColor(mContext, R.color.theme)); } else { @@ -1011,7 +933,7 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { holder.more.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - SubjectEntity subjectEntity = subjectList.get(ii); + SubjectEntity subjectEntity = mSubjectList.get(ii); if ("全部".equals(holder.more.getText())) { Intent intent = new Intent(mContext, SubjectActivity.class); intent.putExtra("id", subjectEntity.getId()); @@ -1021,7 +943,7 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { mContext.startActivity(intent); } else { holder.progressBar.setVisibility(View.VISIBLE); - List list = subjectChangedMap.get(subjectEntity.getId()); + List list = mSubjectChangedMap.get(subjectEntity.getId()); if (list != null) { initRandomGame(subjectEntity.getData(), new ArrayList<>(list)); holder.progressBar.postDelayed(new Runnable() { @@ -1038,7 +960,7 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { }); } } - offset = subjectList.get(i).getData().size() + offset + 1; + offset = mSubjectList.get(i).getData().size() + offset + 1; } } @@ -1082,7 +1004,7 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { if (response.size() < subjectEntity.getData().size()) { Utils.toast(mContext, "数据异常"); } else { - subjectChangedMap.put(subjectEntity.getId(), response); + mSubjectChangedMap.put(subjectEntity.getId(), response); initRandomGame(subjectEntity.getData(), new ArrayList<>(response)); } } @@ -1097,62 +1019,43 @@ class GameFragmentAdapter extends BaseRecyclerAdapter { } private void initFooterViewHolder(FooterViewHolder holder) { - if (isNetworkError) { - holder.lineLeft.setVisibility(View.GONE); - holder.lineRight.setVisibility(View.GONE); - holder.loading.setVisibility(View.GONE); - holder.hint.setText("加载失败,点击重试"); - holder.itemView.setClickable(true); - holder.itemView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - isNetworkError = false; - notifyItemChanged(getItemCount() - 1); - initSubjectList(); - } - }); - } else if (isOver) { - holder.lineLeft.setVisibility(View.VISIBLE); - holder.lineRight.setVisibility(View.VISIBLE); - holder.loading.setVisibility(View.GONE); - holder.hint.setText("到底了哦~"); - holder.itemView.setClickable(false); - } else { - holder.lineLeft.setVisibility(View.GONE); - holder.lineRight.setVisibility(View.GONE); - holder.loading.setVisibility(View.VISIBLE); - holder.hint.setText(R.string.loading); - holder.itemView.setClickable(false); - } + holder.initFooterViewHolder(mIsNetworkError, mIsOver, new OnClickListener() { + @Override + public void onClick(View v) { + mIsNetworkError = false; + notifyItemChanged(getItemCount() - 1); + initSubjectList(); + } + }); } void startAutoScroll() { - isAutoScroll = true; + mIsAutoScroll = true; notifyItemChanged(0); } void stopAutoScroll() { - isAutoScroll = false; + mIsAutoScroll = false; notifyItemChanged(0); } List getPluginList() { - return pluginList; + return mPluginList; } List getSubjectList() { - return subjectList; + return mSubjectList; } public boolean isNetworkError() { - return isNetworkError; + return mIsNetworkError; } public void setNetworkError(boolean networkError) { - isNetworkError = networkError; + mIsNetworkError = networkError; } boolean isInitPlugin() { - return isInitPlugin; + return mIsInitPlugin; } } diff --git a/app/src/main/java/com/gh/gamecenter/retrofit/OkHttpInterceptor.java b/app/src/main/java/com/gh/gamecenter/retrofit/OkHttpInterceptor.java index e08b0b3b88..706375e404 100644 --- a/app/src/main/java/com/gh/gamecenter/retrofit/OkHttpInterceptor.java +++ b/app/src/main/java/com/gh/gamecenter/retrofit/OkHttpInterceptor.java @@ -1,20 +1,12 @@ package com.gh.gamecenter.retrofit; import com.gh.base.AppController; -import com.gh.common.util.GzipUtils; -import com.gh.common.util.NetworkUtils; -import com.gh.common.util.TimestampUtils; -import com.gh.common.util.Utils; +import com.gh.common.util.*; +import okhttp3.*; +import okhttp3.Response; import java.io.IOException; -import okhttp3.CacheControl; -import okhttp3.Interceptor; -import okhttp3.MediaType; -import okhttp3.Request; -import okhttp3.Response; -import okhttp3.ResponseBody; - /** * Created by LGT on 2016/11/8. */ @@ -39,8 +31,8 @@ public class OkHttpInterceptor implements Interceptor { } // log 打印 - Utils.log(String.format("Interceptor Sending request %s on %s%n%s", - request.url(), chain.connection(), request.headers())); +// Utils.log(String.format("Interceptor Sending request %s on %s%n%s", +// request.url(), chain.connection(), request.headers())); Response response = chain.proceed(request); diff --git a/app/src/main/java/com/gh/gamecenter/retrofit/RetrofitManager.java b/app/src/main/java/com/gh/gamecenter/retrofit/RetrofitManager.java index 8335662967..59c5c7a525 100644 --- a/app/src/main/java/com/gh/gamecenter/retrofit/RetrofitManager.java +++ b/app/src/main/java/com/gh/gamecenter/retrofit/RetrofitManager.java @@ -13,7 +13,6 @@ import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory; import retrofit2.converter.gson.GsonConverterFactory; import java.io.File; -import java.util.concurrent.TimeUnit; /** * Created by LGT on 2016/11/7. @@ -43,7 +42,7 @@ public class RetrofitManager { final OkHttpClient okHttpClient = builder .addNetworkInterceptor(new OkHttpNetworkInterceptor()) .addInterceptor(new OkHttpInterceptor()) - .connectTimeout(5, TimeUnit.SECONDS) +// .connectTimeout(5, TimeUnit.SECONDS) .cache(cache) .build(); mApiService = new Retrofit.Builder() diff --git a/libraries/UmengPush/libs/com.umeng.message_3.1.1a.jar b/libraries/UmengPush/libs/com.umeng.message_3.1.1a.jar new file mode 100644 index 0000000000..7a05a3e8da Binary files /dev/null and b/libraries/UmengPush/libs/com.umeng.message_3.1.1a.jar differ diff --git a/libraries/UmengPush/libs/com.umeng.message_v3.0.5.jar b/libraries/UmengPush/libs/com.umeng.message_v3.0.5.jar deleted file mode 100644 index c644173d00..0000000000 Binary files a/libraries/UmengPush/libs/com.umeng.message_v3.0.5.jar and /dev/null differ diff --git a/libraries/UmengPush/libs/utdid4all-1.1.5.3_proguard.jar b/libraries/UmengPush/libs/utdid4all-1.1.5.3_proguard.jar new file mode 100644 index 0000000000..5eed5beed5 Binary files /dev/null and b/libraries/UmengPush/libs/utdid4all-1.1.5.3_proguard.jar differ diff --git a/libraries/UmengPush/libs/utdid4all-1.1.5_proguard.jar b/libraries/UmengPush/libs/utdid4all-1.1.5_proguard.jar deleted file mode 100644 index 2703c79d1d..0000000000 Binary files a/libraries/UmengPush/libs/utdid4all-1.1.5_proguard.jar and /dev/null differ diff --git a/libraries/UmengPush/proguard-library.txt b/libraries/UmengPush/proguard-library.txt index 2f62e149ce..d1b015bc62 100644 --- a/libraries/UmengPush/proguard-library.txt +++ b/libraries/UmengPush/proguard-library.txt @@ -1,24 +1,3 @@ -# To enable ProGuard in your project, edit project.properties -# to define the proguard.config property as described in that file. -# -# Add project specific ProGuard rules here. -# By default, the flags in this file are appended to flags specified -# in ${sdk.dir}/tools/proguard/proguard-android.txt -# You can edit the include path and order by changing the ProGuard -# include property in project.properties. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# Add any project specific keep options here: - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -dontwarn com.taobao.** -dontwarn anet.channel.** -dontwarn anetwork.channel.** diff --git a/libraries/UmengPush/res/layout/upush_notification.xml b/libraries/UmengPush/res/layout/upush_notification.xml new file mode 100755 index 0000000000..79a9ade82d --- /dev/null +++ b/libraries/UmengPush/res/layout/upush_notification.xml @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/libraries/UmengPush/src/main/AndroidManifest.xml b/libraries/UmengPush/src/main/AndroidManifest.xml index 3afdcc10a1..46a57fa428 100644 --- a/libraries/UmengPush/src/main/AndroidManifest.xml +++ b/libraries/UmengPush/src/main/AndroidManifest.xml @@ -1,165 +1,179 @@ - + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - + - - - - - - - - - - - - + + + + + + + - - - - - - - - + + + + + - - - - - + + + + + + + + - - - - - - - - - - - - - - - + + + + + - - - - - - - - + + + + + + + + + + + + + + + - - + + + + + + + + - - - - - + - - - - - + + + + + - - - - - - - - - + + + + + - - - - - - - - - - - - - - - + + + + + - - - - - - - - - - + + + + + + + + + - \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/libraries/UmengPush/src/main/jniLibs/arm64-v8a/libcocklogic-1.1.3.so b/libraries/UmengPush/src/main/jniLibs/arm64-v8a/libcocklogic-1.1.3.so old mode 100644 new mode 100755 diff --git a/libraries/UmengPush/src/main/jniLibs/arm64-v8a/libtnet-3.1.7.so b/libraries/UmengPush/src/main/jniLibs/arm64-v8a/libtnet-3.1.11.so old mode 100644 new mode 100755 similarity index 53% rename from libraries/UmengPush/src/main/jniLibs/arm64-v8a/libtnet-3.1.7.so rename to libraries/UmengPush/src/main/jniLibs/arm64-v8a/libtnet-3.1.11.so index be143c5c72..c8a5db6b12 Binary files a/libraries/UmengPush/src/main/jniLibs/arm64-v8a/libtnet-3.1.7.so and b/libraries/UmengPush/src/main/jniLibs/arm64-v8a/libtnet-3.1.11.so differ diff --git a/libraries/UmengPush/src/main/jniLibs/armeabi-v7a/libcocklogic-1.1.3.so b/libraries/UmengPush/src/main/jniLibs/armeabi-v7a/libcocklogic-1.1.3.so old mode 100644 new mode 100755 diff --git a/libraries/UmengPush/src/main/jniLibs/armeabi-v7a/libtnet-3.1.7.so b/libraries/UmengPush/src/main/jniLibs/armeabi-v7a/libtnet-3.1.11.so old mode 100644 new mode 100755 similarity index 58% rename from libraries/UmengPush/src/main/jniLibs/armeabi-v7a/libtnet-3.1.7.so rename to libraries/UmengPush/src/main/jniLibs/armeabi-v7a/libtnet-3.1.11.so index 396c97ec0c..5c1bbfeba1 Binary files a/libraries/UmengPush/src/main/jniLibs/armeabi-v7a/libtnet-3.1.7.so and b/libraries/UmengPush/src/main/jniLibs/armeabi-v7a/libtnet-3.1.11.so differ diff --git a/libraries/UmengPush/src/main/jniLibs/armeabi/libcocklogic-1.1.3.so b/libraries/UmengPush/src/main/jniLibs/armeabi/libcocklogic-1.1.3.so old mode 100644 new mode 100755 diff --git a/libraries/UmengPush/src/main/jniLibs/armeabi/libtnet-3.1.7.so b/libraries/UmengPush/src/main/jniLibs/armeabi/libtnet-3.1.11.so old mode 100644 new mode 100755 similarity index 55% rename from libraries/UmengPush/src/main/jniLibs/armeabi/libtnet-3.1.7.so rename to libraries/UmengPush/src/main/jniLibs/armeabi/libtnet-3.1.11.so index 0c8685a648..64c082af03 Binary files a/libraries/UmengPush/src/main/jniLibs/armeabi/libtnet-3.1.7.so and b/libraries/UmengPush/src/main/jniLibs/armeabi/libtnet-3.1.11.so differ diff --git a/libraries/UmengPush/src/main/jniLibs/x86/libcocklogic-1.1.3.so b/libraries/UmengPush/src/main/jniLibs/x86/libcocklogic-1.1.3.so old mode 100644 new mode 100755 diff --git a/libraries/UmengPush/src/main/jniLibs/x86/libtnet-3.1.7.so b/libraries/UmengPush/src/main/jniLibs/x86/libtnet-3.1.11.so old mode 100644 new mode 100755 similarity index 50% rename from libraries/UmengPush/src/main/jniLibs/x86/libtnet-3.1.7.so rename to libraries/UmengPush/src/main/jniLibs/x86/libtnet-3.1.11.so index 83cf8ea9f9..c65faf92a3 Binary files a/libraries/UmengPush/src/main/jniLibs/x86/libtnet-3.1.7.so and b/libraries/UmengPush/src/main/jniLibs/x86/libtnet-3.1.11.so differ