internal static void Start()
 {
     try
     {
         LayoutManager.InitOpengl();
         new Thread((ThreadStart)(() =>
         {
             try
             {
                 AndroidBootUp.AttachMonitor();
             }
             catch (Exception ex)
             {
                 Logger.Error("Exception in AndroidBootUp.Start. Err : ", (object)ex.ToString());
                 AndroidBootUp.HandleBootError();
                 throw ex;
             }
         }))
         {
             IsBackground = true
         }.Start();
     }
     catch (Exception ex)
     {
         Logger.Error("Error in Android bootup start: " + ex.ToString());
         AndroidBootUp.HandleBootError();
         throw ex;
     }
 }
Exemple #2
0
 private void EnterStateStarting()
 {
     Logger.Info("{0}", (object)MethodBase.GetCurrentMethod().Name);
     this.SerialQueueCheck();
     this.mState = StateMachine.State.Starting;
     try
     {
         VBoxBridgeService.Instance.Connect();
     }
     catch (Exception ex1)
     {
         Logger.Info("Cannot connect VBoxBridge");
         Logger.Info(ex1.ToString());
         try
         {
             ComRegistration.Register();
             Logger.Info("Reconnecting to VBoxBridge");
             VBoxBridgeService.Instance.Connect();
         }
         catch (Exception ex2)
         {
             Logger.Info("Got exception {0} while re-registering COM", (object)ex2.ToString());
             AndroidBootUp.HandleBootError();
         }
     }
     if (VBoxBridgeService.Instance.StartMachineAsync(this.mVmName, (VBoxBridgeService.BooleanCallback)(success => this.mWorkQueue.DispatchAsync((SerialWorkQueue.Work)(() => this.StartMachineCompletion(success)))), (VBoxBridgeService.BooleanCallback)(success => this.mWorkQueue.DispatchAsync((SerialWorkQueue.Work)(() => this.StopMachineCompletion(success))))))
     {
         return;
     }
     Logger.Info("Cannot begin starting guest");
     this.EnterStateError();
     AndroidBootUp.HandleBootError();
 }