Mudanças entre as edições de "Laboratório de App Inventor 3"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
 
(32 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 1: Linha 1:
 
= Objetivos =
 
= Objetivos =
  
Ao final da aula o aluno deverá ser capaz de:
+
Ao final da aula o aluno deverá, dentro do contexto do ''app inventor'',  ser capaz de:
  
*usar os componentes ''PhoneCall'' e PhoneNumberPicker (tratamento de chamada e lista telefônica);
+
*usar os componentes ''PhoneCall'' e ''PhoneNumberPicker'' (tratamento de chamada e lista telefônica);
*usar o componente ''Texting'' para o envio de mensagens SMS;
+
*reaproveitar o código de um aplicativo já realizado para incluir novas funções
*usar o component ''tinyDB'' para armazenar dados não voláteis no telefone;
 
*usar o componente ''TinyWebDB'' para armazenar dados via ''Web''.
 
  
no desenvolvimento de aplicações app inventor.
+
=Preparando o telefone ''Android'' para receber as aplicações=
 +
As dicas detalhadas sobre a configuração podem ser encontradas no site [http://developer.android.com/guide/developing/device.html Using Hardware Devices].
 +
{{collapse top| Para configurar no Ubuntu, siga o seguinte procedimento:}}
 +
:1. Abra um terminal e faça o login como root (você precisa ser sudoer para poder configurar o hardware) :
 +
<code>
 +
sudo -i
 +
</syntaxhighlight>
 +
:2.  Adicione um arquivo udev rules que irá conter a configuração de USB para cada tipo de dispositivo que você deseja utilizar. Crie o arquivo  /etc/udev/rules.d/51-android.rules
 +
<code>
 +
gedit /etc/udev/rules.d/51-android.rules
 +
</syntaxhighlight>
 +
:3. Insira nesse arquivo os fabricantes de celulares que deseja utilizar (pode adicionar todos para facilitar).
 +
<code>
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”0502″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”0B05″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”413C”, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”0489″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”091E”, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”18D1″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”109B”, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”0BB4″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”12D1″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”24E3″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”2116″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”0482″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”17EF”, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”1004″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”22B8″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”0409″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”2080″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”0955″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”2257″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”10A9″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”1D4D”, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”0471″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”04DA”, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”05C6″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”1F53″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”04E8″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”04DD”, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”0FCE”, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”2340″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”0930″, MODE=”0666″, GROUP=”plugdev”
 +
SUBSYSTEM==”usb”, ATTRS{idVendor}==”19D2″, MODE=”0666″, GROUP=”plugdev”
 +
</syntaxhighlight>
 +
4. Reinicie os servidores de dispositivos
 +
<code>
 +
cd /usr/google/appinventor/commands-for-Appinventor
 +
./adb kill-server
 +
./adb devices
 +
</syntaxhighlight>
 +
5.Ligue o modo "USB Debugging" no seu Celular (ou Tablet).
 +
:No dispositivo vá até Configurações > Aplicações > Opções de Desenvolvimento > habilite USB debugging (nos dispositivos Android 4.0, Configurações > Aplicações > Opções de Desenvolvimento > habilite USB debuggin).
 +
{{collapse bottom}}
  
=Preparando o telefone ''Android'' para receber as aplicações =
+
= Uso dos componentes ''PhoneCall'' e ''PhoneNumberPicker'' =
 +
 
 +
Os componentes [http://beta.appinventor.mit.edu/learn/reference/components/social.html#PhoneCall ''PhoneCall''] e [http://beta.appinventor.mit.edu/learn/reference/components/social.html#PhoneNumberPicker ''PhoneNumberPicker''] permitirão realizar chamadas telefônicas e acesso a agenda telefônica do ''Android''.
 +
 
 +
Para um teste completo do tutorial que se segue, você deverá ter um telefone com ''Android'' conectado ao seu sistema. O emulador poderá ser usado mas as chamadas não serão efetuadas.
 +
 
 +
[http://beta.appinventor.mit.edu/learn/tutorials/piccall/piccall.html Acessar o tutorial ''PicCal''] [http://translate.google.com.br/translate?sl=en&tl=pt&js=n&prev=_t&hl=pt-BR&ie=UTF-8&layout=2&eotf=1&u=http%3A%2F%2Fbeta.appinventor.mit.edu%2Flearn%2Ftutorials%2Fpiccall%2Fpiccall.html&act=url pt.]
 +
 
 +
OBS: Nos telefones testados o PhoneNumberPicker está apresentando problemas.
  
= Uso dos componentes ''PhoneCall'' e ''PhoneNumberPicker'' =
 
  
[http://beta.appinventor.mit.edu/learn/tutorials/piccall/piccall.html Acessar o tutorial ''PicCal'']
+
'''Exercício complementar''': adicione um componente ''Label'' para mostrar o nome da pessoa que está sendo chamada. Acrescente um botão para reiniciar, apresentando o número e nome original do início do programa.
  
= Uso dos comnponentes ''Texting'' e ''tinyDB'' =
+
==Exercício==
 +
Implementar o PicCal com a agenda telefônica implementada na aula passada.
 +
:Adicione os componentes [http://beta.appinventor.mit.edu/learn/reference/components/social.html#PhoneCall ''PhoneCall''] e mais um "Button".  Mude seus nomes para ''Discador'' e ''DiscarNumero''.
 +
:Acrescente o código que faça com que ao acionar o Botão ''DiscarNumero'', o número que está selecionado na agenda seja discado.
  
[http://beta.appinventor.mit.edu/learn/tutorials/broadcasterhub/broadcasterhub.html  Acessar o tutorial ''Broadcast Hub'']
+
= Telephones e versão de Android testados no IFSC-SJ com App Inventor =
  
= Uso do componente ''TinyWebDB'' =
+
* [http://www.gsmarena.com/samsung_i9100_galaxy_s_ii-3621.php Samsung S II] - Android 2.3.3 (habilitar para inglês para funcionar sintetizador)
 +
  Obs: tem problemas no picklist
 +
* [http://www.gsmarena.com/samsung_galaxy_fit_s5670-3726.php Samsung Fit] (gt-S5670L)  - Android 2.2.1 (necessário instalar módulo sintetizador)
 +
* [http://www.gsmarena.com/motorola_defy-3514.php Motorola DEFY] (MB525)  - Android 2.3.7
  
O componente [http://beta.appinventor.mit.edu/learn/reference/components/other.html#TinyWebDB ''TinyWebDB''] permite que uma aplicação ''app inventor'' armazene de forma persistente informações em uma base de dados acessada via ''web''. Esta facilidade permitirá a comunicação entre aplicações
+
==Bandas de Freqüências para o Celular no Brasil==
de diferentes telefones (implementar jogos multi-usuários, por exemplo).
+
*[http://www.teleco.com.br/bandac.asp# Freqüências para o Celular no Brasil] -Teleco
 +
*[http://www.teleco.com.br/4g_freq.asp Freqüências de 4G (LTE) no Brasil] - Teleco
 +
*[http://www.teleco.com.br/mapa.html Mapa Celular do Brasil] - Teleco
  
Por outro lado, é necessário ter um servidor ''web'' preparado para este seriço. O MIT fornece um que é usado por ''default'' no componente TinyWebDB. Não é garantida a permanência de dados nesta base de dados já que é limitada a 1000 registros que são compartilhados por todos os usuários do sistema. Futuramente proporcionaremos nosso próprio servidor.
+
{{ENGTELECO}}

Edição atual tal como às 08h27min de 2 de maio de 2012

Objetivos

Ao final da aula o aluno deverá, dentro do contexto do app inventor, ser capaz de:

  • usar os componentes PhoneCall e PhoneNumberPicker (tratamento de chamada e lista telefônica);
  • reaproveitar o código de um aplicativo já realizado para incluir novas funções

Preparando o telefone Android para receber as aplicações

As dicas detalhadas sobre a configuração podem ser encontradas no site Using Hardware Devices.

Para configurar no Ubuntu, siga o seguinte procedimento:
1. Abra um terminal e faça o login como root (você precisa ser sudoer para poder configurar o hardware) :

sudo -i </syntaxhighlight>

2. Adicione um arquivo udev rules que irá conter a configuração de USB para cada tipo de dispositivo que você deseja utilizar. Crie o arquivo /etc/udev/rules.d/51-android.rules

gedit /etc/udev/rules.d/51-android.rules </syntaxhighlight>

3. Insira nesse arquivo os fabricantes de celulares que deseja utilizar (pode adicionar todos para facilitar).

SUBSYSTEM==”usb”, ATTRS{idVendor}==”0502″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”0B05″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”413C”, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”0489″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”091E”, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”18D1″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”109B”, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”0BB4″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”12D1″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”24E3″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”2116″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”0482″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”17EF”, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”1004″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”22B8″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”0409″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”2080″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”0955″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”2257″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”10A9″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”1D4D”, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”0471″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”04DA”, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”05C6″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”1F53″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”04E8″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”04DD”, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”0FCE”, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”2340″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”0930″, MODE=”0666″, GROUP=”plugdev” SUBSYSTEM==”usb”, ATTRS{idVendor}==”19D2″, MODE=”0666″, GROUP=”plugdev” </syntaxhighlight> 4. Reinicie os servidores de dispositivos cd /usr/google/appinventor/commands-for-Appinventor ./adb kill-server ./adb devices </syntaxhighlight> 5.Ligue o modo "USB Debugging" no seu Celular (ou Tablet).

No dispositivo vá até Configurações > Aplicações > Opções de Desenvolvimento > habilite USB debugging (nos dispositivos Android 4.0, Configurações > Aplicações > Opções de Desenvolvimento > habilite USB debuggin).

Uso dos componentes PhoneCall e PhoneNumberPicker

Os componentes PhoneCall e PhoneNumberPicker permitirão realizar chamadas telefônicas e acesso a agenda telefônica do Android.

Para um teste completo do tutorial que se segue, você deverá ter um telefone com Android conectado ao seu sistema. O emulador poderá ser usado mas as chamadas não serão efetuadas.

Acessar o tutorial PicCal pt.

OBS: Nos telefones testados o PhoneNumberPicker está apresentando problemas.


Exercício complementar: adicione um componente Label para mostrar o nome da pessoa que está sendo chamada. Acrescente um botão para reiniciar, apresentando o número e nome original do início do programa.

Exercício

Implementar o PicCal com a agenda telefônica implementada na aula passada.

Adicione os componentes PhoneCall e mais um "Button". Mude seus nomes para Discador e DiscarNumero.
Acrescente o código que faça com que ao acionar o Botão DiscarNumero, o número que está selecionado na agenda seja discado.

Telephones e versão de Android testados no IFSC-SJ com App Inventor

  • Samsung S II - Android 2.3.3 (habilitar para inglês para funcionar sintetizador)
 Obs: tem problemas no picklist
  • Samsung Fit (gt-S5670L) - Android 2.2.1 (necessário instalar módulo sintetizador)
  • Motorola DEFY (MB525) - Android 2.3.7

Bandas de Freqüências para o Celular no Brasil


Curso de Engenharia de Telecomunicações