zoukankan      html  css  js  c++  java
  • 判断ios是app第一次启动

    首次运行的应用程序加入一些help 或者 宣传动画 现在变的很重要了。 
    一个有用的例子是发送一个分析实例。这可能是一个很好的方法来确定有多少人下载实用应用程序。有人会说:“但是,嘿,苹果AppStore已经告诉我,应用程序的下载量了”。

    流行的解决方案是在大多数地方是用[NSUserDefaults
    standardUserDefaults的一个关键,如果它不存在,这意味着这是应用程序启动,否则,它不是第一次。然后,它说设置成后者在该方法的关键:“applicationWillTerminate:(UIApplication*)application”。这一解决方案非常好,直到我们得到的iOS
    4.0。在iOS
    4.0
    +这种方法很少被称为(只适用于内存问题)在苹果的UIApplicationDelegate文档中所述。...

    你可以搜索的关键,如果它未设置运行 first-time-code,并设置它,但在app的其余部分你将无法知道它是不是第一次运行(除非你使用一个全局变量)

    因此,我建议我的解决方案:...

    在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



    转载仅供参考,版权属于原作者
  • 相关阅读:
    sqlserver中判断表或临时表是否存在
    Delphi 简单方法搜索定位TreeView项
    hdu 2010 水仙花数
    hdu 1061 Rightmost Digit
    hdu 2041 超级楼梯
    hdu 2012 素数判定
    hdu 1425 sort
    hdu 1071 The area
    hdu 1005 Number Sequence
    hdu 1021 Fibonacci Again
  • 原文地址:https://www.cnblogs.com/lisjie/p/5135028.html
Copyright © 2011-2022 走看看