Escolar Documentos
Profissional Documentos
Cultura Documentos
Tópicos Abordados
• Aplicações no Android
• AndroidManifest.xml
• Permissões de acesso
• Activities
• Resources
• Logging
Aplicações no Android
Activities Services
Android
AndroidManifest.xml
Core
1
AndroidManifest.xml
AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="softblue.android"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="softblue.android.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
Permissões de Acesso
2
Permissões de Acesso
Activities
A Classe Context
3
A Classe Context
A Classe Context
Contexto da activity
MyManager m = MyManager.getInstance(getApplicationContext());
}
}
Contexto da aplicação
Activities e Views
4
Activities e Views
Criação de uma
caixa de texto
Renderiza a view
Invocando Activities
Activity Activity
Activity
Activity Activity
Invocando Activities
5
Retornando Informações
Retornando Informações
É preciso fornecer, além
da intent, um código de
identificação
Tela1.java
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//...
}
Retornando Informações
Tela2.java
setResult(10);
finish(); Define um código
de resposta
Finaliza a activity
Tela1
6
Passagem de Parâmetros
Tela1.java
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Passagem de Parâmetros
Intent it = getIntent();
Bundle params = it.getExtras();
String msg = params.getString("msg");
}
As Activities na Memória
7
A Pilha de Activities
Pilhas
Activity 4
Activity 3 ...
Aplicações executando
onResume()
Outras aplicações
onPause()
precisam de memória
onStop() onDestroy()
8
Ciclo de Vida de uma Activity
Executando
onResume() onPause()
onStart() onStop()
onCreate() onDestroy()
onRestart()
Foreground Lifetime
Visible Lifetime
Entire Lifetime
O método onSaveInstanceState()
9
Restaurando o Estado de uma Activity
if (savedInstanceState != null) {
this.nome = savedInstanceState.getString("nome");
this.idade = savedInstanceState.getInt("idade");
}
}
• O método onRestoreInstanceState(Bundle)
também é chamado (depois de onStart())
Resources
10
String Resources
/res/values/strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Minha Aplicação</string>
<string name="button_text">Pressione Aqui</string>
</resources>
Nome Valor
Color Resources
/res/values/colors.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="white">#FFFFFF</color>
<color name="blue">#0000FF</color>
</resources>
Nome Valor
A Classe R
11
Usando a Classe R
/res/values/strings.xml
<resources>
<string name="button_text">Pressione Aqui</string>
</resources>
MyActivity.java
Button b = new Button(this);
String text = getString(R.string.button_text);
b.setText(text);
setContentView(b);
Classe R
Implementação da Classe R
R.java
/* AUTO-GENERATED FILE. DO NOT MODIFY.
*
* This class was automatically generated by the
* aapt tool from the resource data it found. It
* should not be modified by hand.
*/
A classe não
package softblue.android; deve ser editada
Drawable Resources
res
drawable R.drawable.android
android.png
MyActivity.java
ImageView img = new ImageView(this);
img.setImageResource(R.drawable.android);
setContentView(img);
12
Layout Resources
Arquivo de Layout
/res/layout/main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content" Texto
android:text="Digite seu nome:"
/>
<EditText
android:layout_width="match_parent" Caixa de
android:layout_height="wrap_content" texto
/>
</LinearLayout>
Aplicando um Layout
res
layout R.layout.main
main.xml
MyActivity.java
setContentView(R.layout.main);
13
Referenciando Resources no XML
/res/values/strings.xml
<resources>
<string name="name_text">Digite seu nome:</string>
</resources>
/res/layout/main.xml
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/name_text"
/>
14
Definindo Resource IDs
Exemplo de Definição de ID
/res/layout/main.xml
<EditText
android:id="@+id/name_box"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
MyActivity.java
EditText e = (EditText) findViewById(R.id.name_box);
String s = e.getText().toString();
System Resources
15
Outros Tipos de Resources
Logging
16
LogCat
A tag permite
categorizar a mensagem
Log de mensagem de
informação
A View LogCat
17
18