Classe Intent e o Conceito de Pilha em Android

Receba em primeira mão o conteúdo exclusivo do Blog, além de promoções de livros e cursos de programação. Você receberá um email de confirmação. Somente depois de confirmar é que poderei lhe enviar o conteúdo exclusivo por email.

Email inválido.
Blog /Android /Classe Intent e o Conceito de Pilha em Android

Classe Intent e o Conceito de Pilha em Android

Vinícius Thiengo03/12/2013, Terça-feira, às 12h
(4468) (16) (9) (1)

Opa!, Blz?!

Nesse vídeo mostro o que é e qual a importância da classe Intent em um projeto Android além de mostrar também o conceito de pilha que é válido para todo o sistema Android. O vídeo parece um pouco longo, mas na verdade eu apresento o conceito de maneira simples sem entrar muito no total poder dessa classe, pois senão o vídeo levaria, no mínimo, uma hora. Porém o que é apresentado já o suficiente para você já começar a fazer aplicações chamando várias outras telas de sua própria aplicação ou de aplicações terceiras instaladas no Android. Enfim, vou evitar muitas delongas aqui e vou deixar você ver o vídeo. Só para ressaltar fique ligado no coonceito de pilha no Android, pois vai fazer você começar a intender mais profundamente o que acontece no Android.

O link para download do projeto se encontra logo abaixo no post.

Compartilhe, comente!

Receba em primeira mão o conteúdo exclusivo do Blog, além de promoções de livros e cursos de programação.
Email inválido

Relacionado

Criando Uma APP de Somar em AndroidCriando Uma APP de Somar em AndroidAndroid
Entendendo a Classe R.java do AndroidEntendendo a Classe R.java do AndroidAndroid
APP Android Thiengo [Calopsita] Está na Play StoreAPP Android Thiengo [Calopsita] Está na Play StoreAndroid
Conhecendo o Arquivo AndroidManifest.xmlConhecendo o Arquivo AndroidManifest.xmlAndroid

Compartilhar

Comentários Facebook (2)

Comentários Blog (14)

Para código / script, coloque entre [code] e [/code] para receber marcação especifica.
Forneça seu nome válido.
Forneça seu email válido.
Forneça o comentário.
Enviando, aguarde...
Marcela Oliveira (1) (0)
06/02/2017, Segunda-feira, às 16h
Boa tarde!
Esse setData , está dando erro, não aparece automaticamente e fiz manualmente também e continua o erro.
o que faço?
Responder
Vinícius Thiengo (0) (0)
07/02/2017, Terça-feira, às 00h
Marcela, tudo bem?

O setData() aceita somente dados do tipo URI. Veja se o putExtra() serve para ti. Trabalho melhor com o putExtra() no artigo do link a seguir.

http://www.thiengo.com.br/parcelable-no-android-entendendo-e-utilizando

Pode assistir mesmo se estiver apenas começando do Android. Abraço.
Responder
Carlos (1) (1)
22/01/2017, Domingo, às 19h
Vinicius, boa noite,

Antes de mais nada, agradeço pela resposta e pela ajuda que o sr. está fazendo.

Não sei o que estou fazendo de errado, modifiquei o xml do AndroidManifest e aparece erro, inseri o nome da nova activity a renomeei a antiga activity no código que foi passado.

Nos arquivos java, criei uma nova activity de exemplo e usei o código que aparece em seu vídeo e está tudo ok, mas o erro aparece no AndroidManifest.

Se eu passar os códigos do app de estudo que fiz, baseado no projeto do livro do prof.º Fernado Anselmo,  o sr. pode verificar onde está o erro?

O meu e-mail é:

macedo_car26@hotmail.com

Mais uma vez agradeço pela ajuda e desculpe pelo meu incômodo. Essa minha dúvida vai me ajudar em meus estudos para realizar alguns app's android.

Grato
Responder
Vinícius Thiengo (0) (0)
23/01/2017, Segunda-feira, às 09h
Carlos, respondido em comentário abaixo. Abraço.
Responder
Carlos (1) (0)
20/01/2017, Sexta-feira, às 00h
Ótimo vídeo! Assisti pela primeira vez no youtube e coloquei o seu blog em meus favoritos..

Estou com uma dúvida. É possível inserir uma nova tela em um app já pronto e fazer com que essa nova tela apareça primeiro? Não seria uma splashscreen, mas sim uma nova tela com botão que, ao ser clicado, levaria ao app.

Qual o procedimento para que isso fosse possível?

Grato
Responder
Vinícius Thiengo (0) (0)
20/01/2017, Sexta-feira, às 01h
Carlos, tudo bem?

Se o aplicativo não for de seu controle, digo, você não ter acesso aos códigos fontes dele, nesse caso não é possível.

Assim a solução seria aplicar engenharia reversa no .APK da APP e com isso criar um novo aplicativo, mas é aquilo, mesmo tendo as mesmas características seria um novo aplicativo.

