首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PreferenceLoader的研究

PreferenceLoader的研究
EN

Stack Overflow用户
提问于 2013-09-10 17:35:15
回答 1查看 776关注 0票数 1

我使用首选加载器将我的自定义设置加载到设置应用程序中。我想知道如何使设备重新启动从我的首选装载机设置面板。请帮帮我。提前谢谢。

我试过system("killall SpringBoard");,但什么也没发生。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-11 05:17:32

可能有很多方法可以做到这一点,但是有一种方法是利用和我在这个答案中使用的方法一样。本质上,问题在于您没有以足够的权限发出命令。

通过将killall SpringBoard命令移动到由SBSettings的特权守护进程运行的命令脚本中,您可以获得所需的特权。

见此处参考文件,在下调用外部函数和脚本.

您将创建一个名为(例如)的可执行脚本com.mycompany.respring。在该脚本中,添加

代码语言:javascript
复制
#!/bin/sh
killall SpringBoard

并将其保存在/var/mobile/Library/SBSettings/Commands下。然后,在偏好丛PSListController中添加以下代码:

代码语言:javascript
复制
#import <notify.h>

代码语言:javascript
复制
notify_post("com.mycompany.respring");

发布自定义通知将导致SBSettings的守护进程运行同名的脚本文件。当然,这会迫使您的包依赖于SBSettings (您可以将它放在包的DEBIAN/control文件中):

代码语言:javascript
复制
Depends: preferenceloader, sbsettings

..。但由于它是免费的,稳定的,广泛的使用和喜爱,这似乎并不是一个很大的限制。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18725421

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档