这是一个艰难的问题: 假设有一个SDK在某个时间点包含在应用程序中。这款应用程序在市场上已经有相当长的一段时间了,但是自从最新的版本以后,SDK就已经集成了。因此,有获得与SDK应用两种方式的客户包括:确定是否新安装或更新
- 此人以前是没有的应用程序,并下载最新版本
- 的人已经有安装了旧版本的应用程序没有SDK和SDK更新到新版本
现在,当应用程序第一次打开时,SDK如何决定应用程序是否已安装或更新?
有些事情,我认为,没有成功:
一个可以搜索安装应用程序时创建,从来没有从该点改变的文件。只需查看最后修改的字段,即可知道应用何时安装。我在data/data /中找到了lib文件,但每次应用程序更新时它都会更新,因此没有用处。编辑:为什么它的导入文件从未改变的原因是没有办法来访问文件创建时间,所以我们必须确保最后修改==创建时间
sdk应该是兼容的与Android 1.6,所以它的< API 9,我无法访问PackageInfo.firstInstallTime字段。
我不认为我有权访问数据/应用程序以查看apk的iteself,但即使我可以,每当我更新应用程序时,apk都会被替换,所以最后修改会给我上次更新的时间,而不是安装。
感谢您的帮助。
阻止用户重新安装以前安装的应用程序http://stackoverflow.com/q/8426963/1012284 – 2012-07-23 14:10:23
对不起,但我没有看到与我的问题的连接。 – Kuno 2012-07-23 14:51:34