Здравствуйте, я новичок в stackoverflow и в студии andriod. Я хочу запрограммировать приложение, в котором вы можете сохранить URL-адрес веб-сайта, и приложение уведомит вас о появлении новой статьи на веб-сайте.
Код моего домашнего фрагмента:
@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();
}
Мой вопрос как вы можете запрограммировать это
приложение должно автоматически проверять наличие новых элементов на веб-сайтах, хранящихся в приложении, а затем отправлять пользователю уведомление pu sh.
вот мой код web_activity:
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);
}
}
Надеюсь, вы поможете мне здесь