openURL in APP Extension
2024-10-18 23:25:27
var responder = self as UIResponder?
while (responder != nil){
if responder!.respondsToSelector(Selector("openURL:")) == true{
responder!.callSelector(Selector("openURL:"), object: url, delay: 0)
}
responder = responder!.nextResponder()
}
This will find a suitable responder to send the openURL to.
You need to add this extension that replaces the performSelector for swift and helps in the construction of the mechanism:
extension NSObject {
func callSelector(selector: Selector, object: AnyObject?, delay: NSTimeInterval) {
let delay = delay * Double(NSEC_PER_SEC)
let time = dispatch_time(DISPATCH_TIME_NOW, Int64(delay))
dispatch_after(time, dispatch_get_main_queue(), {
NSThread.detachNewThreadSelector(selector, toTarget:self, withObject: object)
})
}
}
&& Try it in OC
UIResponder *responder = self;
while(responder){
if ([responder respondsToSelector: @selector(OpenURL:)]){
[responder performSelector: @selector(OpenURL:) withObject: [NSURL URLWithString:@"www.google.com" ]];
}
responder = [responder nextResponder];
}
or
UIResponder* responder = self;
while ((responder = [responder nextResponder]) != nil)
{
NSLog(@"responder = %@", responder);
if([responder respondsToSelector:@selector(openURL:)] == YES)
{
[responder performSelector:@selector(openURL:) withObject:[NSURL URLWithString:urlString]];
}
}
转载请注明出处。
最新文章
- 知道创宇研发技能表v3.1
- PTPX中的activity文件以及mapping文件
- 关于MyEcplise中常见的问题和解决方案
- zoj 3823 Excavator Contest 构造
- HDU 1117 免费馅饼 二维动态规划
- java 解析xml文档---通过XmlPullParser解析方式
- 【Visual C++】游戏编程学习笔记之二:定时器的使用
- spring boot -Properties &; configuration
- mysql索引结构及其原理
- vue-cli webpack配置 简单分析
- 最小生成树 A - 畅通工程
- Metasploit框架问题
- 2018-2019-2 网络对抗week1 Kali安装 20165333陈国超
- 20165305 苏振龙 《Java 程序设计》第一次测试总结
- Android Hook框架adbi源码浅析(一)
- xml文件中的${}
- javascript 的原型与原型链的理解
- cat >; file <;<; EOF 与 cat >; file <;<; -
- U盘安装win10操作系统
- Dynamic Web Module 3.1 requires Java 1.7 or newer.	错误解决方案
热门文章
- digitalocean解释:private networking和user data、IPv6是什么意思
- GDI+ 图片转存
- BASE2(matlab)
- [FBA]SharePoint 2013自定义Providers在基于表单的身份验证(Forms-Based-Authentication)中的应用
- 2015 ACM/ICPC Asia Regional Shanghai Online
- Hibernate框架--对象的状态,缓存, 映射
- 11--Python 备份文件程序
- Ubuntu cron定时执行任务
- 用Py2exe打包Python脚本简单介绍
- VBS基础篇 - 循环语句(3) - For...Next