aboutsummaryrefslogtreecommitdiffstats
path: root/sdkmanager
Commit message (Collapse)AuthorAgeFilesLines
* Add cmd line support to create ui automator projects.Xavier Ducrohet2012-09-273-14/+94
| | | | Change-Id: I34ffff7d7828c171444c40e48fc3dcf093391324
* Improve aapt error messageTor Norbye2012-09-271-2/+6
| | | | | | | | | | | | If anything goes wrong with aapt, we emit an error message that we could not execute aapt and to check the install location. However, if the file exists but isn't executable, or if a parsing error happens in the new SymbolLoader/Writer, the error message is misleading. This changeset makes the error message more specific if it looks like the root cause isn't a missing aapt installation. Change-Id: Ifb09a2dd736f6a93c0f167162826e1ad6e3d2a63
* Unit test for symbol loader testTor Norbye2012-09-264-1/+246
| | | | Change-Id: I5b85b01fb62d659ed75ee998da780feaea75c51c
* Merge "MIPS company name is all-caps"Raphaël Moll2012-09-204-5/+5
|\
| * MIPS company name is all-capsDuane Sand2012-09-194-5/+5
| | | | | | | | Change-Id: Ib2bb0b69e08a639b7469f1c9a67e97e8cdd6eb48
* | Generate smaller R classes for libraries.Xavier Ducrohet2012-09-182-0/+194
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Using the new --output-text-symbols from aapt the build system now generates the R class for libraries manually based on the symbols exported by the libraries and the final values computed by aapt when using all the resource folders. Because only R.java is concerned, the Manifest class is now included in the library jar file. Also added a new test apps that uses instrumentation to verify the build system. Change-Id: Ic436ea8eb070844e9db8b3b2620fbf665839d40b
* | Merge "Fix possible NPE reading dep file."Xavier Ducrohet2012-09-181-1/+1
|\ \
| * | Fix possible NPE reading dep file.Xavier Ducrohet2012-09-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fix this by using guava Files instead. Also fixes sdklib's manifest. Change-Id: I5dd4123f389ce1bd8c900933021fc2179e6caa3b
* | | Add nullness annotations on overridden methodsTor Norbye2012-09-171-3/+5
| | | | | | | | | | | | | | | | | | Eclipse 4.x requires it. Change-Id: Iababca14d8edc8d62bce42f23ee26633dc49cf8c
* | | Merge "Support separate layout editors for a single layout resource"Tor Norbye2012-09-173-4/+13
|\ \ \ | |/ / |/| |
| * | Support separate layout editors for a single layout resourceTor Norbye2012-09-173-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changeset changes the "reuse" behavior of the layout editor to no longer reuse the same layout editor when you are switching between alternate layout files for the same layout resource, such as layout/foo.xml and layout-land/foo.xml. This lets you more quickly switch back and forth and inspect differences between the layouts, etc. There is also an option in the Android > Editors panel to turn on single editor sharing again. The biggest part of the changeset, by far, is a cleanup of the ConfigurationComposite class and associated code. This was necessary not just to support the above feature (where we need to "back out" UI changes when you've made a configuration edit which results in a different file getting opened), but it's also an important preparation for multi configuration editing, where we need to be able to switch configuration settings in and out of a single configuration editor, etc. The configuration data itself is now in a separate Configuration class; the UI is in ConfigurationChooser, and the configuration matching code is in ConfigurationMatcher. There's also a new Locale class to track language/region pairs instead of using 2-element ResourceQualifier arrays. The various menu listeners are also in separate UI classes now. While there are new classes, most of the configuration matching algorithm is unchanged, just moved to a new class and the UI syncing and configuration data lookup replaced. Bitmasks are used to handle configuration changes, such that updating multiple related attributes (e.g. a rendering target change also causes a theme change if say Holo isn't available) can now be processed just once with a single change call. (Various other cleanup too.) Change-Id: I04ac969f46824321be3db0c487ef077c03cc6012
* | | Fix unit test for LocalSdkParser.Raphael Moll2012-09-171-6/+11
| | | | | | | | | | | | Change-Id: I630cb4fc123e3d6b6efc36eea543f7556b2ccc87
* | | Refactor PackagesPage to make it testable.Raphael Moll2012-09-1517-503/+1503
| | | | | | | | | | | | | | | | | | | | | | | | | | | A simple unit test to display that an update is available. This will get more complex later. The cache is mocked and the whole test should be independant of the user's actual settings and local cache, with no network access. Change-Id: I58ff45895916a14a10f501a9bd664782d777ed42
* | | ManifestMerger: fix handling of codenames in min/targetSdkVersion.Raphael Moll2012-09-141-0/+6
|/ / | | | | | | | | | | | | | | | | The change is that the manifest merger will only accept a codename if it's invoked in a context that can resolve that codename to an API level. This allows to produce an error on bogus codenames and to properly check that the API levels match appropriately. Change-Id: Ic70c0c3690b13d94dba81bb78cc09386016b2ef1
* | Merge "Add guava to common and sdklib."Xavier Ducrohet2012-09-132-2/+2
|\ \
| * | Add guava to common and sdklib.Xavier Ducrohet2012-09-132-2/+2
| | | | | | | | | | | | Change-Id: Ic465232c7df736d2823b391c1f973c6ae5d81833
* | | Constants refactoring.Tor Norbye2012-09-131-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changeset moves most constants into the SdkConstants class, and gets rid of AndroidConstants and LintConstants. It also migrates all non-ADT specific constants from AdtConstants into SdkConstants. It furthermore moves various other constants (such as those in XmlUtils and ValuesDescriptors) into the constants class. It also fixes the modifier order to be the canonical modifier order (JLS 8.x). Finally, it removes redundancy and combines various constant aliases such that we don't have both NAME_ATTR and ATTR_NAME pointing to "name", etc. Change-Id: Ifd1755016f62ce2dd80e5c76130d6de4b0e32161
* | | Properly dispose DeviceManager from AvdManager.Raphael Moll2012-09-112-27/+46
| | | | | | | | | | | | | | | | | | | | | Similar issue fixed by patch d1daeae66a0ebdf53076038dc4a1fe099c4141fb but this time for the AvdManager. Change-Id: I10af39d364e427d593078f8bfa23bba3ba7e1558
* | | Merge "SDK Manager refactor: remove obsolete UpdaterPage"Raphael Moll2012-09-113-85/+2
|\ \ \
| * | | SDK Manager refactor: remove obsolete UpdaterPageRaphael Moll2012-09-103-85/+2
| | | | | | | | | | | | | | | | Change-Id: Ieffc0fd8c88705616197bdb971fc66cb9c7f536c
* | | | Merge "Allow sys-img.xml in user-defined addon sites"Raphaël Moll2012-09-112-2/+12
|\ \ \ \ | |_|/ / |/| | |
| * | | Allow sys-img.xml in user-defined addon sitesDuane Sand2012-09-112-2/+12
| | |/ | |/| | | | | | | Change-Id: Id7eeaa46d24385ee231c8db7a542947b5ee960b6
* | | NPW Sample Wizard: list extras with a "sample" directory.Raphael Moll2012-09-111-0/+8
| |/ |/| | | | | | | | | | | | | Some extras have just a single "sample" directory instead of having a samples/<sample_name> directory. Support this and list them as valid samples. Change-Id: I25bc59db0b9853d98385cca98f70bf261558fd8b
* | Avd Creation Dialog: Enable sdcard if user asks for it.Siva Velusamy2012-09-073-15/+64
| | | | | | | | Change-Id: Ia5a57139cf76cec559c557011a2acee2af58457a
* | Merge "Make some libraries be buildable with Gradle."Xavier Ducrohet2012-09-062-3/+42
|\ \
| * | Make some libraries be buildable with Gradle.Xavier Ducrohet2012-09-062-3/+42
| | | | | | | | | | | | | | | | | | They all output into out/host/repo Change-Id: I78a1a976f0a99860a66248492da7fd9c6593b1c2
* | | Merge "Remove obsolete stuff."Xavier Ducrohet2012-09-063-177/+3
|\ \ \ | |/ / | | / | |/ |/|
| * Remove obsolete stuff.Xavier Ducrohet2012-08-313-177/+3
| | | | | | | | Change-Id: Ib3a4f7c0c479b4c8c7f2e27d47ba756969d4f0b4
* | Refactor SDK Manager into "core" vs "ui" packages.Raphael Moll2012-09-0426-49/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is just a refactor to move classes around. No functionality is actually changed. The sdkman2 package contains classes that are now sorted between "ui" and "core" packages. The core stuff has no UI dependency and can be used in unit tests, whereas the ui stuff needs SWT somehow. In a later CL some of the UI stuff will be changed to make it easier to mock for testing. Change-Id: I86606df7992de6ca6ae1df95f7b712cbba4fd3b6
* | SDK Manager: fix support for file:// URLs in UrlOpener.Raphael Moll2012-08-313-7/+136
|/ | | | Change-Id: I5996187d0ccd002d9ec3fe8c0fa5d17a96671431
* Merge "Let ApkBuilder package bitcode library into APK."Shih-wei Liao2012-08-301-1/+5
|\
| * Let ApkBuilder package bitcode library into APK.Shih-wei Liao2012-08-271-1/+5
| | | | | | | | Change-Id: I54e99cff338a62147af3247446148d88a73a4ddb
* | Fix SdkManager.hasChangedRaphael Moll2012-08-282-18/+59
| | | | | | | | | | | | Also add a simple unit test. Change-Id: I8ed3dfbea07578528036f1dabd75c18f3161819c
* | SDK Manager: fix sdk-has-changed.Raphael Moll2012-08-271-6/+36
|/ | | | | | | | The SdkManager.hasChanged method was supposed to only look at direct folders in platforms and add-ons, not regular files. Change-Id: I87c3d51bfd7bd2578285f957a9838fadec703401
* Update annotations on overridden methodsTor Norbye2012-08-222-4/+8
| | | | | | Required when using Eclipse 4. Change-Id: Ie5f95794392ce46e0b04ae67b5eaf07efb19fbac
* Merge "SDK Manager: support for partial resume of downloads."Raphael Moll2012-08-217-89/+329
|\
| * SDK Manager: support for partial resume of downloads.Raphael Moll2012-08-217-89/+329
| | | | | | | | Change-Id: I248194b5764cf801e52ebd35c6b5963facf31a3e
* | Merge "SDK Lib: minor cleanup in UrlOpener."Raphael Moll2012-08-215-15/+47
|\ \ | |/
| * SDK Lib: minor cleanup in UrlOpener.Raphael Moll2012-08-215-15/+47
| | | | | | | | | | | | | | | | | | | | | | Makes UrlOpener private. All callers should use the DownloadCache class, and UrlOpener must remain purely an implementation detail. That's because UrlOpener is just a bunch of static whereas DownloadCache is an instance that gets passed around and can be overriden for testing. Change-Id: Idacd328616f6c11df298f4e2b8f4ac7668cf6ffd
* | Merge "SDK Lib: fix some javadoc references."Raphael Moll2012-08-216-26/+28
|\ \ | |/
| * SDK Lib: fix some javadoc references.Raphael Moll2012-08-216-26/+28
| | | | | | | | | | | | | | Fixes some warnings due to obsolete javadoc references, mostly classes that have moved around. Change-Id: I38179f84d42b033f6f1132db2759d00e5a301fa5
* | Merge "Fix nullability annotations"Tor Norbye2012-08-217-27/+34
|\ \ | |/ |/|
| * Fix nullability annotationsTor Norbye2012-08-217-27/+34
| | | | | | | | | | | | | | | | | | | | | | Eclipse 3.8/4.2 requires that any method which overrides another method with a @NonNull parameter (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=381443). This changeset adds @NonNull on various overriding methods in newly added code such that Eclispe 4.2 doesn't show errors. Change-Id: Ice4a4b4dc31ba68c4e0911bb37c15da090076a0d
* | SDK Manager: fix HTTP Auth cancel.Raphael Moll2012-08-204-18/+30
|/ | | | | | | | | | | | | | | | When the SDK Manager prompts the user for HTTP Auth or NTLM auth, the API says the result should be null if the user cancelled. It wasn't, it was instead empty string fields and the download would abort the a "failed: no content" error in the log. This fixes the UI to respect the convention. It also makes sure that if the HttpClient call fails due to the user cancelling, we don't try to fallback on the java.UrlConnection method. Change-Id: Ibf1807f4becd40dbced17f851b3fdc5b394788ea
* SDK Manager: socket read timeout.Raphael Moll2012-08-201-1/+29
| | | | | | | | | | | | | This adds a non-null default timeouts on the HttpClient and UrlConnection instances. Most important is the socket read timeout which seems to be infinite by default. The default is at 1 minute for that one, with an option to change it via an env variable. I might want to expose it in the options dialog later (in another CL.) SDK Bug/Request: 26382 Change-Id: I8b1da6505ea331d0520987ab8955f39cf123202b
* SDK Manager: fix "null" error some people are getting.Raphael Moll2012-08-203-8/+47
| | | | | | | | | | | | | | | Some users reported in some cases they see a line in the sdk manager log that just says "null". Turns out to be an NPE when trying to read the null InputStream returned by UrlOpener in case of a failed URL fetch. UrlOpener used to throw an IOException when a resource couldn't be fetched, but then I added an alternate download path (to handle file:// resources) and that made it fail with a null input stream instead. So now the code throws an exception like it used to before. Change-Id: I92ef53992290c5e6fde8b0400274bbee822f2a61
* Make sure android.bat copies all the jars it needs.Xavier Ducrohet2012-08-171-0/+1
| | | | | | Bug: 6995718 Change-Id: I88b96a84c7e04051808fce7b54adb4160b927af1
* Unify all loggers in the sdk tools.Xavier Ducrohet2012-08-1743-517/+342
| | | | | | | | | | Removed ILogger from ide_common Removed ISdkLog (and implementations) from sdklib Moved all existing code to com.android.utils.ILogger which is located in common. Change-Id: Icd674d4b8d10f6ae8b60a83acb43cc53c7a52137
* Merge "ADT: Detect when SDK platforms/addons might have changed."Raphael Moll2012-08-161-77/+260
|\
| * ADT: Detect when SDK platforms/addons might have changed.Raphael Moll2012-08-151-77/+260
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a new functionality in SdkManager to keep track of the existing platforms/addons folder and detect later whether they might have changed. The check is a quick sanity check done on the presence of the target directory, its last-modified timestamp as well as the one of the source.properties. Whenever an SDK Manager instance updates an existing target or add/removes a new one, a change will be detected. Non-goal: this does not trigger when a user manually modifies the content of a target (e.g. its data files). A method is added in AdtPlugin to reload the SDK if the above method detects the targets have potentially changed. This is then used when there's a user interaction with something that depends on the latest state of the SDK, namely: opening XML files (layout, manifest, etc.) or opening a wizard (AVD manager, new project, new template.) These wizards already register for sdk/target change listeners and are notified asynchronously if the SDK has changed and is refreshed. Change-Id: Ia343c26321c0cb39c28a7c5d570c94e543344401