2011-05-06 79 views
3

我正在製作越獄應用程序,並且希望將SIGKILL消息發送到可能正在用戶設備上運行的特定應用程序(當然還有他們的許可)。返回iOS中正在運行的後臺應用程序/進程的列表

谷歌沒有爲我提供任何東西。是否有一個plist或數組跟蹤正在運行的進程?

謝謝你們所有人都可以給予的幫助,你太棒了!

+0

看到這可能對你有所幫助,http://stackoverflow.com/questions/9919070/how-to-get-names-of-背景磨合應用 – HarshIT 2012-04-16 12:46:22

回答

3

製作一個sysctl API並檢索kinfo_proc結構http://fxr.watson.org/fxr/source/sys/kinfo.h?v=DFBSD。該結構包含有關正在運行的進程的信息。您可以循環運行它,直到獲取有關所有進程的信息。這裏是一個代碼片段 - 擴展它來獲取所有進程的信息

mib[0] = CTL_KERN; 
mib[1] = KERN_PROC; 
mib[2] = KERN_PROC_ALL; 
mib[3] = 0; 
ret = sysctl(mib, 4, NULL, &size, NULL, 0); 
procs = malloc(size); 
ret = sysctl(mib, 4, procs, &size, NULL, 0); /* procs is struct kinfo_proc.*/