Files
assistant-android/app/src/main/java/com/gh/gamecenter/NewsDetailActivity.java

693 lines
28 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.gh.gamecenter;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.os.Handler;
import android.os.SystemClock;
import android.preference.PreferenceManager;
import android.support.annotation.NonNull;
import android.support.v4.view.MotionEventCompat;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.gh.base.BaseActivity;
import com.gh.base.OnRequestCallBackListener;
import com.gh.common.util.ApkActiveUtils;
import com.gh.common.util.CheckLoginUtils;
import com.gh.common.util.CollectionUtils;
import com.gh.common.util.DataCollectionUtils;
import com.gh.common.util.DataUtils;
import com.gh.common.util.DetailDownloadUtils;
import com.gh.common.util.DisplayUtils;
import com.gh.common.util.EntranceUtils;
import com.gh.common.util.ShareUtils;
import com.gh.common.view.VerticalItemDecoration;
import com.gh.download.DownloadManager;
import com.gh.gamecenter.adapter.viewholder.DetailViewHolder;
import com.gh.gamecenter.entity.GameEntity;
import com.gh.gamecenter.entity.NewsDetailEntity;
import com.gh.gamecenter.entity.NewsEntity;
import com.gh.gamecenter.entity.UserDataEntity;
import com.gh.gamecenter.eventbus.EBConcernChanged;
import com.gh.gamecenter.eventbus.EBDownloadStatus;
import com.gh.gamecenter.eventbus.EBNetworkState;
import com.gh.gamecenter.eventbus.EBPackage;
import com.gh.gamecenter.newsdetail.NewsDetailAdapter;
import com.gh.gamecenter.retrofit.Response;
import com.gh.gamecenter.retrofit.RetrofitManager;
import com.jakewharton.rxbinding.view.RxView;
import com.lightgame.download.DataWatcher;
import com.lightgame.download.DownloadEntity;
import com.lightgame.utils.Utils;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import butterknife.BindView;
import retrofit2.HttpException;
import rx.android.schedulers.AndroidSchedulers;
import rx.functions.Action1;
import rx.schedulers.Schedulers;
/**
* 文章详情页面 要启动该页面 需要传入一下参数 放入 EssayEntity中传过来 文章 id 文章标题 title 文章发表时间 time
*
* @author 黄壮华
*/
public class NewsDetailActivity extends BaseActivity implements OnClickListener, OnRequestCallBackListener {
@BindView(R.id.news_detail_rv_show)
RecyclerView mDetailRv;
@BindView(R.id.news_detail_ll_bottom)
LinearLayout mDetailBottomLl;
@BindView(R.id.reuse_ll_loading)
LinearLayout mReuseLoading;
@BindView(R.id.reuse_no_connection)
LinearLayout mNoConn;
@BindView(R.id.reuse_none_data)
LinearLayout mNoneData;
@BindView(R.id.reuse_tv_none_data)
TextView mNoneDataTv;
@BindView(R.id.news_detail_ll_coment)
RelativeLayout mDetailCommentLl;
View mNewsShare;
ImageView mNewsCollection;
private NewsDetailAdapter adapter;
private static final String KEY_COLLECTIONNEWS = "isCollectionNews";
private boolean isSentReport = false;
private boolean isSecondDown = false;
private boolean mIsCollectionNews;
private float Y11, Y12, Y21, Y22;
private float X11, X12, X21, X22;
private double R11;
private int fontsize;
private int scrollSize = 300;//滑动距离超过300触发事件放大缩小字体
private long start = 0L;
private String newsId;
private String downloadOffText;
private SharedPreferences sp;
private GameEntity gameEntity;
private NewsEntity mNewsEntity;
private DownloadEntity mDownloadEntity;
private Handler handler = new Handler();
private long[] mHits = new long[2];
private DataWatcher dataWatcher = new DataWatcher() {
@Override
public void onDataChanged(DownloadEntity downloadEntity) {
if (gameEntity != null && gameEntity.getApk().size() == 1) {
String url = gameEntity.getApk().get(0).getUrl();
if (url.equals(downloadEntity.getUrl())) {
if (!"pause".equals(DownloadManager.getInstance(NewsDetailActivity.this).
getStatus(downloadEntity.getUrl()))) {
mDownloadEntity = downloadEntity;
DetailDownloadUtils.detailInvalidate(getDetailViewHolder());
}
}
}
}
};
Runnable runnable = new Runnable() {
@Override
public void run() {
if (newsId != null) {
getNewsDigest(newsId);
} else {
if (mNewsEntity == null) return;
if (mNewsEntity.getType() != null) {
setNavigationTitle(mNewsEntity.getType());
}
adapter.setId(mNewsEntity.getId());
adapter.setType(mNewsEntity.getType());
adapter.setTitle(mNewsEntity.getTitle());
adapter.getNewsDetail();
}
}
};
private DetailViewHolder getDetailViewHolder() {
// 每次获取需要重新创建, 防止数据刷新
return new DetailViewHolder(mContentView, gameEntity, mDownloadEntity, downloadOffText, null,
true, mEntrance, "新闻详情", adapter.getTitle()); // 下载按钮ViewHolder
}
/**
* 启动新闻详情页面
*/
public static void startNewsDetailActivity(Context context, NewsEntity newsEntity, String entrance) {
DataUtils.onMtaEvent(context, "详情页面", "文章详情", newsEntity != null ? newsEntity.getTitle() : "");
if (!TextUtils.isEmpty(newsEntity.getLink())) {
context.startActivity(WebActivity.getIntentByNews(context, newsEntity, entrance));
} else {
Intent intent = new Intent(context, NewsDetailActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(EntranceUtils.KEY_ENTRANCE, entrance);
intent.putExtra(NewsEntity.TAG, newsEntity);
context.startActivity(intent);
}
}
/**
* 在收藏启动新闻详情页面
*/
public static void startNewsDetailByCollection(Context context, NewsEntity newsEntity, String entrance) {
DataUtils.onMtaEvent(context, "详情页面", "文章详情", newsEntity != null ? newsEntity.getTitle() : "");
if (!TextUtils.isEmpty(newsEntity.getLink())) {
Intent intent = WebActivity.getIntentByNews(context, newsEntity, entrance);
context.startActivity(intent);
} else {
Intent intent = new Intent(context, NewsDetailActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(EntranceUtils.KEY_ENTRANCE, entrance);
intent.putExtra(NewsEntity.TAG, newsEntity);
intent.putExtra(KEY_COLLECTIONNEWS, true);
context.startActivity(intent);
}
}
@NonNull
public static Intent getIntentById(Context context, String newsId, boolean isCollectionNews, String entrance) {
Intent intent = new Intent(context, NewsDetailActivity.class);
intent.putExtra(EntranceUtils.KEY_ENTRANCE, entrance);
intent.putExtra(KEY_COLLECTIONNEWS, isCollectionNews);
intent.putExtra(EntranceUtils.KEY_NEWSID, newsId);
return intent;
}
@NonNull
public static Intent getIntentById(Context context, String newsId, String entrance) {
Intent intent = new Intent(context, NewsDetailActivity.class);
intent.putExtra(EntranceUtils.KEY_ENTRANCE, entrance);
intent.putExtra(EntranceUtils.KEY_NEWSID, newsId);
return intent;
}
// @Override
// protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// super.onActivityResult(requestCode, resultCode, data);
// // 刷新评论数
// if (resultCode == 1001 ) {
// adapter.commentChange(data.getExtras().getInt("commentNum"));
// }
// }
@Override
protected int getLayoutId() {
return R.layout.activity_news_detail;
}
// @Override
// public boolean onCreateOptionsMenu(Menu menu) {
//
// getMenuInflater().inflate(R.menu.menu_share, menu);
//
// return true;
// }
//
// @Override
// public boolean onOptionsItemSelected(MenuItem item) {
// return super.onOptionsItemSelected(item);
// }
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setNavigationTitle("");
// 增加actionBar Button
RelativeLayout reuse_actionbar = findViewById(R.id.reuse_actionbar);
mNewsShare = LayoutInflater.from(this).inflate(R.layout.menu_action_share, reuse_actionbar, false); // 绑定parentView 否则会丢失宽高
mNewsShare.setVisibility(View.GONE);
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) mNewsShare.getLayoutParams();
params.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
params.addRule(RelativeLayout.CENTER_VERTICAL);
params.setMargins(0,0,DisplayUtils.dip2px(this, 4),0);
reuse_actionbar.addView(mNewsShare, params);
mNewsCollection = (ImageView) LayoutInflater.from(this).inflate(R.layout.menu_action_collection, reuse_actionbar, false);
mNewsCollection.setVisibility(View.GONE);
RelativeLayout.LayoutParams params2 = (RelativeLayout.LayoutParams) mNewsCollection.getLayoutParams();
params2.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
params2.addRule(RelativeLayout.CENTER_VERTICAL);
params2.setMargins(0, 0, params.width - DisplayUtils.dip2px(this, 7), 0);
reuse_actionbar.addView(mNewsCollection, params2);
mDetailRv.setHasFixedSize(true);
mDetailRv.setLayoutManager(new LinearLayoutManager(this));
mDetailRv.addItemDecoration(new VerticalItemDecoration(this, 8, false));
adapter = new NewsDetailAdapter(this, this, mEntrance);
mDetailRv.setAdapter(adapter);
newsId = getIntent().getStringExtra(EntranceUtils.KEY_NEWSID);
mIsCollectionNews = getIntent().getBooleanExtra(KEY_COLLECTIONNEWS, false);
if (newsId == null) {
mNewsEntity = getIntent().getParcelableExtra(NewsEntity.TAG);
if (mNewsEntity != null) {
if (mNewsEntity.getType() != null) {
setNavigationTitle(mNewsEntity.getType());
}
adapter.setId(mNewsEntity.getId());
adapter.setType(mNewsEntity.getType());
adapter.setTitle(mNewsEntity.getTitle());
adapter.getNewsDetail();
mNewsShare.setVisibility(View.VISIBLE);
}
} else {
getNewsDigest(newsId);
}
start = System.currentTimeMillis();
View view = getWindow().findViewById(Window.ID_ANDROID_CONTENT);
if (view != null) {
view.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
System.arraycopy(mHits, 1, mHits, 0, mHits.length - 1);
mHits[mHits.length - 1] = SystemClock.uptimeMillis();
if (mHits[0] >= (SystemClock.uptimeMillis() - 1000)) {
mDetailRv.scrollToPosition(0);
}
}
});
}
sp = PreferenceManager.getDefaultSharedPreferences(this);
fontsize = sp.getInt("fontsize", 1);
if (fontsize == 0) {
fontsize = 1;
}
mNoConn.setOnClickListener(this);
mDetailCommentLl.setOnClickListener(this);
mNewsCollection.setOnClickListener(this);
// 防抖处理
RxView.clicks(mNewsShare)
.throttleFirst(1, TimeUnit.SECONDS)
.subscribe(new Action1<Void>() {
@Override
public void call(Void aVoid) {
if (adapter != null && adapter.getNewsDetailEntity() != null) {
Map<String, Object> kv = new HashMap<>();
kv.put("名字", adapter.getNewsDetailEntity().getTitle());
kv.put("位置", "分享");
DataUtils.onEvent(NewsDetailActivity.this, "点击", "新闻详情", kv);
DataCollectionUtils.uploadClick(NewsDetailActivity.this, "分享", "新闻详情"
, adapter.getNewsDetailEntity().getTitle());
String url = "http://www.ghzs666.com/article/" +
adapter.getNewsDetailEntity().getId() + ".html";
String shareIcon;
if (gameEntity == null) {
shareIcon = getString(R.string.gh_icon_url);
} else {
shareIcon = gameEntity.getIcon();
}
showShare(url, shareIcon, adapter.getNewsDetailEntity().getTitle(),
"来自光环助手(最强卡牌神器)", ShareUtils.ShareType.news);
}
}
});
}
@Override
protected void onDestroy() {
super.onDestroy();
handler.removeCallbacksAndMessages(null);
}
@Override
protected void onPause() {
super.onPause();
if (!isSentReport) {
long end = System.currentTimeMillis();
int seconds = (int) ((end - start) / 1000);
String cost;
if (seconds < 5) {
cost = "小于5秒";
} else if (seconds < 30) {
cost = "5秒30秒";
} else if (seconds < 60) {
cost = "30秒60秒";
} else {
cost = "大于60秒";
}
if (adapter.getNewsDetailEntity() != null) {
// 阅读报告
Map<String, Object> kv = new HashMap<>();
kv.put("用时", cost);
DataUtils.onEvent(NewsDetailActivity.this, "阅读文章", adapter.getNewsDetailEntity().getTitle(), kv);
// 阅读报告
Map<String, Object> kv1 = new HashMap<>();
kv1.put(mEntrance, "阅读数");
kv1.put(mEntrance, "用时:" + cost);
DataUtils.onEvent(NewsDetailActivity.this, "文章数据", adapter.getNewsDetailEntity().getTitle(), kv1);
if (seconds > 0) {
DataCollectionUtils.uploadNews(this, adapter.getNewsDetailEntity(), gameEntity, seconds, mEntrance);
}
}
isSentReport = true;
}
DownloadManager.getInstance(this).removeObserver(dataWatcher);
}
@Override
protected void onResume() {
super.onResume();
if (gameEntity != null
&& gameEntity.getApk() != null
&& gameEntity.getApk().size() == 1) {
DetailDownloadUtils.detailInitDownload(getDetailViewHolder(), true);
}
DownloadManager.getInstance(this).addObserver(dataWatcher);
}
@Override
public void loadDone() { // 通知更新收藏按钮
mNewsCollection.setVisibility(View.VISIBLE);
NewsDetailEntity newsDetailEntity = adapter.getNewsDetailEntity();
if (newsDetailEntity.getUserData() != null && newsDetailEntity.getUserData().isArticleFavorite()) {
mNewsCollection.setImageResource(R.drawable.menu_ic_collect_select);
} else {
mNewsCollection.setImageResource(R.drawable.menu_ic_collect_unselect);
}
}
@Override
public void loadDone(Object obj) {
if (mReuseLoading != null) {
mReuseLoading.setVisibility(View.GONE);
mDetailRv.setVisibility(View.VISIBLE);
}
getGameDetail((String) obj);
}
@Override
public void loadError() {
mDetailRv.setVisibility(View.GONE);
mReuseLoading.setVisibility(View.GONE);
mDetailBottomLl.setVisibility(View.GONE);
mNoConn.setVisibility(View.VISIBLE);
}
@Override
public void loadEmpty() {
}
private void getNewsDigest(final String newsId) {
RetrofitManager.getInstance(this).getApi().getNewsDigest(newsId)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Response<NewsEntity>() {
@Override
public void onResponse(NewsEntity response) {
if (mIsCollectionNews && mNewsEntity != null && response != null) { // 对比查看收藏文章是否修改
return;
}
mNewsEntity = response;
if (response.getType() != null) {
setNavigationTitle(response.getType());
}
adapter.setId(newsId);
adapter.setType(response.getType());
adapter.setTitle(response.getTitle());
adapter.getNewsDetail();
mNewsShare.setVisibility(View.VISIBLE);
DataUtils.onMtaEvent(NewsDetailActivity.this, "详情页面", "文章详情", response.getTitle());
}
@Override
public void onFailure(HttpException e) {
mDetailRv.setVisibility(View.GONE);
mReuseLoading.setVisibility(View.GONE);
mDetailBottomLl.setVisibility(View.GONE);
mNoConn.setVisibility(View.VISIBLE);
}
});
}
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
switch (ev.getAction() & MotionEventCompat.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
isSecondDown = false;
int pointerIndex = MotionEventCompat.findPointerIndex(ev, MotionEventCompat.getPointerId(ev, 0));
Y11 = MotionEventCompat.getY(ev, pointerIndex);
X11 = MotionEventCompat.getX(ev, pointerIndex);
break;
case MotionEvent.ACTION_UP:
final int actionUpIndex = MotionEventCompat.getActionIndex(ev);
int pointerIndex2 = MotionEventCompat.findPointerIndex(ev, MotionEventCompat.getPointerId(ev, actionUpIndex));
Y12 = MotionEventCompat.getY(ev, pointerIndex2);
X12 = MotionEventCompat.getX(ev, pointerIndex2);
float X2 = Math.abs(X12 - X22);
float Y2 = Math.abs(Y12 - Y22);
float R2 = (X2 * X2) + (Y2 * Y2);
double R12 = Math.sqrt(R2);
if (isSecondDown) {
if ((R11 - R12) > scrollSize && fontsize > 1) {
fontsize--;
adapter.setFontSize(fontsize);
sp.edit().putInt("fontsize", fontsize).apply();
String fontSizeText = getFontSize(fontsize);
Utils.toast(this, fontSizeText);
}
if ((R11 - R12) < -scrollSize && fontsize < 4) {
fontsize++;
adapter.setFontSize(fontsize);
sp.edit().putInt("fontsize", fontsize).apply();
String fontSizeText = getFontSize(fontsize);
Utils.toast(this, fontSizeText);
}
}
break;
case MotionEvent.ACTION_MOVE:
if (isSecondDown) {
return true;
}
break;
case MotionEventCompat.ACTION_POINTER_DOWN:
isSecondDown = true;
final int pointerIndexDown = MotionEventCompat.getActionIndex(ev);
int pointerIndex1 = MotionEventCompat.findPointerIndex(ev, MotionEventCompat.getPointerId(ev, pointerIndexDown));
Y21 = MotionEventCompat.getY(ev, pointerIndex1);
X21 = MotionEventCompat.getX(ev, pointerIndex1);
float X1 = Math.abs(X11 - X21);
float Y1 = Math.abs(Y11 - Y21);
float R1 = (X1 * X1) + (Y1 * Y1);
R11 = Math.sqrt(R1);
break;
case MotionEventCompat.ACTION_POINTER_UP:
final int pointerIndexUp = MotionEventCompat.getActionIndex(ev);
int pointerIndex21 = MotionEventCompat.findPointerIndex(ev, MotionEventCompat.getPointerId(ev, pointerIndexUp));
Y22 = MotionEventCompat.getY(ev, pointerIndex21);
X22 = MotionEventCompat.getX(ev, pointerIndex21);
break;
}
return super.dispatchTouchEvent(ev);
}
@Override
public void onClick(final View v) {
if (v == mNoConn) {
mDetailRv.setVisibility(View.VISIBLE);
mReuseLoading.setVisibility(View.VISIBLE);
mNoConn.setVisibility(View.GONE);
handler.postDelayed(runnable, 1000);
} else if (v == mDetailCommentLl) {
CheckLoginUtils.checkLogin(this, () -> {
Intent intent = MessageDetailActivity.getIntentById(NewsDetailActivity.this, adapter.getNewsDetailEntity().getId(), null, true
, mEntrance + "(新闻详情[" + adapter.getTitle() + "])");
startActivity(intent);
});
} else if (v == mNewsCollection) {
CheckLoginUtils.checkLogin(this, () -> {
final NewsDetailEntity newsDetailEntity = adapter.getNewsDetailEntity();
mNewsCollection.setEnabled(false);
if (newsDetailEntity.getUserData() != null && newsDetailEntity.getUserData().isArticleFavorite()) {
CollectionUtils.INSTANCE.deleteCollection(NewsDetailActivity.this, mNewsEntity.getId(),
CollectionUtils.CollectionType.article,
new CollectionUtils.OnCollectionListener() {
@Override
public void onSuccess() {
newsDetailEntity.getUserData().setArticleFavorite(false);
mNewsCollection.setEnabled(true);
mNewsCollection.setImageResource(R.drawable.menu_ic_collect_unselect);
toast(R.string.collection_cancel);
}
@Override
public void onError() {
mNewsCollection.setEnabled(true);
toast(R.string.collection_cancel_failure);
}
});
} else {
// Map<String, String> map = new HashMap<>();
// map.put("_id", mNewsEntity.getId());
CollectionUtils.INSTANCE.postCollection(NewsDetailActivity.this, mNewsEntity.getId(),
CollectionUtils.CollectionType.article,
new CollectionUtils.OnCollectionListener() {
@Override
public void onSuccess() {
UserDataEntity userData = newsDetailEntity.getUserData();
if (userData == null) {
userData = new UserDataEntity();
newsDetailEntity.setUserData(userData);
}
userData.setArticleFavorite(true);
mNewsCollection.setEnabled(true);
mNewsCollection.setImageResource(R.drawable.menu_ic_collect_select);
toast(R.string.collection_success);
}
@Override
public void onError() {
mNewsCollection.setEnabled(true);
toast(R.string.collection_failure);
}
});
}
});
}
}
private String getFontSize(int i) {
switch (i) {
case 1:
return "小字号";
case 2:
return "中字号";
case 3:
return "大字号";
case 4:
return "特大字号";
default:
return "未知字号";
}
}
private void getGameDetail(String gameId) {
if (TextUtils.isEmpty(gameId)) {
mDetailBottomLl.setVisibility(View.GONE);
return;
}
RetrofitManager.getInstance(this).getApi().getGameNewsDigest(gameId)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Response<GameEntity>() {
@Override
public void onResponse(GameEntity response) {
ApkActiveUtils.filterHideApk(response);
gameEntity = response;
adapter.setGameEntity(gameEntity);
adapter.notifyItemInserted(1);
downloadOffText = gameEntity.getDownloadOffText();
mDetailBottomLl.setVisibility(View.VISIBLE);
DetailDownloadUtils.detailInitDownload(getDetailViewHolder(), true);
}
});
}
// 关注事件
@Subscribe(threadMode = ThreadMode.MAIN)
public void onEventMainThread(EBConcernChanged changed) {
NewsDetailEntity newsDetailEntity = adapter.getNewsDetailEntity();
if (newsDetailEntity != null && gameEntity != null && changed.isSingle() && changed.getGameId().equals(gameEntity.getId())) {
if (newsDetailEntity.getUserData() == null) {
newsDetailEntity.setUserData(new UserDataEntity());
}
newsDetailEntity.getUserData().setGameConcerned(changed.isConcern());
adapter.notifyItemChanged(1);
}
}
@Subscribe(threadMode = ThreadMode.MAIN)
public void onEventMainThread(EBNetworkState busNetworkState) {
if (busNetworkState.isNetworkConnected()) {
if (mNoConn.getVisibility() == View.VISIBLE) {
mDetailRv.setVisibility(View.VISIBLE);
mReuseLoading.setVisibility(View.VISIBLE);
mDetailRv.setPadding(0, 0, 0, DisplayUtils.dip2px(getApplicationContext(), 60));
mNoConn.setVisibility(View.GONE);
handler.postDelayed(runnable, 1000);
}
}
}
// 接收下载被删除消息
@Subscribe(threadMode = ThreadMode.MAIN)
public void onEvent(EBDownloadStatus status) {
if ("delete".equals(status.getStatus())
&& gameEntity != null
&& gameEntity.getApk() != null
&& gameEntity.getApk().size() == 1) {
String url = gameEntity.getApk().get(0).getUrl();
if (url.equals(status.getUrl())) {
DetailDownloadUtils.detailInitDownload(getDetailViewHolder(), false);
}
}
}
// 接受安装、卸载消息
@Subscribe(threadMode = ThreadMode.MAIN)
public void onEventMainThread(EBPackage busFour) {
if (gameEntity != null
&& gameEntity.getApk() != null
&& gameEntity.getApk().size() == 1) {
String packageName = gameEntity.getApk().get(0).getPackageName();
if (packageName.equals(busFour.getPackageName())) {
DetailDownloadUtils.detailInitDownload(getDetailViewHolder(), false);
}
}
}
}