如何判断iOS模拟器何时启动到主屏幕?

时间:2016-05-04 16:35:25

标签: ios ios-simulator

我使用open -n /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app/ --args -CurrentDeviceUDID xxxxx与任意数量的其他人一起启动模拟器,我可以轮询xcrun simctl list | grep xxxxx以了解它何时开始启动过程。

如何确定模拟器已完成启动过程并在其主屏幕上空闲?

目前我正在轮询~/Library/Logs/iOS Simulator/{version}/system.log直到它安静几秒钟,但那有点蹩脚。

有没有更好的东西,比如xcrun simctl getenv

1 个答案:

答案 0 :(得分:4)

您可以轮询com.apple.springboard.services mach服务以进行签入。例如:

/**
 * @ORM\ManyToOne(targetEntity="Image", cascade="all")
 * @ORM\JoinColumn(name="image_id", referencedColumnName="id")
 */
private $teaserImage;

编辑: 使用最近的版本,您还可以运行<?php namespace AppBundle\Form\Type; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolver; use AppBundle\Entity\Post; /** * Defines the form used to create and manipulate blog posts. */ class PostType extends AbstractType { /** * {@inheritdoc} */ public function buildForm(FormBuilderInterface $builder, array $options) { $builder ->add('title', null, array('label' => 'Title')) ->add('summary', null, array('label' => 'Summary')) ->add('teaserImage', 'AppBundle\Form\Type\ImageType', array('label' => 'Image')) ->add('content', null, array( 'attr' => array('rows' => 20), 'label' => 'Content', )) ; } /** * {@inheritdoc} */ public function configureOptions(OptionsResolver $resolver) { $resolver->setDefaults(array( 'data_class' => 'AppBundle\Entity\Post', )); } } 来监控此进度。如今,这可能是一个比polling launchctl更优雅的解决方案。