Запросить веб-страницу одну страницу каждые 2 секунды Залп - PullRequest
0 голосов
/ 02 февраля 2020

Я хочу отправлять запрос на веб-страницу каждые 2 секунды. Я нашел в Google учебник по этому поводу и попытался создать пример кода, но, к сожалению, он не работает ....

Когда я пытаюсь сделать простой запрос без l oop, он работает отлично но когда я пытаюсь с l oop, то это уже пишет ошибку ....

Вот код, который я пытаюсь запустить:

 public void run1(){
        try {
            while(true) {

                Log.d(TAG, "test");
                RequestQueue queue = Volley.newRequestQueue(this);
                String url = "https://www.excursii-baile-felix.ro/rezervari/api_sms/sms.php?up=ready";

                StringRequest stringRequest = new StringRequest(Request.Method.GET, url,
                        new Response.Listener<String>() {
                            @Override
                            public void onResponse(String response) {
                                Log.d(TAG, "=============response=============");
                                //check response its is ok
                                if(response.length() > 0){
                                    textView.setText( response);
                                }else{
                                    Log.d(TAG, "NU am mesaj de trimis!");
                                }

                            }
                        }, new Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {
                        textView.setText("IMI PARE RAU CEVA NU A MERS!!");
                    }
                });

                queue.add(stringRequest);
                Thread.sleep(2000);                 //1000 milliseconds is one second.
            }
        } catch(InterruptedException ex) {
            Thread.currentThread().interrupt();
        }
    }



    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        number = "0770162059";
        message = "test";
        send = findViewById(R.id.send);
        final TextView textView = (TextView) findViewById(R.id.text);



        send.setEnabled(false);
        if(checkPermission(Manifest.permission.SEND_SMS)){
            send.setEnabled(true);
        }else{
            ActivityCompat.requestPermissions(this,
                    new String[]{Manifest.permission.SEND_SMS}, SEND_SMS_PERMISSION_REQUEST_CODE);

        }

        if(checkPermission(Manifest.permission.INTERNET)){
            Log.d(TAG, "======Internet permission ready=======");
        }else{
            ActivityCompat.requestPermissions(this,
                    new String[]{Manifest.permission.INTERNET}, INTERNET_PERMISSION_REQUEST_CODE);

        }


        run1();


    }

И ошибка, что я думаю, это в LogCat отображается:

02-02 11: 09: 26.763 6563-6563 / com.example.send_sm_test D / MainActivity: тест 02-02 11: 09: 26.763 6563-6590 / ком. example.send_sm_test I / qtaguid: тегирование сокета 49 с тегом 56062fc900000000 (-704237623) для uid -1 не выполнено errno = -2 02-02 11: 09: 26.763 6563-6590 / com.example.send_sm_test I / NetworkManagementSocketTagger: tagSocketF ( , -704237623, -1) ошибка с errno-2 02-02 11: 09: 26.763 6563-6590 / com.example.send_sm_test I / qtaguid: тегирование сокета 50 тегом 56062fc900000000 (-704237623) для uid -1 не выполнено -2 02-02 11: 09: 26.763 6563-6590 / com.example.send_sm_test I / NetworkManagementSocketTagger: tagS Ошибка ocketFd (50, -704237623, -1) с ошибкой errno-2 02-02 11: 09: 26.793 6563-6567 / com.example.send_sm_test D / dalvikvm: GC_CONCURRENT освобождено 361 КБ, 4% свободных 18869 К / 19463 КБ, приостановлено 1 мс + 1ms 02-02 11: 09: 26.833 6563-6590 / com.example.send_sm_test I / qtaguid: Ошибка разметки сокета 50: errno = -2 02-02 11: 09: 26.833 6563-6590 / com.example.send_sm_test W / NetworkManagementSocketTagger : untagSocket (50) завершился ошибкой с ошибкой -2

...