Как выяснить, сколько других приложений работает в фоновом режиме? - PullRequest
1 голос
/ 23 ноября 2011

Мои друзья делают высокопроизводительную игру, которая будет зависать, если запущено много других приложений.

Есть ли способ выяснить, сколько приложений работает в фоновом режиме прямо сейчас?Есть приложение под названием Activity Monitor Touch, которое показывает все фоновые процессы, и оно было одобрено для AppStore.Он даже показывает значки фоновых приложений.Я предполагаю, что он обращается к маленьким значкам для прожектора.

Он показывает использование проводной, активной, неактивной и свободной памяти, а также общее свободное место на диске.

Я всегда думал, что это невозможно, покаВы видели это приложение!

Итак, идея такова: проверьте, сколько свободной памяти доступно приложению и сколько фоновых приложений запущено.Затем сообщите пользователю, что из-за этого производительность может отставать, и предложите прекратить работу некоторых из них.

1 Ответ

1 голос
/ 16 января 2013

Определите, сколько приложений работает в фоновом режиме: (используйте xcode)

mach_port_t *p = (mach_port_t *)SBSSpringBoardServerPort();
char frontmostAppS[256];
memset(frontmostAppS,sizeof(frontmostAppS),0);
SBFrontmostApplicationDisplayIdentifier(p,frontmostAppS);
NSString * frontmostApp=[NSString stringWithFormat:@"%s",frontmostAppS];
NSLog(@"Frontmost app is %@",frontmostApp);
//get list of running apps from SpringBoard
NSArray *allApplications = SBSCopyApplicationDisplayIdentifiers(p,NO, NO);
for(NSString *identifier in allApplications)
{
    NSString *locName = SBSCopyLocalizedApplicationNameForDisplayIdentifier(identifier);
    NSLog(@"identifier:%@, locName:%@",identifier,locName);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...