DownloadEntry修改为DownloadEntity

This commit is contained in:
黄壮华
2016-09-13 07:23:02 +08:00
parent d95d5d5e6b
commit fc68b9add5
36 changed files with 1121 additions and 1009 deletions

View File

@ -28,7 +28,7 @@ import com.gh.common.util.PackageUtils;
import com.gh.common.util.PlatformUtils;
import com.gh.common.view.DownloadDialog;
import com.gh.download.DataWatcher;
import com.gh.download.DownloadEntry;
import com.gh.download.DownloadEntity;
import com.gh.download.DownloadManager;
import com.gh.gamecenter.adapter.GameDetailAdapter;
import com.gh.gamecenter.entity.ApkEntity;
@ -64,7 +64,7 @@ public class GameDetailActivity extends BaseActivity implements View.OnClickList
private ImageView iv_share;
private GameEntity gameEntity;
private DownloadEntry mDownloadEntry;
private DownloadEntity mDownloadEntity;
private String entrance;
private String gameId;
@ -73,13 +73,13 @@ public class GameDetailActivity extends BaseActivity implements View.OnClickList
private DataWatcher dataWatcher = new DataWatcher() {
@Override
public void onDataChanged(DownloadEntry downloadEntry) {
public void onDataChanged(DownloadEntity downloadEntity) {
if (gameEntity != null && gameEntity.getApk().size() == 1) {
String url = gameEntity.getApk().get(0).getUrl();
if (url.equals(downloadEntry.getUrl())) {
if (url.equals(downloadEntity.getUrl())) {
if (!"pause".equals(DownloadManager.getInstance(GameDetailActivity.this).
getStatus(downloadEntry.getUrl()))) {
mDownloadEntry = downloadEntry;
getStatus(downloadEntity.getUrl()))) {
mDownloadEntity = downloadEntity;
invalidate();
}
}
@ -235,7 +235,7 @@ public class GameDetailActivity extends BaseActivity implements View.OnClickList
if ("下载中".equals(str)) {
startActivity(new Intent(this, DownloadManagerActivity.class));
} else if ("安装".equals(str)) {
final String path = mDownloadEntry.getPath();
final String path = mDownloadEntity.getPath();
PackageManager manager = new PackageManager(this);
if (manager.launchSetup(path)) {
startActivity(PackageUtils.getInstallIntent(path));
@ -282,9 +282,9 @@ public class GameDetailActivity extends BaseActivity implements View.OnClickList
}
private void invalidate() {
gamedetail_progressbar.setProgress((int) (mDownloadEntry.getPercent() * 10));
gamedetail_progressbar.setProgress((int) (mDownloadEntity.getPercent() * 10));
gamedetail_tv_per.setTextColor(0xFFFFFFFF);
switch (mDownloadEntry.getStatus()) {
switch (mDownloadEntity.getStatus()) {
case downloading:
case pause:
case timeout:
@ -294,7 +294,7 @@ public class GameDetailActivity extends BaseActivity implements View.OnClickList
break;
case done:
EventBus.getDefault().post(new EBPutUrl(
gameEntity.getApk().get(0).getPackageName(), mDownloadEntry.getUrl()));
gameEntity.getApk().get(0).getPackageName(), mDownloadEntity.getUrl()));
gamedetail_tv_per.setText("安装");
break;
case cancel:
@ -366,26 +366,20 @@ public class GameDetailActivity extends BaseActivity implements View.OnClickList
System.currentTimeMillis() / 1000);
DataCollectionManager.onEvent(this, "download", map);
DownloadEntry entry = new DownloadEntry();
DownloadEntity downloadEntity = new DownloadEntity();
downloadEntity.setUrl(apkEntity.getUrl());
downloadEntity.setName(gameEntity.getName());
downloadEntity.setPath(FileUtils.getDownloadPath(GameDetailActivity.this,
MD5Utils.getContentMD5(gameEntity.getName() + "_"
+ System.currentTimeMillis()) + ".apk"));
downloadEntity.setPlatform(apkEntity.getPlatform());
downloadEntity.setETag(apkEntity.getEtag());
downloadEntity.setIcon(gameEntity.getIcon());
downloadEntity.setGameId(gameEntity.getId());
downloadEntity.setEntrance(entrance + "-游戏详情");
downloadEntity.setLocation("游戏详情:" + gameEntity.getName());
entry.setUrl(apkEntity.getUrl());
entry.setName(gameEntity.getName());
entry.setPath(FileUtils.getDownloadPath(
GameDetailActivity.this,
MD5Utils.getContentMD5(gameEntity.getName()
+ "_"
+ System.currentTimeMillis())
+ ".apk"));
HashMap<String, String> meta = new HashMap<>();
meta.put("ETag", apkEntity.getEtag());
meta.put("icon", gameEntity.getIcon());
meta.put("platform", apkEntity.getPlatform());
meta.put("gameId", gameEntity.getId());
meta.put("entrance", entrance + "-游戏详情");
meta.put("location", "游戏详情:" + gameEntity.getName());
entry.setMeta(meta);
DownloadManager.getInstance(this).add(entry);
DownloadManager.getInstance(this).add(downloadEntity);
gamedetail_tv_download.setVisibility(View.GONE);
gamedetail_progressbar.setVisibility(View.VISIBLE);
@ -393,7 +387,7 @@ public class GameDetailActivity extends BaseActivity implements View.OnClickList
gamedetail_progressbar.setProgress(0);
gamedetail_tv_per.setText("0.0%");
DownloadManager.getInstance(this).putStatus(entry.getUrl(), "downloading");
DownloadManager.getInstance(this).putStatus(downloadEntity.getUrl(), "downloading");
} else {
toast(msg);
@ -451,9 +445,9 @@ public class GameDetailActivity extends BaseActivity implements View.OnClickList
}
} else {
String url = gameEntity.getApk().get(0).getUrl();
for (DownloadEntry entry : DownloadManager.getInstance(this).getAll()) {
for (DownloadEntity entry : DownloadManager.getInstance(this).getAll()) {
if (url.equals(entry.getUrl())) {
mDownloadEntry = entry;
mDownloadEntity = entry;
gamedetail_tv_download.setVisibility(View.GONE);
gamedetail_progressbar.setVisibility(View.VISIBLE);
gamedetail_tv_per.setVisibility(View.VISIBLE);
@ -478,7 +472,7 @@ public class GameDetailActivity extends BaseActivity implements View.OnClickList
gamedetail_tv_download = null;
gamedetail_tv_per = null;
gamedetail_progressbar = null;
mDownloadEntry = null;
mDownloadEntity = null;
handler = null;
iv_share = null;
}