iOS开发 - 不进入待机(屏幕保持唤醒)---UIApplication学习
- iOS开发 - 不进入待机(屏幕保持唤醒)---UIApplication学习
-
如果你不希望应用运行时 iPhone 进入锁屏待机状态,加入下面这行代码即可
顺便, 学习了下 UIApplication。
iPhone应用程序是由主函数main启动,它负责调用UIApplicationMain函数,该函数的形式如下所示:
对准UIApplicationMain, option+鼠标点击。 即可查看。
那么UIApplicationMain函数到底做了哪些事情呢?这个函数主要负责三件事情:
1)从给定的类名初始化应用程序对象,也就是初始化UIApplication或者子类对象的一个实例,如果你在这里给定的是nil,那么 系统会默认UIApplication类,也就主要是这个类来控制以及协调应用程序的运行。在后续的工作中,你可以用静态方法sharedApplication 来获取应用程序的句柄。
2)从给定的应用程序委托类,初始化一个应用程序委托。并把该委托设置为应用程序的委托,这里就有如果传入参数为nil,会调用函数访问 Info.plist文件来寻找主nib文件,获取应用程序委托。
3)启动主事件循环,并开始接收事件。
上面是UIApplicationMain函数的工作,接下来一个问题是应用程序视图的显示、消息的控制怎么办? - 下面就是UIApplication
- 4.阻止屏幕变暗进入休眠状态
- //阻止屏幕变暗,慎重使用,缺省为no 2.0
- [UIApplication sharedApplication].idleTimerDisabled =YES;
- 慎重使用本功能,因为非常耗电。
- 5.显示联网状态
- //显示联网标记 2.0
- [UIApplication sharedApplication].networkActivityIndicatorVisible =YES;
- 6.在map上显示一个地址
- NSString* addressText =@"1 Infinite Loop, Cupertino, CA 95014";
- // URL encode the spaces
- addressText = [addressText stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];
- NSString* urlText = [NSString stringWithFormat:@"http://maps.google.com/maps?q=%@", addressText];
- [[UIApplication sharedApplication]openURL:[NSURLURLWithString:urlText]];
- 7.发送电子邮件 NSString *recipients =@"mailto:first@example.com?cc=second@example.com,third@example.com&subject=Hello from California!";
- NSString *body =@"&body=It is raining in sunny California!";
- NSString *email = [NSString stringWithFormat:@"%@%@", recipients, body];
- email = [email stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
- [[UIApplication sharedApplication]openURL:[NSURLURLWithString:email]];
- 8.打电话到一个号码
- // Call Google 411
- [[UIApplication sharedApplication]openURL:[NSURLURLWithString:@"tel://8004664411"]];
- 9.发送短信
- // Text to Google SMS
- [[UIApplication sharedApplication]openURL:[NSURLURLWithString:@"sms://466453"]];
- 10.打开一个网址 // Lanuch any iPhone developers fav site [[UIApplication sharedApplication]openURL:[NSURLURLWithString:@"http://itunesconnect.apple.com"]];