2014-09-12 5 views
5

Sono un principiante di Android e ho davvero bisogno del tuo aiuto. Sulla notifica push (GCMintentservice) riesco a fare cose usando l'intenzione in sospeso. ma voglio mostrare un popup o un'attività invece di un messaggio di notifica push nella barra di stato. Ciò significa che se l'app è in esecuzione, l'utente visualizzerà un'attività e NON un messaggio sulla barra di stato. So che non è raccomandato. Ma è possibile? Qualsiasi aiuto è apprezzato.Sulla notifica push mostra un'attività/popup, invece del messaggio nella barra di stato

Grazie in anticipo

risposta

1

Sì! è possibile. Alla ricezione di un messaggio spinta da GCM, l'uso seguente metodo:

public boolean isForeground(String myPackage) { 
     ActivityManager manager = (ActivityManager) ctx 
       .getSystemService(Activity.ACTIVITY_SERVICE); 
     List<ActivityManager.RunningTaskInfo> runningTaskInfo = manager 
       .getRunningTasks(1); 

     ComponentName componentInfo = runningTaskInfo.get(0).topActivity; 
     if (componentInfo.getPackageName().equals(myPackage)) 
      return true; 
     return false; 
    } 

Si verrà a sapere se la vostra applicazione è in primo piano o sullo sfondo. Se è in background, mostra una notifica altrimenti mostra un AlertDialog.

Sopra metodo ha bisogno di questa autorizzazione:

<uses-permission android:name="android.permission.GET_TASKS" /> 
+0

grazie Vinay. fammi controllare e tornerò. –

+0

può mostrare popup se l'app è in background con servizio in background in esecuzione – Prasad