app判断时区 ios
2014-01-23 17:32:45 shjborage 阅读数 1667
有时可能会用到,比较实用的东西

 

   

- (BOOL)isInChina {

    BOOL result = NO;

    

   //NSString* localeStr = [[[NSUserDefaults standardUserDefaults] objectForKey:@"AppleLanguages"] objectAtIndex:0];

    if([[[NSTimeZone localTimeZone] name] rangeOfString:@"Asia/Chongqing"].location == 0 ||

       [[[NSTimeZone localTimeZone] name] rangeOfString:@"Asia/Harbin"].location == 0 ||

       [[[NSTimeZone localTimeZone] name] rangeOfString:@"Asia/Hong_Kong"].location == 0 ||

       [[[NSTimeZone localTimeZone] name] rangeOfString:@"Asia/Macau"].location == 0 ||

       [[[NSTimeZone localTimeZone] name] rangeOfString:@"Asia/Shanghai"].location == 0 ||

       [[[NSTimeZone localTimeZone] name] rangeOfString:@"Asia/Taipei"].location == 0)

    {

        result = YES;

    }

    return result;

}

2015-12-26 16:19:25 cj772728583 阅读数 271

流行的解决方案是在大多数地方是用[NSUserDefaults standardUserDefaults的一个关键,如果它不存在,这意味着这是应用程序启动,否则,它不是第一次



在appdelegate.m中找到 “application:didFinishLaunchingWithOptions:” 方法, 添加以下代码:
 
if (![[NSUserDefaults standardUserDefaults] boolForKey:@"everLaunched"]) {
   [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"everLaunched"];
   [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"firstLaunch"];
}
else{
   [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"firstLaunch"];
}
 
总的解决办法是 2 个key: @”everLaunched”判断用户以前是否登录,
 
                                             @”firstLaunch” 用来开发者在程序的其他部分判断.
 
在第一次启动的时候 key @”everLaunched” 不会被赋址的, 并且设置为YES. @”firstLaunch” 被设置为 YES.
在程序的其他部分用以下代码判断:
 
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"firstLaunch"]) {
   // 这里判断是否第一次
 
 
UIAlertView *alert=[[UIAlertView alloc] initWithTitle:@"第一次"
                                                                         message:@"进入App"
                                                                      delegate:self
cancelButtonTitle:@"我知道了"
otherButtonTitles:nil];
[alert show];
[alert release];
 
}
第一段代码运行key @”firstLaunch” 将被设置为 NO

2012-12-15 23:17:00 weixin_33804582 阅读数 3


流行的解决方案是在大多数地方是用[NSUserDefaults standardUserDefaults的一个关键,如果它不存在,这意味着这是应用程序启动,否则,它不是第一次


在appdelegate.m中找到 “application:didFinishLaunchingWithOptions:” 方法, 添加以下代码: 

if (![[NSUserDefaults standardUserDefaults] boolForKey:@"everLaunched"]) { 
   [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"everLaunched"]; 
   [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"firstLaunch"]; 
} 
else{ 
   [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"firstLaunch"]; 
} 

总的解决办法是 2 个key: @”everLaunched”判断用户以前是否登录, 

                                             @”firstLaunch” 用来开发者在程序的其他部分判断. 

在第一次启动的时候 key @”everLaunched” 不会被赋址的, 并且设置为YES. @”firstLaunch” 被设置为 YES. 
在程序的其他部分用以下代码判断: 

if ([[NSUserDefaults standardUserDefaults] boolForKey:@"firstLaunch"]) { 
   // 这里判断是否第一次 


UIAlertView *alert=[[UIAlertView alloc] initWithTitle:@"第一次" 
                                                                         message:@"进入App" 
                                                                      delegate:self 
cancelButtonTitle:@"我知道了" 
otherButtonTitles:nil]; 
[alert show]; 
[alert release]; 

} 
第一段代码运行key @”firstLaunch” 将被设置为 NO。

转载于:https://my.oschina.net/amoyai/blog/96121

2016-08-23 11:05:00 weixin_33743880 阅读数 9
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

说明:当应用程序启动时执行,应用程序启动入口。只在应用程序启动时执行一次。application参数用来获取应用程序的状态、变量等,值得注意的是字典参数:(NSDictionary *)launchOptions,该参数存储程序启动的原因。

1.若用户直接启动,lauchOptions内无数据;
2.若由其他应用程序通过openURL:启动,则UIApplicationLaunchOptionsURLKey对应的对象为启动URL(NSURL),UIApplicationLaunchOptionsSourceApplicationKey对应启动的源应用程序的bundle ID (NSString);

3.若由本地通知启动,则UIApplicationLaunchOptionsLocalNotificationKey对应的是为启动应用程序的的本地通知对象(UILocalNotification);

4.若由远程通知启动,则UIApplicationLaunchOptionsRemoteNotificationKey对应的是启动应用程序的的远程通知信息userInfo(NSDictionary);

其他key还有UIApplicationLaunchOptionsAnnotationKey,UIApplicationLaunchOptionsLocationKey,
UIApplicationLaunchOptionsNewsstandDownloadsKey。 如果要在启动时,做出一些区分,那就需要在下面的代码做处理。
2013-03-28 15:58:53 SergioWoo 阅读数 652

在appdelegate.m中找到 “application:didFinishLaunchingWithOptions:” 方法, 添加以下代码:

if (![[NSUserDefaults standardUserDefaults] boolForKey:@"everLaunched"]) {
   [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"everLaunched"];
   [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"firstLaunch"];
}
else{
   [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"firstLaunch"];
}

总的解决办法是 2 个key: @”everLaunched”判断用户以前是否登录,

                                             @”firstLaunch” 用来开发者在程序的其他部分判断.

在第一次启动的时候 key @”everLaunched” 不会被赋址的, 并且设置为YES. @”firstLaunch” 被设置为 YES.
在程序的其他部分用以下代码判断:

if ([[NSUserDefaults standardUserDefaults] boolForKey:@"firstLaunch"]) {
   // 这里判断是否第一次


UIAlertView *alert=[[UIAlertView alloc] initWithTitle:@"第一次"
                                                                         message:@"进入App"
                                                                      delegate:self
cancelButtonTitle:@"我知道了"
 otherButtonTitles:nil];
[alert show];
[alert release];

}
第一段代码运行key @”firstLaunch” 将被设置为 NO。 

判断程序是否是第一次启动

博文 来自: lvchao1122
没有更多推荐了,返回首页