首页 前端 ios 正文

ios应用程序相关文件和启动流程介绍

long 2021-09-21 09:02 ios 人气61

ios开发,项目重要的配置文件info.plist文件。


Bundle Versions String,Short(CFBundleShortVersionString):应用程序版本(上传appstore里的版本)

Bundle Version:内部版本?

Bundle Identifier:应用的唯一标识

Main StoryBoard file base main:应用程序启动加载的storyboard名字


获取info.plist里的值

[[[NSBundle mainBundleinfoDictionaryobjectForKey:@"version"];


pch文件

就是项目头文件导入文件(xcode新版本已经没了)


UIApplication类,主要执行应用级别的操作

获取应用程序对象:[UIApplication sharedApplication]

[[UIApplication sharedApplicationopenURL:[NSURL URLWithString:urlString]];//打开地址、启动其他程序、打电话?

[UIApplication sharedApplication].statusBarHidden = NO;//隐藏任务栏

应用程序主窗口:keyWindow

应用程序所有可见、不可见window:windows


AppDelegate类,应用程序代理对象

didFinishLaunchingWithOptions 应用程序加载完成执行。

applicationWillResignActive 即将变为不活跃状态

applicationDidBecomeActive 应用变为活跃状态

applicationWillTerminate 应用即将销毁



UIApplicationMain,死循环函数,运行循环。


应用启动过程:

1、入口:main.m main函数

2、创建自动释放池

3、执行UIApplicationMain 永远不会返回,保证程序不会销毁,第三参数nil,代表UIApplication,即程序启动后会创建UIApplication对象。第四个参数,创建应用程序代理AppDelegate对象。这个代理对象,作为UIApplication对象的delegate属性值。

4、AppDelegate里有window属性。这个会作为应用程序的keyWindow。

5、最后加载配置文件中指定的storyboard文件中带箭头的控制器。


加载自定义控制器:

在代理方法didFinishLaunchingWithOptions 方法里写代码:

1、创建窗口,指定大小,self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];

2、创建控制器,设置为根控制器。self.window.rootViewController = customerController;

3、设置窗口为应用程序主窗口。[self.window makeKeyAndVisible];


公众号
小程序
网站统计
  • 文章总数:300
  • 总点击量:61986
  • 评论总数:27
  • 网站运行:576 天