posted May 8, 2014, 9:04 AM by Tor Norbye
We've just released Android Studio 0.5.8 with the following improvements:
- Fixed a number of crash reports from recent canary builds
- Integrated two more IntelliJ EAP builds: 135.760 (release notes) and the earlier 135.689 (release notes)
- Support for Gradle 1.12, and the new Android Gradle plugin 0.10.
- If you configure a "resource prefix" for your Android library (see the build system docs), in order to avoid accidental name clashes, Studio will flag all resources that do not conform to the given prefix, and it will also default newly suggested identifiers in the layout editor, create resource dialogs etc to identifiers which begin with the prefix.
- Layout Editor
- Support for "show in included", which lets you view and edit layouts that are included in other layouts "in context". Take for example the rating-bar layout from the Google I/O 2013 app:
You can now edit this rating bar layout embedded within another layout which uses it, such that you can see how it appears in context:
The outer layout is shown partially translucent to make it more obvious which parts of the layout are editable and part of this layout, and which parts are not. Note also how the Component Tree on the right will list the name of the surrounding layout. When you invoke Extract Include, the included layout is shown in the above way automatically.
The layout editor and XML layout preview rendering now supports "hover": as you move your mouse around, the view under the mouse is highlighted slightly and shown with a faint dashed border. This makes it easier to understand the structure of your layout without having to click to select each view.
The frequently reported bug where using cut, copy and paste shortcut keys in the property sheet would operate on the whole widgets rather than the property sheet text has been fixed.
- Lint: Several new checks:
- A layout include tag check which ensures that if you specify layout parameters on an include tag you also specify layout_width and layout_height, since otherwise the other layout parameters will be ignored (helps uncover problems like this stackoverflow question)
- A couple of app compat library checks:
- Ensures that when using the appcompat library, you call the right methods - e.g. getSupportActionBar() instead of getActionBar(). NOTE: This lint check may incorrectly report issues in projects which are not using AppCompat at all. This bug has been fixed and will appear in 0.5.9.
- Ensures that your menu resource files are using the correct form of showAsAction. A frequent problem for developers manually adding or removing app compat dependencies was forgetting to change between android:showAsAction and app:showAsAction. Worse yet, using the app: namespace one without appcompat could result in an aapt crash. Lint now validates these files.
- A locale folder check which ensures that you are using the correct ISO code for a couple of locales where there is a more modern ISO code but where the code is not yet the right one to use
- A check which discourages use of signatureOrSystem level permissions
- Several checks that have only been available from the lint command line (because they rely on analyzing bytecode, which is not available inside Studio where there is no compile-on-save) have been ported to run incrementally in the editor in Studio. This includes the Parcel creator check, the view constructor check, the wrong draw/layout call check, and the valid fragment check.
- Import: When editing build.gradle files under the project root which have not been imported into the project, there is an editor banner warning you that it's missing and offering to import it
- Run Configurations: Improved "reuse this device" handling: Show device chooser again if the set of available devices has changed
- Many, many bug fixes!
If you are already running Android Studio, just restart it, or manually check for updates via Help > Check for Update... (on OSX, look in the Android Studio menu). This will download and install a small patch rather than download a full IDE image.
If you run into problems, be sure to check the Known Issues
page which we'll update as necessary