检查每次启动时的更新

时间:2012-04-02 10:23:30

标签: android updates

我已经在Android上构建了我的第一个应用程序,现在我想让应用程序在用户启动应用程序时检查我的服务器是否有新的更新;如果APK文件名中的版本(例如weather-right-now-11.apk)与实际版本不同,则提示用户下载新更新。我怎么能做到这一点?

提前致谢!

2 个答案:

答案 0 :(得分:1)

将此添加到您的主要活动:

@Override
    protected void onResume() {
        Toast.makeText(getApplicationContext(), "OnResume", Toast.LENGTH_SHORT).show();
        super.onResume();
    }

并在此功能中添加您的操作。 onResume会在每次活动开始时运行。

你必须有一台连接到它的服务器并检查应用程序的版本并下载它,你可以检查你的版本:

getApplicationContext().getPackageManager().getPackageInfo(
                context.getApplicationInfo().packageName, 0).versionCode;

您可以使用tcpudp数据包连接到服务器并检查上一版本。这是一个关于tcp的链接:

答案 1 :(得分:1)

您可以使用以下内容获取应用程序的当前版本代码:

    /*
     * Try to get the current version code from the package manager.
     */
    int currentVersionCode;
    try {
        currentVersionCode = context.getPackageManager().getPackageInfo(
                context.getApplicationInfo().packageName, 0).versionCode;
    } catch (NameNotFoundException e) {
        // Shouldn't ever happen - but log anyway
        return;
    }

然后,您需要设置一些方法,以便在应用程序启动时检查服务器,无论是在onCreate还是onResume。注意:我建议使用AsyncTask或单独的线程来执行此操作,