Hello Roman,
As you now, different Android versions has different formulae for calculating widget size in dps depend on desired size in cells.
It will be nice to have a tool inside the AndroidAssetStudio that will automate this and generate widget_provider.xml and associated dimens.xml files.
Let me illustrate this.
For example, I need a widget with size 4x2 (in standard screen cells), with ability to shrink to 2x2.
So, the input web form will looks like:
Widget width: 4 (numeric field)
Widget height: 2 (numeric field)
Resize mode: horizontal (dropdown)
Minimal width: 2 (numeric field)
Minimal height: 2 (numeric field)
Margins (for ICS and lower), in dp: 8 (numeric field)
And output will include a zip archive with following content:
/res/xml/widget_provider.xml:
<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider
xmlns:android="http://schemas.android.com/apk/res/android"
android:minWidth="@dimen/widget_min_width"
android:minHeight="@dimen/widget_min_height"
android:minResizeWidth="@dimen/widget_min_resize_width"
android:minResizeHeight="@dimen/widget_min_resize_height"
android:resizeMode="horizontal">
</appwidget-provider>
/res/values/dimens.xml:
All dimensions here are calculated by formula size_in_dp = (70 × n) - 30, where n - number of cells
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="widget_margin">8dp</dimen>
<dimen name="widget_min_width">250dp</dimen>
<dimen name="widget_min_height">110dp</dimen>
<dimen name="widget_min_resize_width">110dp</dimen>
<dimen name="widget_min_resize_height">110dp</dimen>
</resources>
/res/values-v14/dimens.xml:
All dimensions here are calculated by formula size_in_dp = (74 × n) - 2, where n - number of cells, and margin size is 0
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="widget_margin">0dp</dimen>
<dimen name="widget_min_width">294dp</dimen>
<dimen name="widget_min_height">146dp</dimen>
<dimen name="widget_min_resize_width">146dp</dimen>
<dimen name="widget_min_resize_height">146dp</dimen>
</resources>
Thanks!