Minha rotina de download funcioana perfeitamente, até testar no motorola g7plus.. Alguma dica? abaixo o codigo

botao.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) {

            EditText campoUrl = (EditText) findViewById(R.id.formulario_URL);             String url = campoUrl.getText().toString();             if (url != null && !url.isEmpty() && verificaConexao() ) {                     DownloadManager downloadManager =                             (DownloadManager) getSystemService(DOWNLOAD_SERVICE);                      DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));                     long downloadId = downloadManager.enqueue(request);                      DownloadApplication app = (DownloadApplication) getApplication();                     app.downloadsAtivos.add(downloadId);              }else if (!verificaConexao()){                 Toast.makeText(FormularioMidiaActivity.this, "Não foi possivel fazer download, sem conexão no momento.", Toast.LENGTH_LONG).show();             }          }     }); 

public class DownloadReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { long downloadId = intent.getExtras().getLong(DownloadManager.EXTRA_DOWNLOAD_ID);

    DownloadApplication app =             (DownloadApplication) context.getApplicationContext();      if (app.downloadsAtivos.indexOf(downloadId) != -1) {         DownloadManager.Query query = new DownloadManager.Query();         query.setFilterById(downloadId);          DownloadManager downloadManager =                 (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);         Cursor cursor = downloadManager.query(query);          if (cursor.moveToFirst()) {             String uri =                     cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_LOCAL_URI));             String mime =                     cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_MEDIA_TYPE));              Intent abreArquivoIntent = new Intent(Intent.ACTION_VIEW);             abreArquivoIntent.setDataAndType(Uri.parse(uri), mime);              PackageManager packageManager = context.getPackageManager();             if (packageManager.resolveActivity(abreArquivoIntent, 0) != null) {                 PendingIntent acaoPendente =                         PendingIntent.getActivity(context, 0,                                 abreArquivoIntent, PendingIntent.FLAG_CANCEL_CURRENT);                  Notification notificacao = new NotificationCompat.Builder(context)                         .setContentTitle("Download concluído!")                         .setContentText(uri)                         .setSmallIcon(android.R.drawable.ic_menu_slideshow)                         .setAutoCancel(true)                         .setContentIntent(acaoPendente)                         .build();                  NotificationManager notificationManager =                         (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);                 notificationManager.notify(123, notificacao);                 Toast.makeText(context,                         "Download concluído", Toast.LENGTH_SHORT).show();             } else {                 Toast.makeText(context,                         "Não tem aplicativo para abrir o download", Toast.LENGTH_SHORT).show();             }         }          cursor.close();          app.downloadsAtivos.remove(downloadId);     } } 

}

Como testar um projeto escrito em Thymeleaft de forma prática?

Estou trabalhando em um projeto escrito em Thymeleaf, porém não tenho muita experiência com essa arquitetura.

Estou alterando código HTML/CSS para melhorar as visões gerais do aplicativo.

Para testar o aplicativo atualmente tenho de gerar um arquivo .war e subir este arquivo no servidor Tomcat, ou seja, um trabalho gigantesco para ver pequenas alterações de código.

Existe alguma forma mais simples de testar esse código sem ter de fazer todo este processo?

testar dados antes de gravar no banco

Dúvida de php com mysql: Tenho uma rotina em php que está funcionando, gravando os dados numa tabela. Agora surgiu a necessidade de fazer dois testes antes da gravação, e eu não estou conseguindo ter idéia de como fazer, por isso vou postar no próprio código pra ver se entendem. O primeiro teste, é ver se o número escolhido, já foi selecionado (variável numero), e caso isso ocorra, não gravar. O outro teste é impedir que o mesmo usuário (usuário apostador)faça mais de uma aposta. Segue código:

// validação (bem simples, só pra evitar dados vazios) if (empty($ data_hora) || empty($ apostador) || empty($ telefone) || empty($ numero)) { echo “Volte e preencha todos os campos”; exit; } $ hoje = date(“d-m-Y H:i”); $ limite = (’08-03-2019 16:35′); if (strtotime($ hoje) >= strtotime($ limite)){ echo “Esgotado o horario limite. Aguarde para o próximo sorteio!”; exit; }

// a data vem no formato dd/mm/YYYY // então precisamos converter para YYYY-mm-dd

// insere no banco $ PDO = db_connect();

// Acredito que esse teste deva ser feito aqui, antes de gravar, mas é só um palpite, pois tô mais perdido do que padre (alguns) em boate

//verificar se apostador e numero já existem na tabela, e caso exista, retornar o fluxo

$ sql = “INSERT INTO palpites(data_hora, apostador, telefone, numero) VALUES(:data_hora, :apostador, :telefone, :numero)”; $ stmt = $ PDO->prepare($ sql); $ stmt->bindParam(‘:data_hora’, $ data_hora); $ stmt->bindParam(‘:apostador’, $ apostador); $ stmt->bindParam(‘:telefone’, $ telefone); $ stmt->bindParam(‘:numero’, $ numero);

if ($ stmt->execute()) { header(‘Location: index.php’); } else { echo “Erro ao cadastrar”; print_r($ stmt->errorInfo());