Blame view

src/com/ectrip/cyt/version/VersionHandler.java 1.66 KB
3c2353cd   杜方   1、畅游通核销app源码提交;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
  package com.ectrip.cyt.version;
  
  import java.io.File;
  
  import com.ectrip.trips.check.R;
  
  import android.app.Activity;
  import android.content.Intent;
  import android.net.Uri;
  import android.os.Handler;
  import android.os.Message;
  import android.widget.Toast;
  
  /**
   * @author jigo 处理通知下载
   */
  public class VersionHandler extends Handler {
  
  	private final int DOWN_NOSDCARD = 0;
  	private final int DOWN_UPDATE = 1;
  	private final int DOWN_OVER = 2;
  
  	private Activity activity;
  	private VersionInterface versionInterface;// 回调
  
  	public VersionHandler(Activity activity, VersionInterface versionInterface) {
  		this.activity = activity;
  		this.versionInterface = versionInterface;
  	}
  
  	@Override
  	public void handleMessage(Message msg) {
  		ProgressBean progressBean = (ProgressBean) msg.obj;
  		switch (msg.what) {
  			case DOWN_UPDATE:
  				versionInterface.setProgress(progressBean.getProgress());
  				versionInterface.tmpFileSize(progressBean.getTmpFileSize());
  				break;
  			case DOWN_OVER:
  				String path = progressBean.getApkFilePath();
  				versionInterface.dialogDismiss();
  				installApk(path);
  				break;
  			case DOWN_NOSDCARD:
  				versionInterface.dialogDismiss();
  				Toast.makeText(activity,
  						activity.getString(R.string.please_check_whether_the_SD_card_mount),
  						Toast.LENGTH_SHORT).show();
  				break;
  		}
  	}
  
  	/**
  	 * 安装apk
  	 *
  	 * @param url
  	 */
  	private void installApk(String apkFilePath) {
  		File apkfile = new File(apkFilePath);
  		if (!apkfile.exists()) {
  			return;
  		}
  		Intent i = new Intent(Intent.ACTION_VIEW);
  		i.setDataAndType(Uri.parse("file://" + apkfile.toString()),
  				"application/vnd.android.package-archive");
  		activity.startActivity(i);
  	}
  }