Iniciar app após boot do android

351 views
Skip to first unread message

Gabriel Nobre de Souza

unread,
Jan 28, 2014, 9:04:53 AM1/28/14
to ce...@googlegroups.com
Ola pessoal,

estou tentando fazer com que uma app inicialize junto com o android e implementei o seguinte código.

public class IniciarApp extends BroadcastReceiver {

@Override
public void onReceive(Context ctx, Intent arg1) {
// TODO Auto-generated method stub
Intent intent = new Intent(ctx, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
ctx.startActivity(intent);
}


e no Manifest coloquei a permissão e o receiver:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

<receiver android:name="jus.br.projufe.controller.IniciarApp" >
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
        </intent-filter>
</receiver>



alguém já teve essa mesma experiência?




Darlan C. de Sousa

unread,
Jan 29, 2014, 4:33:47 PM1/29/14
to ce...@googlegroups.com
Não sei se você já conseguiu resolver... em um projeto utilizei o seguinte:

No Manifest:
A permissão para o BroadcastReceiver poder ser invocado ao final da inicialização do sistema.
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

Configuração de um BroadcastReceiver, pelo que vi, a unica diferença do meu projeto pro teu é a adição da category.
<receiver android:name=".ProjetoBroadcastReceiver">
              <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>               
</receiver> 

Configurei a minha activity com action Main só por garantia.
<activity
            android:name=".SplashBootActivity"
            android:label="@string/app_name"
            android:configChanges="orientation|keyboardHidden"
            android:screenOrientation="landscape" 
            android:hardwareAccelerated="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
            </intent-filter>
        </activity>

No BroadCastReceiver tenho o seguinte (pelo que eu vi não tem diferença):

public class ProjetoBroadcastReceiver extends BroadcastReceiver {

	@Override
	public void onReceive(Context arg0, Intent arg1) {
		Log.i("Broadcast", "inicializando activity");
		Intent intent = new Intent(arg0, SplashBootActivity.class);
		intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
		arg0.startActivity(intent);
	}
}

Enfim, no meu projeto ta funcionando perfeitamente. Espero que ajude.


--
Você está recebendo esta mensagem porque se inscreveu no grupo "CEJUG" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para cejug+un...@googlegroups.com.
Para postar neste grupo, envie um e-mail para ce...@googlegroups.com.
Visite este grupo em http://groups.google.com/group/cejug.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.

Gabriel Nobre de Souza

unread,
Jan 30, 2014, 8:37:17 AM1/30/14
to ce...@googlegroups.com
Cara muito obrigado, consegui resolver aqui já eu estava declarando o <receiver> fora do aplication, era apenas isso.

mas de qualquer forma vlw.


Date: Wed, 29 Jan 2014 19:33:47 -0200
Subject: Re: [CEJUG] Iniciar app após boot do android
From: dcsd...@gmail.com
To: ce...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages