2014-10-24 4 views
0

Мне интересно, есть ли у меня удаленное устройство iOS с любым настраиваемым решением, которое я могу предварительно загрузить на нем (написано мной), есть ли способ заставить его выполнить любой настраиваемый код, например блок?Выполнение кода объектива-c на удаленном устройстве

Вот что я имею в виду:

// establish connection with remote device 
[self connectToDevice:remoteDevice]; 

// send arbitary block of code and data to execute on remote device 

[myDevice executeBlock:^(void)(BOOL result, NSData *data) { 

// here I can write any code that uses the data 
// I want this code to run on remote machine 

}]; 

// I might get results via network, or any other way, not related 

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

Проблемы, которые я вижу - Objective-c - это скомпилированный язык, поэтому отправка кода не помогает. Возможно ли использовать некоторые скриптовые языки или решения для преодоления этого?

+0

Опишите, что вы пытаетесь достигнуть? Выполнение произвольного кода на других устройствах удаленно не будет работать с AppStore, но такие вещи, как RPC, позволяют говорить, что многопользовательская игра - это нормально и довольно часто. – JustSid

+0

@JustSid Я изучаю распределенные вычисления на iOS, не очень обеспокоенный appstore – Dvole

+1

Ответ на этот вопрос нет, для кода Objective-C. Мало того, что Apple не допустит этого (по уважительной причине), но нет практического способа сделать это. Однако вполне возможно, что вы могли бы сделать это с помощью чего-то вроде Javascript, но коробка на другом конце должна была бы сотрудничать. –

ответ

1

Одним словом, нет. Условия использования Apple запрещают вам выполнять код, который вы получаете по сети.

Плюс, объект C скомпилирован и должен быть связан с вашим проектом. В iOS нет возможности для установки динамически связанных библиотек во время выполнения.

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

+0

"* это выходит за рамки этой платы. * «Это совет о программировании, а не правила Apple. Он отлично подходит. – vikingosegundo

+0

Достаточно честный. Лучше сказать, что это вне моей компетенции. Я готов играть по правилам Apple, чтобы зарабатывать на жизнь. –

+0

Я зарабатываю на жизнь. Тем не менее я не понимаю, почему это должно привести к самоцензуре. И, как вы можете видеть на моем комментарии в вопросе, Apple сама публикует информацию о том, как создать загружаемый код. Это просто инструмент, который вы можете использовать, вы не зависите от магазина приложений iOS или Mac. Но видеть кого-то, определяющего сферу охвата этого сайта юристами Apple, вызывает беспокойство. – vikingosegundo

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