Caso você tenha acesso aos fontes do projeto, neste caso é tranquilo adicionar uma nova tela, Activity. Abraço.
Responder
Carlos (1) (0)
20/01/2017, Sexta-feira, às 21h
Vinicius, agradeço pela resposta.

Como estou começando a criar app, sempre surge esses tipos de dúvidas. Comprei o livro do prof.º Fernando Anselmo e fiz um app simples partindo do exemplo do livro, por isso estou com todo o código fonte que digitei no eclipse.

Tentei usar o procedimento da sua vídeo aula e não tive muito sucesso, não sei o que estou fazendo errado.

O sr. poderia me ajudar com esse minha dúvida?

Grato
Responder
Vinícius Thiengo (0) (0)
21/01/2017, Sábado, às 08h
Ok, neste caso você precisa alterar o XML da Activity atual, digo, o XML do AndroidManifest.xml, fazendo com que a nova Activity, mais precisamente a tag dela nesse arquivo, tenha o a seguir:

?
<activity android:name=".SuaNovaActivity">
       <intent-filter>
              <action android:name="android.intent.action.MAIN" />

              <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
</activity>

<activity
         android:name=?.SuaAntigaActivity" />
?

Assim deve funcionar sem problemas, digo, abrir a Activity que você quer primeiro. Se não me engano falo um pouco sobre isso no artigo / vídeo do link a seguir: http://www.thiengo.com.br/ciclo-de-vida-de-uma-atividade-no-android

Abraço.
Responder
Carlos (0) (0)
23/01/2017, Segunda-feira, às 01h
Sr. Vinicius, boa noite,

Esqueci de enviar como está o arquivo xml, que apresentou erro, a nova activity que criei nomeei de "Novatela" e a antiga activity é "CalculadoraActivity".

Segue o arquivo AndroidManifest.xml:


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.ecalc"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="21" />
    
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        
        <activity
            android:name=".CalculadoraActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            
            ?
            android:name=".Novatela"
            android:label="@string/title_activity_novatela">
       <intent-filter>
              <action android:name="android.intent.action.MAIN" />

              <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
</activity>

<activity
         android:name=?.CalculadoraActivity"
         android:label="@string/title_activity_novatela" >
       ?
                      
        </activity>
    </application>

</manifest>
Responder
Vinícius Thiengo (0) (0)
23/01/2017, Segunda-feira, às 09h
Carlos, veja essa atualização em seu AndroidManifest.xml: http://pastebin.com/9wXHb6JP

Essa é a maneira como ele deve ser definido. Não deixe de depois estudar o artigo / vídeo do link a seguir: http://www.thiengo.com.br/conhecendo-o-arquivo-androidmanifest-xml

Abraço.
Responder
26/02/2015, Quinta-feira, às 10h
Beleza? Primeiramete te agradecer, vc ta fazendo algo que precisamos. Trabalho com Java Web, e estou inciando no android, quais são suas aulas que posso pegar de incio e dar continuidade, pois vc tem varias opções! desde já obrigado!
Responder
Vinícius Thiengo (0) (0)
26/02/2015, Quinta-feira, às 10h
Fala Ruan, blz?
Dê uma olhada no canal no YouTube ( https://www.youtube.com/user/thiengoCalopsita ), em especifico nessa Playlist ( https://www.youtube.com/playlist?list=PLBA57K2L2RILUAyMeRmw5kkt4-zzTHv78 ) já que está iniciando. Está um pouco antiga devido a eu utilizar Eclipse na época, mas se for acompanhando o código no AndroidStudio a implementação será a mesma. Abraço
Responder
30/01/2015, Sexta-feira, às 20h
Muito bom essas dicas, a dúvida fica então para o fato do botão sempre presente nos smartphones android. Fazer esses botões de voltar parecem redundantes. Mas no caso da aprendizagem é válido. Minha dúvida é no caso do botão de voltar nativo do aparelho, ele mata(finaliza) a atividade atual? ou a atividade ainda continua na pilha??? Parabéns pelo vídeo e obrigado.
Responder
Vinícius Thiengo (1) (0)
31/01/2015, Sábado, às 09h
Fala Davi, blz?
Na verdade o Android permanece com o processo de sua APP (não somente a Activity) na memória. O que acontece é que todo vez que vc abre um APP tem uma série de entidades que o Android deve criar somente para rodar a APP (Processo único, Ambiente de execução único, Heap única...) e esse processo de criação é demorado e pesado, então para evitar que esse processo ocorra novamente o ANdroid tenta ficar o maior tempo possível com os processos das APPs abertas ainda salvo na memária, pois caso o usuário volte a APP não será necessário criar tudo novamente, resumo, a Activity será sim finalizada (método onDestroy() será chamado), porém o processo, ambiente de execução, heap, ... vão permanecer alive até o Android não precisar começar a matar processos na memória. Abraço
Responder