iOS CFBundleVersion将浮动
是否有办法将CbundLeverVersion变量(NSString)更改为浮点 我的版本目前是“1.0.2”,但当我从中解析floatValue时,它将返回1.00000 如何解析它,以便获得该值:1.02000iOS CFBundleVersion将浮动,ios,nsstring,floating-point,version,Ios,Nsstring,Floating Point,Version,是否有办法将CbundLeverVersion变量(NSString)更改为浮点 我的版本目前是“1.0.2”,但当我从中解析floatValue时,它将返回1.00000 如何解析它,以便获得该值:1.02000 谢谢。这是不可能的。有两个小数点,没有明确的方式将其表示为浮点。您可以滚动自己的代码将其转换为其他内容,但基本上这种方法是有缺陷的。尝试以下方法:- CGFloat versionNumber; NSArray *versionItems = [[[NSBundle
谢谢。这是不可能的。有两个小数点,没有明确的方式将其表示为浮点。您可以滚动自己的代码将其转换为其他内容,但基本上这种方法是有缺陷的。尝试以下方法:-
CGFloat versionNumber;
NSArray *versionItems = [[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"] componentsSeparatedByString:@"."];
if (versionItems.count == 3)
{
NSInteger major = [[versionItems objectAtIndex:0] integerValue];
NSInteger minor = [[versionItems objectAtIndex:1] integerValue];
NSInteger bug = [[versionItems objectAtIndex:2] integerValue];
versionNumber = [[NSString stringWithFormat:@"%ld.%ld%ld",(long)major,(long)minor,(long)bug] floatValue];
}
else
{
versionNumber = [[[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleShortVersionString"] floatValue];
}
我想知道我的应用程序是否在上次启动后更新过。因为你不降级,所以检查是否相等通常就足够了。