2015-11-30 110 views
0

我有一个cycriptbackboardd脚本,该脚本在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下工作。

回答

1

但是,当我使用这个,我只是使用初始化与所需的PID

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

查看BKSProcessAssertion标题供参考。

如果你希望看到一个参考实现,退房MessageBox(现在已经过时,但供参考):

+0

谢谢,但是init方法返回一个'BKSProcessAssertion'对象是谁'valid'属性'FALSE' 。我想也许MessageBox是为 Darren

+1

你还需要确保你已经获得了授权,允许SpringBoard分配BKSProcessAssertions,因为它通常是backboardd,这样做。 https://github.com/b3ll/MessageBox/blob/master/Tweak.xmi#L38-L63 – b3ll