5. Quando o usuário salva algo nas preferências
(settings), esse valor fica salvo no arquivo
(SharedPreferences). Onde armazena
informações em chaves de dados primitivos.
EXEMPLO?
Settings
6. Settings
1. Criar um SettingsActivity;
a. Use uma classe PreferenceActivity;
2. Atualize o AndroidManifest para declarar a
SettingsActivity;
Versão Simplificada: goo.gl/8YPft1
Android Developers: goo.gl/yz8uz2
7. Settings
1. Coloque o SettingsActivity para aparecer no MainActivity e no
DetailActivity;
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.action_settings) {
StartActivity(new Intent(this, SettingsActivity.class));
return true;
}
return super.onOptionsItemSelected(item);
}
8. Settings
1. Crie um arquivo(XML) chamado pref_general.xml com
<PreferenceScreen>.
2. Add EditTextPreference para configurações da
Localização;
3. Adicione Strings no strings.xml;
Veja exemplo de <PreferenceScreen> aqui: goo.gl/CN5uXu
9. Settings
1. Carregue o XML layout do SettingsActivity com o
addPreferencesFromResource(R.xml.
pref_general);
2. Conectar as preferências de localização com o
bindPreferenceSummaryToValue
(findPreference(getString(R.string.
pref_location_key));
12. Maps
❏ Add no arquivo de menu da tela principal outro
item (maps);
❏ Na Activity principal vamos chamar o maps;
13. Maps
private void openPreferredLocationInMap() {
String location = Utility.getPreferredLocation(this);
Uri geoLocation = Uri.parse("geo:0,0?").buildUpon()
.appendQueryParameter("q", location)
.build();
Intent viewOnMapIntent = new Intent(Intent.ACTION_VIEW);
viewOnMapIntent.setData(geoLocation);
if (viewOnMapIntent.resolveActivity(getPackageManager()) != null) {
startActivity(viewOnMapIntent);
} else {
Log.e(LOG_TAG, "Couldn't open map to location: " + location + ", no available Intent");
}
}
14. Shared Intent
❏ Compartilhar um conteúdo é uma das ações mais
comuns entre usuários mobile;
❏ Para compartilhar fotos, textos, videos, músicas,
não precisamos nem saber quais os aplicativos
favoritos do usuário;
❏ Apenas diga ao Android qual conteúdo você quer
compartilhar e ele vai listar os aplicativos que
podem compartilhar;
Send Intent
16. Shared Intent
1. Criem um novo arquivo de menu chamado
detailFragment;
2. Add um ShareActivityProvider em DetailActivity;
3. Add um texto para compartilhar junto exemplo #gdgjp;