首页 > 解决方案 > 在 App Update 中看到更新,但无法安装

问题描述

我将InAppUpdater 库用于 Android 应用内更新。

为了测试,我创建了一个简单的应用程序versionCode 3(在此之前我versionCode 2在内部测试轨道中发布,但我没有在我的应用程序中看到更新versionCode 1)并将其上传到 Google play 的封闭轨道(alpha 版)中。在我安装的 Android 设备上versionCode 2

代码:

public class UpdateActivity extends AppCompatActivity {

    private UpdateManager mUpdateManager;

    static final int REQUEST_CODE = 781;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_update);

        TextView txtCurrentVersion = findViewById(R.id.currentVersion);
        TextView txtAvailableVersion = findViewById(R.id.availableVersion);

        txtCurrentVersion.setText(String.valueOf(BuildConfig.VERSION_CODE));

        // Initialize the Update Manager with the Activity and the Update Mode
        mUpdateManager = UpdateManager.Builder(this);

        // Callback from Available version code
        mUpdateManager.getAvailableVersionCode(code -> txtAvailableVersion.setText(String.valueOf(code)));
    }

    @Override
    protected void onResume() {
        super.onResume();
        // Continue updates when resumed
        mUpdateManager.continueUpdate();
    }


    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == REQUEST_CODE) {
            if (resultCode == RESULT_OK) {
                Log.d("MyTag", "Result ok! Result code: " + resultCode);
            }
            else if(resultCode == RESULT_CANCELED){
                Log.d("MyTag", "Result canceled! Result code: " + resultCode);

            }
            else if(resultCode == ActivityResult.RESULT_IN_APP_UPDATE_FAILED){
                Log.d("MyTag", "In app update failed! Result code: " + resultCode);

            }
        }
    }


    public void tryToUpdate(View view){
        mUpdateManager.mode(UpdateManagerConstant.FLEXIBLE).start();
    }

}

启动后,我看到当前版本 = 2,可用版本 = 3,因此应用程序看到了更新。接下来我单击tryToUpdate按钮并看到更新对话框,单击“更新”,等待,看到“刚刚下载了更新”,单击“重新启动”,查看安装活动,之后我的应用程序重新启动,我看到旧版本 - 当前version = 2,这就是问题所在。当然,我尝试手动关闭和打开应用程序,但我仍然看到旧版本。但是,如果我删除旧版本并从 Google Play 手动安装新版本,那么一切正常。

那么,我该如何解决呢?

标签: androidgoogle-play

解决方案


推荐阅读