2010-11-08 2 views
0

Я пытаюсь совершать вызовы через функцию C system() в приложении для jailbroken iPhone, но они, похоже, не работают. Я знаю, что это возможно, потому что исходный код для Cydia.app делает это, но когда я его пробую, он ничего не делает.Calling system() на Jailbroken iPhone

Я создал простой тест, который прекрасно работает на Mac, но возвращается обратно пустым на устройстве:

system("cd /bin && ls > /tmp/output.txt"); 
NSLog([NSString stringWithContentsOfFile:@"/tmp/output.txt" usedEncoding:nil error:nil]); 

Я устанавливаю это нормально, через XCode. Я подумал, что мне может понадобиться установить его в/Приложения, но когда я пытаюсь подключиться к SSH и устанавливаю его в/Приложения, он появляется в SpringBoard, но отказывается запускаться.

ответ

0
system("cd /bin && ls > /tmp/output.txt"); 

Может быть, ваш/бен просто пустой, или, может быть, вы даже не один (я не уверен, что файловая система iPhone не давал выглядит как). Вместо этого попробуйте что-то вроде echo foo > /tmp/output.txt.

Это предполагается, что/tmp даже доступен для записи + существующий.

NSLog([NSString stringWithContentsOfFile:@"/tmp/output.txt" usedEncoding:nil error:nil]); 

Не передавайте случайные строки в NSLog. Используйте строку формата, даже если это всего лишь @"%@", и передайте строковый объект как один из элементов, которые будут отформатированы в нем.

Кроме того, вы не должны передавать nil для любого из этих выходных параметров. Вы можете передать NULL для параметра кодирования, если вам действительно все равно, какая это кодировка, но вы всегда должны передавать указатель, чтобы принять объект ошибки, если ничего другого, чтобы инфраструктура не могла сказать вам, почему это не работает (это может быть фактическая точка отказа).

+0

/tmp определенно существует и доступен для записи, я могу запустить эту команду из Mobile Terminal, и она возвращает штраф. Думаю, теперь мой вопрос заключается в том, как я могу установить свое приложение в/Applications; У меня есть сильное подозрение, что это исправит. – denizen

 Смежные вопросы

  • Нет связанных вопросов^_^