要在Google Play中允许用户下载应用的旧版本,可以使用应用程序的版本控制。版本控制是指在提交新应用版本时,将每个版本的版本号逐次递增,以便用户可以选择下载以前的版本。

在应用程序的build.gradle文件中,设置应用程序的版本号:

defaultConfig {
    versionCode 1
    versionName "1.0"
    ...
}

在Google Play Developer Console中,上传新的版本,并在“版本”选项卡中设置版本号。如果您拥有早期版本的APK文件,可以通过在“发布历史记录”中上传到较旧的版本,供用户重新下载。

可以通过以下代码,让应用程序提示用户更新最新版本:

private void checkForUpdates() {
    DatabaseReference ref = FirebaseDatabase.getInstance().getReference("version");
    ref.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            int versionCode = dataSnapshot.getValue(Integer.class);
            if (versionCode > getAppVersionCode()) {
                // Open Google Play to update the app
                Intent intent = new Intent(Intent.ACTION_VIEW,
                        Uri.parse("market://details?id=" + getPackageName()));
                startActivity(intent);
            }
        }

        @Override
        public void onCancelled(DatabaseError databaseError) {

        }
    });
}

private int getAppVersionCode() {
    PackageManager pm = getPackageManager();
    try {
        PackageInfo pInfo = pm.getPackageInfo(getPackageName(), 0);
        return pInfo.versionCode;
    } catch (PackageManager.NameNotFoundException e) {
        e.printStackTrace();
        return 0;
    }
}

在此示例中,应用程序检索Firebase数据库中存储的版本号。如果该版本号大于当前应用程序的版本号,则会打开Google Play以更新应用程序。

【注意】:在更新应用程序期间,用户尚未下载的旧版本应始终在Google Play上可用。在提交新版本时,确保应用程序的版本号逐次递增。