首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏谈补锅

    UIApplication

    1、UIApplication对象是应用程序的象征,每一个应用都有自己的UIApplication对象,而且是单列的 2、通过[UIApplication sharedApplication]获取这个单列对象 3、一个ios程序启动后创建的第一个对象就是UIApplication对象 4、UIApplication的常见属性: //设置应用程序图标右上角的红色提醒数字 @property(nonatomic 管理(一个应用程序的状态栏都由它统一管理)         使用UIApplication来管理状态栏,先修改info.plist的设置:View controller-based status bar appearance  的值为NO 6、UIApplication的openURL方法:-  (BOOL) openURL: (NSURL *)url;     使用例子:UIApplication   函数会根据principalClassName创建UIApplication对象,根据delegateClass创建一个delegate对象,并将delegate对象赋值给UIApplication对象中

    72930发布于 2018-09-27
  • 来自专栏宜达数字

    iOS开发--UIApplicationUIApplication的Delegate

    UIApplication 1.UIApplication —是应用程序的象征,每个应用都是UIApplication对象,而且是单例 单例通过 : share开头 [UIApplication sharedApplication ] 2.UIApplication的常用属性 应用右上角的数字 @property(nonatomic) NSInteger applicationIconBadgeNumber 设置联网指示器的可见性 Paste_Image.png UIApplication一联网状态 ? Paste_Image.png UIApplication一打开网页(在button中打开) ? Paste_Image.png UIApplication的delegate 所有的移动操作系统都有个致命的缺点,容易受打扰。 *)launchOptions UIApplication的代理实现: ?

    82520发布于 2020-06-02
  • 来自专栏xx_Cc的学习总结专栏

    iOS-UIApplication详解iOS-UIApplication详解

    iOS-UIApplication详解 ✨建议收藏,用到时候一查就明白了 xx_cc UIApplication简介 UIApplication对象是应用程序的象征。 每一个应用程序都有自己的UIApplication对象,而且是单例。 一个iOS程序启动后创建的第一个对象就是UIApplication对象。 通过UIApplication *app = [UIApplication sharedApplication];可以获得这个单例对象。 利用UIApplication对象能进行一些应用级别的操作。 UIApplication单例实现原理 首先我们知道UIApplication对象是单例创建的,也就是说程序中UIApplication对象只创建一次,我们不能再新建UIApplicaiton对象。 UIApplication *app = [UIApplication sharedApplication]; app.idleTimerDisabled =YES; UIApplication

    2K70发布于 2018-05-10
  • 来自专栏iOS打包,上架知识大全

    UIApplication 基础篇介绍

    还有UIApplication是不是也深入了解过? UIApplication,代表的是整个应用做的事,因此每个程序只能有一个,系统使用的是单例模式,就是上面的[UIApplication sharedApplication]来得到一个实例。 1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就代表一个应用程序。 (2)每一个应用都有自己的UIApplication对象,而且是单例的,如果试图在程序中新建一个UIApplication对象,那么将报错提示。 获取该程序的UIApplication对象 UIApplication *app=[UIApplication sharedApplication]; app.applicationIconBadgeNumber

    56310编辑于 2023-03-22
  • 来自专栏appuploader使用操作流程

    UIApplication 介绍基础篇介绍

    还有UIApplication是不是也深入了解过? UIApplication,代表的是整个应用做的事,因此每个程序只能有一个,系统使用的是单例模式,就是上面的[UIApplication sharedApplication]来得到一个实例。 1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就代表一个应用程序。 (2)每一个应用都有自己的UIApplication对象,而且是单例的,如果试图在程序中新建一个UIApplication对象,那么将报错提示。 获取该程序的UIApplication对象 UIApplication *app=[UIApplication sharedApplication]; app.applicationIconBadgeNumber

    68720编辑于 2023-04-13
  • 来自专栏iOS打包,上架知识大全

    2022完整版UIApplication的介绍以及应用

    2022完整版UIApplication的介绍以及应用 UIApplication的介绍以及应用 UIApplication是一个系统单例,不论在程序何时创建,都只有一块内存。 可以这样:[UIApplication sharedApplication].applicationIconBadgeNumber = 10; 注意:设置这个 需要app注册推送通知服务:[UIApplication 那么就可以使用UIApplication 来管理状态栏。 如下: [[UIApplication sharedApplication] setStatusBarHidden:YES]; 4,uniapplication相关方法。 principalClassName:委托方类名,这个类实时检测当前程序的运行状态,这个参数一定要是 UIApplication 类或其子类,如果参数为空 nil,默认为 UIApplication

    68110编辑于 2023-03-22
  • 来自专栏TechBox

    浅析UIApplication生命周期的一些delegate方法

    而是介绍一下UIApplication会在什么情况下调用UIApplicationDelegate的哪些方法。以及常见的场景下,哪些方法会被调用,苹果为什么会这样做。 { NSLog(@"程序启动完成:%s",__func__); return YES; } - (void)applicationDidBecomeActive:(UIApplication ``` - (void)applicationDidEnterBackground:(UIApplication *)application; ``` > 结论:双击home键切换应用。 :(UIApplication *)application;(杀死程序时调用这两个方法) - (void)applicationWillTerminate:(UIApplication *)application ``` - (void)applicationWillTerminate:(UIApplication *)application; ``` **为什么呢?

    8.5K30发布于 2018-06-05
  • 来自专栏進无尽的文章

    基础篇-UIApplication、UIWindow以及程序的启动流程看我就够了

    UIApplication 简单介绍 UIApplication的一个主要工作是处理用户事件,它会起一个队列,把所有用户事件都放入队列,逐个处理,在处理的时候,它会发送当前事件到一个合适的处理事件的目标控件 1.UIApplication对象是应用程序的象征,一个UIApplication对象就代表一个应用程序。 2.每一个应用都有自己的UIApplication对象,而且是单例的,如果试图在程序中新建一个UIApplication对象,那么将报错提示。 一个iOS程序启动后创建的第一个对象就是UIApplication对象,且只有一个(通过代码获取两个UIApplication对象,打印地址可以看出地址是相同的)。 UIApplication的代理.

    2.1K20发布于 2018-09-12
  • 来自专栏非典型技术宅

    iOS四大对象之AppDelegate及UIApplicationMain函数/程序启动过程1. AppDelegate应用程序代理2. UIApplicationMain函数/程序启动过程

    还有很多其它类似的情况会导致app受到干扰,在app受到干扰时,会产生一些系统事件,这时UIApplication会通知它的delegate对象,让delegate代理来处理这些系统事件。 - 可以交互 - (void)applicationDidBecomeActive:(UIApplication*)application // 程序挂了,将要完全退出。 :(UIApplication *)application 2. 如果传nil默认就表示UIApplication类。 Paste_Image.png 1.3 完整启动过程 main函数 UIApplicationMain 创建UIApplication对象 创建UIApplication的delegate对象 delegate

    1.5K50发布于 2018-06-28
  • 来自专栏晨光的Code

    iOS11下[UIApplication sharedApplication].windows的问题

    app在iOS11下存在一个bug是点击图片不能显示大图调试发现是因为在iOS11上把大图添加到window上之后不显示 for (int i = [UIApplication sharedApplication ].windows.count - 1; i >= 0; i--) { UIWindow *window = [UIApplication sharedApplication].windows = window; break; } }在iOS11中,使用UIApplication sharedApplication.windows获取的最顶层的window for (int i = [UIApplication sharedApplication].windows.count - 1; i >= 0; i--) { UIWindow *window = [UIApplication sharedApplication].windows[i]; if (window.frame.size.width == [UIApplication

    1.2K50编辑于 2022-12-01
  • 来自专栏iOS逆向与安全

    iOS小技能:设置状态栏背景颜色(图片)

    引言 设置状态栏背景颜色的解决方案: 使用新的API 【statusBarManager】 通过安全区域高度判断是否IphoneX之后的机型:if ([UIApplication sharedApplication 旧代码 UIView *statusBar = [[[UIApplication sharedApplication] valueForKey:@"statusBarWindow"] valueForKey 但是如果有状态是有透明或者半透明的效果,上面这个方法还是不能胜任,越透明越明显;经过一番查找,终于发现问题: 问题: 1、iOS 13之前,可以通过valueForKey 获取UIApplication 的statusBar,因为UIApplication是单例,因此,在iOS 12,通过: [[[UIApplication sharedApplication] valueForKey:@"statusBarWindow 通过上面的代码获取statusBar时,发现每次每次获取都调用 alloc:init的方法,重新生成一个statusBar;然后添加到UIApplication的keyWindow上,再设置背景颜色。

    2.7K40编辑于 2022-08-22
  • 来自专栏iOS开发日记

    iOS开发系列——第一个iOS程序和运行过程

    类,用户可以自定义一个类继承于这个类;如果为nil则等价于NSStringFromClass([UIApplication class]),大家可以自己试验,效果完全一样;UIApplication是单例模式 ,一个应用程序只有一个UIApplication对象或子对象; 第四个参数是UIApplication的代理类字符串,默认生成的是AppDelegate类,这个类主要用于监听整个应用程序生命周期的各个事件 对象,这个对象会根据第四个参数AppDelegate创建并指定此对象为UIApplication的代理;同时UIApplication会开启一个消息循环不断监听应用程序的各个活动,当应用程序生命周期发生改变 UIApplication就会调用代理对应的方法。 既然应用程序UIApplication是通过代理和外部交互的,那么我们就有必要清楚AppDelegate的操作细节,下面是UIApplication详细的代码: AppDelegate.h // //

    2.3K60发布于 2018-05-05
  • 来自专栏娱乐心理测试

    iOS AppDelegate方法,监听进程在后台、被杀死事件

    AppDelegate中一些常用方法: - (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary NSLog(@"启动程序,didFinishLaunchingWithOptions"); returnYES; } - (void)applicationWillResignActive:(UIApplication )application { NSLog(@"变为活跃状态,applicationDidBecomeActive"); } - (void)applicationWillTerminate:(UIApplication *)application { NSLog(@"程序被杀死,applicationWillTerminate"); } - (void)application:(UIApplication*)application ] beginBackgroundTaskWithExpirationHandler:^(){}]; } - (void)applicationWillTerminate:(UIApplication

    4.7K30发布于 2018-08-02
  • 来自专栏哈雷彗星撞地球

    (译)openURL 在 iOS10中已弃用

    打开外部链接一般都是用来调起别的App,比如调起打电话、邮件、QQ、微信、支付宝等) iOS 10 中的更新 苹果在UIKit相关的 What’s New in iOS 文档中提到: The new UIApplication 翻译如下: 新的UIApplication 方法`openURL:options:completionHandler:` 会异步执行,并在主队列中调用这个指定的 `completion handler` *application = [UIApplication sharedApplication]; [application openURL:URL options:@{} completionHandler :nil]; // Swift UIApplication.shared.open(url, options: [:], completionHandler: nil) 实际上,只要你仍需要支持iOS 显示 Objective-C代码: - (void)openScheme:(NSString *)scheme { UIApplication *application = [UIApplication

    3.5K10发布于 2018-08-22
  • 来自专栏游戏杂谈

    IOS隐藏键盘

    UIWebView*)webView {     [activityIndicatorView_ startAnimating];         // update by zhangyi     [[[UIApplication sharedApplication] keyWindow] endEditing:YES];     [[UIApplication sharedApplication] sendAction:@selector )webViewDidFinishLoad:(UIWebView*)webView {     [activityIndicatorView_ stopAnimating];         [[[UIApplication sharedApplication] keyWindow] endEditing:YES];     [[UIApplication sharedApplication] sendAction:@selector sharedApplication] keyWindow] endEditing:YES];        [[UIApplication sharedApplication] sendAction

    1.7K20发布于 2018-11-19
  • 来自专栏韦弦的偶尔分享

    在iOS上清除应用的启动屏幕缓存

    因此,要完全清除应用程序的启动屏幕缓存,您所需要做的就是在应用程序内部运行以下代码(我已将该代码扩展到UIApplication的中): import UIKit public extension UIApplication 使用: UIApplication.shared.clearLaunchScreenCache() 以上内容来自Quick tip: clearing your app’s launch screen cache on iOS 简单翻译一下搬运过来,希望有用 附: 文章提到的缓存目录在沙盒下如下图所示: [app启动图缓存.png] OC代码,创建一个UIApplication 的 Category #import "UIApplication+LaunchScreen.h" @implementation UIApplication (LaunchScreen) - (void)clearLaunchScreenCache +LaunchScreen.h" [UIApplication.sharedApplication clearLaunchScreenCache]; 赏我一个赞吧~~~

    6.3K32发布于 2019-12-24
  • 来自专栏哈雷彗星撞地球

    iOS 推送(本地推送)推送介绍总结使用步骤其他常用API

    也没有被我们完全退出,则点击通知,不会调用-[AppDelegate application:didFinishLaunchingWithOptions:],而是调用: - (void)application:(UIApplication NSLog(@"%@",notification); } 当App正处于前台活跃状态时,收到本地通知时,并不会弹出通知的消息,但是依然会调用下面这个方法: - (void)application:(UIApplication localNotice.applicationIconBadgeNumber = 3; self.localNotification = localNotice; [[UIApplication scheduleLocalNotification:localNotice]; 再然后,在AppDelegate 的两个方法中处理本地通知: 完整示例: - (BOOL)application:(UIApplication ",notification); application.applicationIconBadgeNumber = 0; } 其他常用API 取消(删除本地通知) // 删除某个本地通知 [[UIApplication

    2.2K40发布于 2018-08-22
  • 来自专栏Scott_Mr 个人专栏

    两个App之间调起通信

    Test1工程中测试代码 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Test2是在Test2这个项目的info.plist中配置的URL Schemes if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"Test2://"]]) { [[UIApplication sharedApplication Test2工程中测试代码 - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url { ] openURL:[NSURL URLWithString:@"Test1://loginSuccess=1"]]; } } 我们在- (BOOL)application:(UIApplication

    79110发布于 2018-07-05
  • 来自专栏非典型技术宅

    iOS四大对象之UIApplication对象1. 获取2. 创建联网指示器3. 设置app右上角小图标的数字4. 打电话、发短信、上网5. 判断系统版本

    每一个应用都有自己的UIApplication对象,而且是单例的 iOS程序创建的第一个对象就是UIApplication 通过[UIApplication sharedApplication]可以获得这个单例对象 一个iOS程序启动后创建的第一个对象就是UIApplication对象 一个应用程序里面只能有一个UIApplication对象,且只有一个(通过代码获取两个UIApplication对象,打印地址可以看出地址是相同的 利用UIApplication对象,能进行一些应用级别的操作。 1. 获取 不能直接创建。由系统自动创建。但是可以获取。 //获取这个单例对象 UIApplication *app = [UIApplication sharedApplication]; //NS_EXTENSION_UNAVAILABLE_IOS("Use Paste_Image.png 最终代码: // 获取应用程序对象 UIApplication *app = [UIApplication sharedApplication]; //

    71450发布于 2018-06-28
  • 来自专栏大宇笔记

    iOS didFinishLaunchingWithOptions方法里获取storyBoard的rootViewController

    程序启动过程如下: mian文件主函数创建UIApplication UIApplication 对象扫描 Info.plist 文件,将其中 Mainstoryboard file base name 所指定的 Storyboard 文件进行装载 UIApplication 获取窗口并关联 Storyboard 初始化 ,并指定root view controller 最后执行didFinishLaunchingWithOptions 由此发现didFinishLaunchingWithOptions之前已经Storyboard已经准备好了,UIApplication的rootViewController也准备好了。 跟踪一下找到了rootViewController ,获取如下: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions

    1.5K30发布于 2019-01-15
领券