android webview网站推送通知程序

时间:2020-01-11 12:58:15

标签: java android-studio android-fragments android-webview android-push-notification

您好,我是Stackoverflow和Andriod Studio的新手。 我想编写一个程序,您可以在其中保存网站网址,当网站上有新文章时,该应用程序会通知您。

我家的香熏代码:

@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    View viewHomeFragment = inflater.inflate(R.layout.frament_home, container, false);


    Newsordner = new File(Environment.getExternalStorageDirectory(), "MN News");

    if (!Newsordner.exists()) {
        Newsordner.mkdirs();

    }


    textView = (TextView) viewHomeFragment.findViewById(R.id.textView);

   if(Newsordner.listFiles().length == 0)
   {
       textView.setVisibility(View.VISIBLE);

   }
   else
   {

       textView.setVisibility(View.INVISIBLE);
   }


        listView = (ListView) viewHomeFragment.findViewById(R.id.listviewWebsiten);
    arrayListSetup();
    ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(getContext(), android.R.layout.simple_list_item_1, texteliste);
    listView.setAdapter(arrayAdapter);

    viewHomeFragment.setOnKeyListener(new View.OnKeyListener() {
        @Override
        public boolean onKey(View v, int keyCode, KeyEvent event) {

            switch (keyCode) {
                case KeyEvent.KEYCODE_BACK:
                    getActivity().finish();
                    return true;
            }

            return false;
        }
    });

  listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
      @Override
      public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
          Intent intentWeb = new Intent(getActivity(), Web_Activity.class);
          intentWeb.putExtra("TEXT_", texteliste.get(position));

          getActivity().finish();

          startActivity(intentWeb);
      }
  });




    return viewHomeFragment;
}

private void arrayListSetup() {

    dateinliste = new ArrayList<>();
    texteliste = new ArrayList<>();

    Newsordner = new File(Environment.getExternalStorageDirectory(), "MN News");
    dateinliste.addAll(Arrays.asList(Newsordner.listFiles()));
    Collections.sort(dateinliste);
    Collections.reverse(dateinliste);

    int dateicounter = 0;

    while (dateicounter < dateinliste.size()) {
        texteliste.add(getTextFromFile(dateinliste.get(dateicounter)));
        dateicounter++;
    }


}

private String getTextFromFile(File datei) {

    StringBuilder stringBuilder = new StringBuilder();

    try {
        BufferedReader bufferedReader = new BufferedReader(new FileReader(datei));

        String aktuelleZeile;


        while ((aktuelleZeile = bufferedReader.readLine()) != null) {
            stringBuilder.append(aktuelleZeile);
            stringBuilder.append("\n");
        }


    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    return stringBuilder.toString().trim();
}

我的问题是如何编程

应用程序应自动检查存储在应用程序中的网站是否有新项目,然后向用户发送推送通知。

这是我的网络活动代码:

WebView webView;
String URLString;

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

    getSupportActionBar().hide();
    webView = (WebView) findViewById(R.id.webView);
    webView.setWebViewClient(new WebViewClient());

    if(getIntent().hasExtra("TEXT_"))
    {
        URLString = getIntent().getStringExtra("TEXT_");

        webView.loadUrl(URLString);

    }
}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {

    if (event.getAction() == KeyEvent.ACTION_DOWN) {
        switch (keyCode) {
            case KeyEvent.KEYCODE_BACK:
                if (webView.canGoBack()) {
                    webView.goBack();
                }
                else {
                    finish();
                    Intent intentHomefragment = new Intent(Web_Activity.this, MainActivity.class);
                    startActivity(intentHomefragment);
                }
                return true;
        }

    }
    return super.onKeyDown(keyCode, event);
}

}

希望您能在这里帮助我

0 个答案:

没有答案