Android判断应用首次安装以及首次安装打开

介绍

上次接了一个有在用户首次安装打开App的给用户展现一些引导内容(覆盖安装时不显示)的需求,在筛选了几种方法以后,选出了一个最优的方法。ui

实现

Android PackageInfo类中提供了两个变量firstInstallTimelastUpdateTime,其中firstInstallTime表示App首次安装的时间戳,lastUpdateTime表示App上次更新的时间,当用户首次安装App的时候,这两个值会相等。而且这两个时Android系统来维护的,清除数据不会清除firstInstallTimelastUpdateTime的值。这样就很好实现咱们的需求了。 代码以下:spa

判断是否首次安装code

fun checkIsFirstInstall(): Boolean {
        val instance = MyApplication.instance
        val packageManager = instance.packageManager
        val packageInfo = packageManager.getPackageInfo(instance.packageName, 0)
        return packageInfo.firstInstallTime == packageInfo.lastUpdateTime
    }
复制代码

判断是否时首次安装打开get

经过SharePreferences来处理是不是首次打开,二者组合就能够判断是不是首次安装打开了it

fun checkIsFirstOpen(): Boolean {
        return checkIsFirstInstall() && SPUtils.getData(Constant.Key.IS_FIRST_OPEN, true)
    }
复制代码
相关文章
相关标签/搜索