This simple dialog lets the user choose a screen size (from a fixed list) and
a resolution (as returned by SWT's Display class).
This is used by the AVD start options dialog to help users figure out
the pixel density of their monitor.
Change-Id: I3eec0e7fac850c82e836d2bc0291a491f29f516e
This is displayed when clicking the Start button in the AVD manager.
The dialog allows to easily scale the emulator to match an arbitrary screen size
and to wipe the user data if needed.
The required monitor dpi is computed using java.awt.Toolkit, but (at least
on MacOS) it doesn't return the correct value, so it can be user supplied.
It's stored at least while the app is running and if possible in the settings
of the ADV/SDK Manager/Updater.
The wipe-data and scale flags are stored and reused while the app keeps
running as well.
Change-Id: Ia2f3ff5f4de285a3d505c6914d6b89cc663be284
Resource filters are used when generating additional APK containing only
specific resources.
The previous UI allowed for any type of filters, but we are moving to a
simpler way with fixed filters.
The first one is the density. Selecting the filter will generate 4 APKs per
application: default (all resources), hdpi (only hdpi/nodpi and default
resources), mdpi, ldpi.
Renamed the getenv and added one for user sources.
Added a (naive) check to prevent duplicate URLs.
Also fixed the repositoy.xml download error message, it was not displaying the reason of failure correctly.
java.util.Properties#setProperty() doesn't like it when the value is null
which was the case when a package had no license.
Made sure it won't happen on other properties than the license as well.
Also improved error display when an unexpected Throwable is thrown during
install (Stack Call is now display if the Throwable has no message).
BUG:2037085
Platform, add-on and doc packages used to use Api Level to figure out
upgrade logic. This is replaced by AndroidVersion to properly handle
codename versions.
ro.build.version.codename is a new property indicating whether a platform
is in its release form (value = REL) or in development (value = dev branch
name such as Donut). When the codename indicates a development/preview version
then the API level must be ignored and this codename is used as a unique
identifier of the platform.
IAndroidTarget has been changed to return an instance of a new class
AndroidVersion instead of the api level directly. This class helps deals with
the logic of comparing version from targets or devices.
This change impacts all of the sdk manager to deal with targets identified by
codename instead of api level. This in turn impacts everything that relies
on the sdkmanager: ADT (build, launch, project creation), the AVD manager,
the SDK updater.
* changes:
AVD Selector: Add a "Start" button to launch the selected AVD in a new emulator. Doesn't detect if the AVD is already running; instead prints the emulator error.
- the "manager" button on the AVD selector (when not in manager
will open the Android SDK window
- the AVD manager in the eclipse toolsbar open the Android SDK
window as well.
Still left to do:
- remove the now obsolete AVD wizard
- figure out what to do with the other pages.
When installing an archive, a "source.properties" file is saved
in the directory that contains all the information from the
source (Source URL, package attributes, archive attributes.)
When loading local packages, these properties are used to
recreate the local package attributes if present. This is
also used to indentify local extra packages.
- Always unzip the archives first and get their root zip dir.
- Try to reusing an existing addon folder first.
- Or the root zip dir.
- Or come up with a better name for the addon folder.
- New/Delete/Info/Refresh/Manager buttons.
- Ability to set any kind of AVD filter
- Self-refresh: Selector knows the AvdManager and can refresh itself.
- Manager mode or simple (selection or checkboxes)
- Manager mode displays broken AVDs.
Updated the SdkUpdate AVD page and the various use of the Selector in ADT.