Para criar um widget funcional que o usuário possa adicionar à tela inicial, crie uma nova classe que herde de AppWidgetProvider. Essa classe contém métodos para receber intents específicos de widget (ex: fechar ou atualizar). Um widget também precisa de um arquivo XML de metadados, que informa ao Android sobre propriedades pretendidas: dimensões mínimas, frequência de atualização, layout e outros dados necessários.
Widgets em smartphones têm tamanho limitado e só podem se atualizar com certa frequência. Em Android < 3.1, eles substituem ícones na tela inicial e não podem ser redimensionados; ao especificar tamanho mínimo, ele se estende para cobrir os espaços necessários. Versões posteriores têm widgets redimensionáveis; as variáveis de tamanho tornam-se "padrão" e novas variáveis (minResizeWidth, minResizeHeight) definem o tamanho mínimo real. Além disso, todos widgets têm frequência mínima de atualização. Se especificar frequência menor que a mínima, o Android ignora e usa a sua (ex: 30 min na versão 1.5).
Widgets devem rodar em muitos telefones com diferentes resoluções. LinearLayout é simples e cabe em qualquer tela; ordena componentes da esquerda para direita ou topo para baixo conforme atributo "android:orientation". FrameLayout e RelativeLayout também são compatíveis. Widgets podem aninhar layouts. Android 4.0+ aplica margens automaticamente se targetSdkVersion >= 14; recomenda-se não adicionar margens extras fora da forma de fundo do widget para essa plataforma.
Alguns widgets só exibem informação e não são personalizáveis. Outros oferecem configuração. Implemente criando uma classe que estenda Activity e definindo layout com XML. Sua classe de configuração deve acessar componentes do layout para que o widget reconheça ações do usuário e atualize. AndroidManifest.xml mantém lista de activities implementadas.
Tecnologia Eletrônica © [www.351231.com]