Class: FastlaneCore::DeviceManager::Device

Inherits:
Object
  • Object
show all
Defined in:
lib/fastlane_core/device_manager.rb

Overview

Use the UDID for the given device when setting the destination Why? Because we might get this error message

The requested device could not be found because multiple devices matched the request.

This happens when you have multiple simulators for a given device type / iOS combination { platform:iOS Simulator, id:1685B071-AFB2-4DC1-BE29-8370BA4A6EBD, OS:9.0, name:iPhone 5 } { platform:iOS Simulator, id:A141F23B-96B3-491A-8949-813B376C28A7, OS:9.0, name:iPhone 5 }

We don't want to deal with that, so we just use the UDID

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name: nil, udid: nil, os_type: nil, os_version: nil, state: nil, is_simulator: nil) ⇒ Device

Returns a new instance of Device.



154
155
156
157
158
159
160
161
162
# File 'lib/fastlane_core/device_manager.rb', line 154

def initialize(name: nil, udid: nil, os_type: nil, os_version: nil, state: nil, is_simulator: nil)
  self.name = name
  self.udid = udid
  self.os_type = os_type
  self.os_version = os_version
  self.ios_version = os_version
  self.state = state
  self.is_simulator = is_simulator
end

Instance Attribute Details

#ios_versionObject

Preserved for backwards compatibility



150
151
152
# File 'lib/fastlane_core/device_manager.rb', line 150

def ios_version
  @ios_version
end

#is_simulatorObject

Returns the value of attribute is_simulator.



152
153
154
# File 'lib/fastlane_core/device_manager.rb', line 152

def is_simulator
  @is_simulator
end

#nameObject

Returns the value of attribute name.



146
147
148
# File 'lib/fastlane_core/device_manager.rb', line 146

def name
  @name
end

#os_typeObject

Returns the value of attribute os_type.



148
149
150
# File 'lib/fastlane_core/device_manager.rb', line 148

def os_type
  @os_type
end

#os_versionObject

Returns the value of attribute os_version.



149
150
151
# File 'lib/fastlane_core/device_manager.rb', line 149

def os_version
  @os_version
end

#stateObject

Returns the value of attribute state.



151
152
153
# File 'lib/fastlane_core/device_manager.rb', line 151

def state
  @state
end

#udidObject

Returns the value of attribute udid.



147
148
149
# File 'lib/fastlane_core/device_manager.rb', line 147

def udid
  @udid
end

Instance Method Details

#resetObject



168
169
170
171
172
173
# File 'lib/fastlane_core/device_manager.rb', line 168

def reset
  UI.message("Resetting #{self}")
  `xcrun simctl shutdown #{self.udid}` if self.state == "Booted"
  `xcrun simctl erase #{self.udid}`
  return
end

#to_sObject



164
165
166
# File 'lib/fastlane_core/device_manager.rb', line 164

def to_s
  self.name
end