2011-01-28 2 views
2

Любые мысли о том, почему этот код работает медленно на устройстве, но быстро на симуляторе в iphone, я делаю игру в cocos2d, и я перемещаю объект из одного места к другому, Повсеместно CCTouchBegan, CCTouchMoved, CCTouchEneded (функция CCP), и после этого я беру действие на него,почему этот код работает медленно на устройстве, но быстро на симуляторе в iphone

может любой приятель сказать мне, что является основной проблемой, чтобы решить эту проблему,

+0

Вы не отправили код. – icktoofay

+0

Пожалуйста, просмотрите ваши предыдущие вопросы и примите ответы. Из часто задаваемых вопросов о переполнении стека: «Когда вы определили, какой ответ наиболее полезен для вас, отметьте его как принятый ответ, нажав на рамку на левой стороне ответа. Это позволяет другим людям знать, что вы получили хороший ответ на свой вопрос. Это полезно, потому что это показывает другим людям, что вы получаете ценность от сообщества. (Если вы этого не сделаете, люди часто будут вежливо просить вас вернуться и принять ответы на многие ваши вопросы!) ' –

ответ

6

тренажер является симулятор не эмулятор. Весь симулятор действительно предоставляет окно для запуска приложения iOS. Вы заметите, что при создании для симулятора системная архитектура устанавливается на i386. Вы компилируете для Mac, когда используете симулятор. Там нет ограничений памяти, песочницы и т. Д. На самом деле, я думаю, что ваше приложение даже появляется как собственный процесс.

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

Счастливое кодирование.

3

Базовые аппаратные средства компьютера, на которых работает Simulator, и устройства iOS, очень различаются: от тактовой частоты процессора, от параллелизма команд, прогнозирования ветвлений, размера кэша, пропускной способности памяти до доступной памяти. Возможные оптимизации компилятора также могут быть разными, учитывая разные ISA. Это не редкость, когда общий код работает на порядок быстрее на симуляторе на Mac, чем на iPhone.

1

Там может быть много причин, как (также) #simulator против фактического устройства

  1. Low Memory может быть первой проблемой, так как в Вашем устройстве, как вы будете устанавливать различные виды огромных приложений, но в случае тренажера вы не будете устанавливать t.
  2. Проблема с низким уровнем мощности, так как фактическое устройство будет питаться от батареи, а не как симуляторы, которые постоянно получают постоянную мощность.
  3. Другие приложения, мешающие вашему запуску приложения, но в симуляторе вы вряд ли будете запускать какое-либо приложение во время тестирования своего приложения.
  4. Вы не можете видеть UserInterface (UI) как ясный в своем MAC-адресе, как вы можете видеть на своем самом устройстве, поэтому оно кажется правильным, возможно, не совсем корректно.
  5. Приложение, вмешивающееся в вызовы, в симуляторе такого рода помехи никогда не произойдет.
Смежные вопросы