iphone - 我们可以从App Store for iPhone获取应用程序的版本号吗?

标签 iphone objective-c app-store version itunes

不是使用网络服务获取当前应用程序版本号并在我的代码中比较它以弹出更新警报,有没有办法直接从 App-Store/i-Tunes 获取应用程序版本号?

看完所有评论后,如果我错了,请纠正我。

  1. 我们不应该以编程方式向用户显示有关新更新可用性的本地通知(作为警报)?

我通过了 HIG 指南,但无法找到这样的标准。在决定时很少感到困惑。

最佳答案

像这样的警告更新肯定会违反 Apple 准则。对于 iOS 设备,应用程序警报由 App 商店应用程序显示,并带有显示可用更新数量的徽章。开发人员无需执行任何操作。

如果您担心用户会错过您的应用更新,请放心,iOS 用户会密切关注应用商店应用并知道所有更新都是通过它进行的。

但是,有一些技巧可以让您在不联系任何网络服务或 iTunes/App 商店的情况下确定这是您在更新后的第一次运行。

我所知道的黑客之一:

获取库目录路径-

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
NSString *libPath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;

libPath 类似于 -/var/mobile/Applications/8CFB747F-9446-44CB-98B9-C6FF1CF7BF93/Library

/Library 之前的这个随机字符串会随着每次更新而变化。您可以将此字符串保存在 NSUserDefaults 中,并在每次启动时将路径与保存的字符串进行比较。如果发现字符串不同,则说明这是您更新后的第一次运行。显示更新提醒!然后用新字符串更新保存的字符串。

关于iphone - 我们可以从App Store for iPhone获取应用程序的版本号吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7592880/

相关文章:

iphone - 以随机时间间隔执行方法

iphone - 后台 iOS 应用程序是否会收到显示屏即将进入休眠状态的通知?

objective-c - 任何人都可以举例说明在 Objective-C 中针对普通类而不是类别或协议(protocol)的前向声明吗?

objective-c - 在 UITableViewCell 中带有 CheckBox 的 CoreData

iphone - 在设置中临时禁用后 CLLocationManager 不返回位置

app-store - iTunesConnect - 如何检索现有应用程序的 1024x1024 图标?

iphone - 将更新应用程序发送到AppStore并通知用户

iphone - NS正则表达式 : How to match word starting with @

ios - 如何将在应用商店购买的新东西集成到我的 iPhone 应用中?

ios - 是否可以判断用户何时更新应用程序?