use of com.android.sdklib.internal.avd.AvdManager in project android by JetBrains.
the class AndroidFacet method getValidCompatibleAvds.
@NotNull
public AvdInfo[] getValidCompatibleAvds() {
AvdManager manager = getAvdManagerSilently();
List<AvdInfo> result = Lists.newArrayList();
if (manager != null && reloadAvds(manager)) {
addCompatibleAvds(result, manager.getValidAvds());
}
return result.toArray(new AvdInfo[result.size()]);
}
use of com.android.sdklib.internal.avd.AvdManager in project android by JetBrains.
the class EmulatorTargetChooser method chooseAvd.
@Nullable
private String chooseAvd() {
IAndroidTarget buildTarget = myFacet.getConfiguration().getAndroidTarget();
assert buildTarget != null;
AvdInfo[] avds = myFacet.getValidCompatibleAvds();
if (avds.length > 0) {
return avds[0].getName();
}
final Project project = myFacet.getModule().getProject();
AvdManager manager;
try {
manager = myFacet.getAvdManager(new AvdManagerLog() {
@Override
public void error(Throwable t, String errorFormat, Object... args) {
super.error(t, errorFormat, args);
if (errorFormat != null) {
final String msg = String.format(errorFormat, args);
LOG.error(msg);
}
}
});
} catch (final AndroidLocation.AndroidLocationException e) {
LOG.info(e);
UIUtil.invokeLaterIfNeeded(new Runnable() {
@Override
public void run() {
Messages.showErrorDialog(project, e.getMessage(), CommonBundle.getErrorTitle());
}
});
return null;
}
final AvdManager finalManager = manager;
assert finalManager != null;
return UIUtil.invokeAndWaitIfNeeded(new Computable<String>() {
@Override
public String compute() {
int result = Messages.showDialog(project, "To run using the emulator, you must have an AVD defined.", "Define AVD", new String[] { "Cancel", "Create AVD" }, 1, null);
AvdInfo createdAvd = null;
if (result == 1) {
AvdOptionsModel avdOptionsModel = new AvdOptionsModel(null);
ModelWizardDialog dialog = AvdWizardUtils.createAvdWizard(null, project, avdOptionsModel);
if (dialog.showAndGet()) {
createdAvd = avdOptionsModel.getCreatedAvd();
}
}
return createdAvd == null ? null : createdAvd.getName();
}
});
}
use of com.android.sdklib.internal.avd.AvdManager in project android by JetBrains.
the class DeviceSelectionPopup method findMatchingAvd.
/**
* Find a avd matching the image size or ratio.
*
* @param configurationManager configuration managet to get the Android Facet
* @param imageRatio ratio of the imgage
* @return true if a matching avd has been found
*/
private boolean findMatchingAvd(ConfigurationManager configurationManager, double imageRatio) {
AndroidFacet facet = AndroidFacet.getInstance(configurationManager.getModule());
if (facet == null) {
// Unlikely, but has happened - see http://b.android.com/68091
return false;
}
final AvdManager avdManager = facet.getAvdManagerSilently();
if (avdManager != null) {
final AvdInfo[] allAvds = avdManager.getAllAvds();
for (AvdInfo avd : allAvds) {
Device device = configurationManager.createDeviceForAvd(avd);
if (device != null) {
final Dimension screenSize = device.getScreenSize(myScreenOrientation);
if (myImageSize.equals(screenSize) || ratioAlmostEqual(imageRatio, screenSize)) {
String avdName = "AVD: " + avd.getName();
myDevicesComboBox.addItem(avdName);
myMatchingDevices.add(device);
}
}
}
}
return !myMatchingDevices.isEmpty();
}
use of com.android.sdklib.internal.avd.AvdManager in project otertool by wuntee.
the class AvdWorkshop method isAvdExist.
public static boolean isAvdExist(String avd) throws AndroidLocationException {
ISdkLog sdkLogger = AvdWorkshop.getAvdLogger();
SdkManager sdkManager = SdkManager.createManager(OterStatics.getAndroidHome(), sdkLogger);
AvdManager avdManager = new AvdManager(sdkManager, sdkLogger);
for (AvdInfo i : avdManager.getAllAvds()) {
if (i.getName().equals(avd)) {
return (true);
}
}
return (false);
}
Aggregations