iOS native APP和safari开发知识点整理

native APP开发和web已经是很熟悉的套路了,但是最近几周看下来,有了更深入的了解,不由的感叹技术的研究是无止境的。

1、APP申请后台常驻权限:

只要在info.plist里声明使用audio play等权限,那么可以获得一定时间内后台生命。

在APP被切入后台时,在AppDelegate的

func applicationDidEnterBackground(_ application: UIApplication) {}

方法中,可以被触发,此时可以计算剩余的时间,在结束前再次申请使用资源,以此循环,可以无限后台运行;注意这里直接使用timeout定时任务在真机上出错,需要手写定时方法。

2、后台运行的APP调起其他应用

非常令人吃惊,后台运行的APP可以轻易的调起其他应用,甚至包括自己,这里是一个OC的方法,前提是需要知道目标APP的bundle identifier(bundle ID)

- (void)openAppByBundleID{

    Class lsawsc = objc_getClass("LSApplicationWorkspace");

    NSObject* workspace = [lsawsc performSelector:NSSelectorFromString(@"defaultWorkspace")];

    // iOS6 没有defaultWorkspace

    if ([workspace respondsToSelector:NSSelectorFromString(@"openApplicationWithBundleID:")])

    { [workspace performSelector:NSSelectorFromString(@"openApplicationWithBundleID:") withObject:@"com.xx.demo"]}

}

3、safari调起 APP

app包文件,查看内容,可以在info.plist的URL Type中,看到配置的短链接(可能有多个),浏览器可以直接通过短链接调起APP.

4、app下载lua脚本动态执行方法;

未完待续

5、app通过webview打开网页(注入UA),并分析dom;

6、检查其他APP的安装情况OC

  (1)iOS 11及以上

- (void)getAppsOveriOS11{

NSBundle *container = [NSBundle bundleWithPath:@

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值