Как создавать локальные pu sh уведомления android studio - PullRequest
0 голосов
/ 19 января 2020

Здравствуйте, я новичок в использовании android studio и пытаюсь создать приложение, которое уведомит меня, когда новая статья будет опубликована на сайте моего университета. До сих пор мне удавалось сделать это, используя jsoup и сравнивая 2 текстовых просмотра

Первым является Jsoup, извлеченный из веб-сайта, который затем сохраняется во втором текстовом виде с общими настройками, когда создается сообщение и 2 текстовых просмотра не совпадают с созданным уведомлением

Вот код publi c class doit extends AsyncTask {String desct;

    @Override
    protected Void doInBackground(Void... voids) {

        try {


            Document doc = Jsoup.connect("My uni's website").get();
            Element main = doc.select("h2[class=entry-title]").get(0);
            desct = main.text();



        }


        catch (Exception e){e.printStackTrace();}

        return null;
    }

    @Override
    protected void onPostExecute(Void aVoid) {
        super.onPostExecute(aVoid);
        text.setText(desct);
        if (NetworkUtils.isNetworkConnected(getApplicationContext()) && text2.getText().toString().equals(text.getText().toString())) {
        }
        else if(NetworkUtils.isNetworkConnected(getApplicationContext())&& text.getText().length() > 1){
            Log.d("123","text2");
            text2.setText(text.getText().toString());
            SharedPreferences.Editor preferencesEditor = savedFields.edit();
            preferencesEditor.putString("Update", text2.getText().toString());
            preferencesEditor.commit();
            sendOnChannel1(); /* this is the notification channel */

        }




    }}

Моя проблема заключается в том, что мое приложение ищет только уведомления когда он работал, я искал способы заставить мое приложение искать уведомления, но есть так много вещей (Alarm Manager, WorkManager, JobScheduler, BroadcastReceiver, Intent service, Foreground Service), что я был ошеломлен и запутался.

также я читал об ограничениях после Android 8, поэтому многие из этих методов даже не работают

Мой вопрос: какой метод я должен использовать, чтобы я мог запустить вышеупомянутую асинхронную задачу, когда приложение не запускается один раз? каждый час

Также это «путь», который я проверяю уведомления хорошие? я должен попытаться сделать это более чистым или я должен оставить это, поскольку это работает?

Спасибо за ваше время

...