예제 #1
0
  public void notificar(
      int idNotificacao,
      String titulo,
      String texto,
      String ticker,
      Class classe,
      Parada parada,
      int icone) {
    mBuilder.setContentTitle(titulo).setContentText(texto).setTicker(ticker);
    mBuilder.setSmallIcon(icone);
    Intent resultIntent = new Intent(con, classe);

    resultIntent.putExtra("nomeparada", parada.getNome());
    resultIntent.putExtra("codigoparada", parada.getCodigoParada());

    SimpleDateFormat dateFormat_hora = new SimpleDateFormat("HH:mm:ss");
    Date data = new Date();
    Calendar cal = Calendar.getInstance();
    cal.setTime(data);
    Date data_atual = cal.getTime();
    String hora_atual = dateFormat_hora.format(data_atual);

    resultIntent.putExtra("infotempoatual", hora_atual);

    TaskStackBuilder stackBuilder = TaskStackBuilder.create(con);
    stackBuilder.addParentStack(classe);
    stackBuilder.addNextIntent(resultIntent);
    PendingIntent resultPendingIntent =
        stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
    mBuilder.setContentIntent(resultPendingIntent);
    mNotificationManager.notify(idNotificacao, mBuilder.build());
  }
예제 #2
0
  @Override
  protected void onPostExecute(Object o) {
    super.onPostExecute(o);
    RespostaParada respostaParada = (RespostaParada) o;
    Parada parada = new Parada();
    parada.setCodigoParada(3333);
    parada.setNome("Parada Teste");
    // respostaParada.setEstaNaParada(false);//Apagar após testes na TelaParada

    if (respostaParada.isEstaNaParada()) {
      notificar(
          Notificacao.CENARIO,
          "Você está em uma parada de ônibus!",
          "Parada:" + " Nome Teste",
          "Cenário detectado: Parada de Ônibus!",
          TelaParada.class,
          parada,
          R.drawable.parada);
      notificar(
          Notificacao.CONDICOES_PARADA,
          "Parada em más condições?",
          "Reclamar das condições da parada!",
          "Más condições da parada de ônibus",
          TelaCondicoesParada.class,
          parada,
          R.drawable.condicoes_parada);
    }
  }
예제 #3
0
 @Override
 protected Object doInBackground(Object[] params) {
   if (autenticarSe()) {
     Cidadao cidadao = (Cidadao) params[0];
     HttpGet httpGet =
         new HttpGet("http://api.olhovivo.sptrans.com.br/v0" + "/Parada/Buscar?termosBusca=");
     Log.d("parada", "EstaNaParada - detectando todas as paradas...");
     try {
       HttpResponse httpResponse = httpClient.execute(httpGet);
       Log.d("parada", "HttpResponse httpResponse = httpClient.execute(httpGet);");
       HttpEntity httpEntity = httpResponse.getEntity();
       Log.d("parada", "HttpEntity httpEntity = httpResponse.getEntity();");
       JSONArray jsonArray = new JSONArray(EntityUtils.toString(httpEntity));
       Log.d("parada", "JSONArray jsonArray = new JSONArray(EntityUtils.toString(httpEntity));");
       // publishProgress("qtd paradas=" + jsonArray.length());
       Log.d("parada", "foram encontradas " + jsonArray.length() + " paradas.");
       // percorre cada parada encontrada
       for (int i = 0; i < jsonArray.length(); i++) {
         Log.d("parada", "parada encontrada nº" + i);
         if (cidadao.getLocalizacao().getLatitude()
             == jsonArray.getJSONObject(i).getDouble("Latitude")) {
           if (cidadao.getLocalizacao().getLongitude()
               == jsonArray.getJSONObject(i).getDouble("Longitude")) {
             // O cidadão está em uma parada
             RespostaParada respostaParada = new RespostaParada();
             respostaParada.setEstaNaParada(true);
             Parada parada = new Parada();
             parada.setCodigoParada(jsonArray.getJSONObject(i).getInt("CodigoParada"));
             parada.setNome(jsonArray.getJSONObject(i).getString("Nome"));
             parada.setEndereco(jsonArray.getJSONObject(i).getString("Endereco"));
             Localizacao localizacao = new Localizacao();
             localizacao.setLatitude(jsonArray.getJSONObject(i).getDouble("Latitude"));
             localizacao.setLongitude(jsonArray.getJSONObject(i).getDouble("Longitude"));
             parada.setLocalizacao(localizacao);
             respostaParada.setParada(parada);
             Log.d("parada", "parada encontrada!ok!");
             return respostaParada;
           }
         }
       }
     } catch (Exception e) {
       Log.d("parada", "ERRO: " + e.getMessage());
       e.printStackTrace();
     }
   }
   RespostaParada respostaParada = new RespostaParada();
   respostaParada.setEstaNaParada(false);
   Log.d("parada", "busca de paradas foi concluída.");
   return respostaParada;
 }