@Alan_xz wrote:
需求:我要开发一个拥有root 权限的app 我在论坛浏览了好多,也有很多介绍 但不是很理解,在网上我找到一个demo 但是不太理解它的执行文件的操作意义,能不能解释下。。。 我安装后返回的UID GID 是 0 是成功了么??
main 代码
int main(int argc, char * argv[]) {
@autoreleasepool {
setgid(0);
setuid(0);
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}然后在打包deb的时候 在DEBIAN下 添加了两个可执行文件
1.postinst代码如下:(注:我的工程名为ReverseTest)
#!/bin/bash
cd "/Applications/ReverseTest.app/"process origin binary
mv ReverseTest ReverseTest_
chown root.wheel ReverseTest_
chmod +s ReverseTest_cont=`cat <<"EOF"
!/bin/bash
dir=$(dirname "$0")
exec "${dir}"/ReverseTest_ "$@"
EOF
`create new fake binary
echo -e "$cont" > ReverseTest
chown root.wheel ReverseTest
chmod +x ReverseTestThe RESPRING script after Install
declare -a cydia
cydia=($CYDIA)if [[ $1 == install || $1 == upgrade ]]; then
if [[ ${CYDIA+@} ]]; then
eval "echo 'finish:restart' >&${cydia[0]}"
fi
fiexit
2.prerm代码如下:!/bin/bash
rm -f "/Applications/rootApp.app/ReverseTest_"
Posts: 1
Participants: 1