AppStoreVersion 1.0.5

AppStoreVersion 1.0.5

iMac0de 强制。



  • 作者:
  • iMac0de

AppStoreVersion

由于维护某些功能(特别是如果您有一个随着开发的应用程序版本而发展的REST API)并不总是容易,所以决定创建这个框架来检查用户是否拥有可用的最新版本。

Version Build Status License Platform Swift

安装

AppStoreVersion 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的Podfile

pod 'AppStoreVersion'

使用

本框架的使用非常简单。您有两种方法来检查已安装版本是否为最新版本。

最简单的方法😎

如果您想让框架管理向用户显示的提示警报,只需在检查版本的代码位置调用即可

AppStoreVersion.check(bundle: Bundle.main)

如果您的应用程序安装的版本是最新的,则它将不执行任何操作。如果不是,它将使用UIAlertAction向用户显示一个UIAlertView,并将其重定向到AppStore中您应用程序的页面。

自由之路🚀

如果您想管理用户的显示,这同样很简单,您只需调用

AppStoreVersion.check(bundle: Bundle.main) { (upToDate, error) in
    if error != nil {
        print(error!.localizedDescription)
    } else if !upToDate {
	    //TODO: Display to the users that their not using the latest version.
    }
}

本地化

此框架基于当前设备本地化,如果没有当前区域设置的本地化翻译,将使用英文版本显示。

可用

🇬🇧 🇫🇷

添加本地化

寻找翻译?创建一个拉取请求或打开一个问题。

示例
AppStoreVersion.NewVersionTitle 有新版本可用! 
AppStoreVersion.NewVersionMessage AppStore中的版本%@可用。
AppStoreVersion.Download 下载
AppStoreVersion.Later 稍后

配置

为了成为一个非常灵活的框架,您可以直接从代码中配置一些特性和数据。

例如,默认情况下,框架显示给用户的提示框会提供一个“稍后”按钮,可以隐藏UIAlertViewController。如果您想强制用户下载最新版本,只需说出来

AppStoreVersion.Config.optional = false

您也可以自己配置本地化

AppStoreVersion.Config.Alert.title = "New version!"
AppStoreVersion.Config.Alert.message = "Find out our new features."
AppStoreVersion.Config.Alert.downloadActionTitle = "Let's do it!"
AppStoreVersion.Config.Alert.laterActionTitle = "No, thanks."

默认值

配置 默认
AppStoreVersion.Config.optional
AppStoreVersion.Config.Alert.title NSLocalizedString("AppStoreVersion.NewVersionTitle", comment: "")
AppStoreVersion.Config.Alert.message NSLocalizedString("AppStoreVersion.NewVersionMessage", comment: "")
AppStoreVersion.Config.Alert.downloadActionTitle NSLocalizedString("AppStoreVersion.Download", comment: "")
AppStoreVersion.Config.Alert.laterActionTitle NSLocalizedString("AppStoreVersion.Later", comment: "")

错误

框架扩展了 `Error` 以通知以下错误

案例 描述
invalidAppStoreResponseCode 如果请求App Store查找API返回无效响应代码,则返回。
unableToReadAppStoreResponse 如果框架无法读取从App Store查找API返回的JSON,则返回。
mandatoryKeysNotFound 如果框架无法在从App Store查找API返回的JSON中找到必需的密钥,则返回。
appStoreVersionNotFound 如果框架无法在从App Store查找API返回的JSON中找到您的应用的App Store版本,则返回。

贡献

此框架非常简单,我希望它保持这样。但任何新的功能或建议都始终欢迎,因此请随意提出拉取请求或打开问题。

作者

❤️iMac0de 从法国波尔多制作🇫🇷🍷

使用此框架的应用程序

Elyot