现在一般的android软件都是需要不断更新的,当你打开某个app的时候,如果有新的版本,它会提示你有新版本需要更新。该小程序实现的就是这个功能。
该小程序的特点是,当有更新时,会弹出一个提示框,点击确定,则在通知来创建一个进度条进行下载,点击取消,则取消更新。
以下是详细代码:
1.创建布局文件notification_item.xml,用于在通知栏生成一个进度条和下载图标。
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="3dp" >
android:id="@+id/notificationImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@android:drawable/stat_sys_download" />
android:id="@+id/notificationTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_toRightOf="@id/notificationImage"
android:paddingLeft="6dp"
android:textColor="#FF000000" />
android:id="@+id/notificationPercent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/notificationImage"
android:paddingTop="2dp"
android:textColor="#FF000000" />
android:id="@+id/notificationProgress"
style="@style/ProgressBarHorizontal_color"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@id/notificationTitle"
android:layout_alignParentRight="true"
android:layout_alignTop="@id/notificationPercent"
android:layout_below="@id/notificationTitle"
android:paddingLeft="6dp"
android:paddingRight="3dp"
android:paddingTop="2dp" />
2.创建AppContext类,该类继承自Application。
package com.test.application;
import android.app.Application;
import android.content.Context;
import com.test.update.config.Config;
public class AppContext extends Application {
private static AppContext appInstance;
private Context context;
public static AppContext getInstance() {
return appInstance;
}
@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
appInstance = this;
context = this.getBaseContext();
// // 获取当前版本号
// try {
// PackageInfo packageInfo = getApplicationContext()
// .getPackageManager().getPackageInfo(getPackageName(), 0);
// Config.localVersion &#