【问题标题】:Cycript script to run app in background用于在后台运行应用程序的 Cycript 脚本
【发布时间】:2016-03-04 10:51:34
【问题描述】:

我有一个 cycript backboardd 脚本,它在 iOS 7 上运行良好,用于修改应用以继续在后台运行。

app = [BKProcess processForPid:$PID];
alive = [[BKProcessAssertion alloc] initWithReason:7 identifier:"AppKeepAlive"];
[alive setFlags:0xF];
[sc addAssertion:alive];

这就是我们所需要的。但是在iOS 8 上这不起作用,因为BKProcess 现在是BKSProcessBKProcessAssertion 现在是BKSProcessAssertion,它们有不同的方法。 似乎没有办法像iOS 7 那样将断言附加到应用程序。

请有人帮我在iOS 8 下工作。

【问题讨论】:

    标签: ios background-process jailbreak cycript


    【解决方案1】:

    有,但是当我使用它时,我只是将初始化程序与所需的PID 一起使用。

    - (id)initWithPID:flags:reason:name:withHandler:
    

    查看BKSProcessAssertion 标头以供参考。

    如果您想查看实现以供参考,请查看MessageBox(现已弃用,但仅供参考):

    【讨论】:

    • 谢谢,但是 init 方法返回一个 BKSProcessAssertion 对象,它的 valid 属性是 false。我想也许 MessageBox 是为
    • 您还需要确保您已获得授权,以允许 SpringBoard 分配 BKSProcessAssertions,因为它通常是 backboardd 执行此操作。 github.com/b3ll/MessageBox/blob/master/Tweak.xmi#L38-L63
    猜你喜欢
    • 2013-08-09
    • 1970-01-01
    • 2014-01-10
    • 2011-09-11
    • 1970-01-01
    • 1970-01-01
    • 2015-09-14
    • 1970-01-01
    相关资源
    最近更新 更多