1. Mitglieder surfen ohne Werbung auf Android-Hilfe.de! ✔ Jetzt kostenlos Mitglied in unserer Community werden.
  1. Janoroid, 29.04.2018 #1
    Janoroid

    Janoroid Threadstarter Neuer Benutzer

    Sehr geehrte Damen und Herren,

    ich möchte mit einem Webview meine Webseite nach einen bestimmen Wort durchsuche.

    So bin vorgegangen :

    Code:
    findAllAsync("Nein!");
    
    Jetzt wollte ich mit eine If-else Abfrage überprüfen, ob der Wert auf der Webseite existiert.
    
       if(Wetter.equals("Nein!") ) {
    
           Log.i("Keine Astro","keine Astronomie");
           Toast.makeText(getBaseContext(), "Keine Astronomie", Toast.LENGTH_LONG).show();
    
    
       }else {
             String title = "Wetterstation : Clear Sky!";
             String content ="Die Lena, meldet gutes Wetter";
           Notification.Builder builder = helper.wetterlena(title,content);
           helper.getManager().notify(new Random().nextInt(),builder.build());
    
       }
    
    Nur bekomme ich kein Wert zurück.

    Was mache ich nur falsch?

    Mfg, Kelly aus (Australien)
     
    Zuletzt von einem Moderator bearbeitet: 29.04.2018
  2. swa00, 29.04.2018 #2
    swa00

    swa00 Moderator Team-Mitglied

    Hallo Janoroid,

    auch hier herzlichst willkommen.

    Im anderen Forum hat dir bereits Pascal schon ganz gut geholfen
    und gib der Community grundsätzlich ein wenig Zeit, auf deine Beiträge zu antworten.

    Die Beantwortungen der Fragen finden freiwillig und vor allem in der Freizeit statt.


    Insbesondere zweimal dei Gleiche Frage in zwei verschiedenen Foren , verwirrt meistens und führt m.E. nicht zum Ziel.

    Lieben Dank
     
  3. Jokel-W, 30.04.2018 #3
    Jokel-W

    Jokel-W Neuer Benutzer

    Hallo
    du musst einen Listner benutzen denn wenn etwas gefunden wird kommt es dort an.


    webview.findAllAsync(textToSearch);
    webview.setFindListener(new FindListener() {
    @override
    public void onFindResultReceived(int activeMatchOrdinal, int number_match, boolean isDoneCounting) {

    // hier dein Code

    });
     
    Janoroid bedankt sich.
  4. swa00, 30.04.2018 #4
    swa00

    swa00 Moderator Team-Mitglied

    Hallo @Jokel-W

    auch hier hat der Nutzer seine Löschung beantragt ... Tut mir Lied
     
  5. Jokel-W, 30.04.2018 #5
    Jokel-W

    Jokel-W Neuer Benutzer

    Ok dann ist ihm eben nicht zu helfen wer nicht will der hat schon.
     
  6. Janoroid, 30.04.2018 #6
    Janoroid

    Janoroid Threadstarter Neuer Benutzer

    Muss ich das so machen?

    Wetter.setWebViewClient(new WebViewClient());
    Wetter.loadUrl("http://wetterstation-mi.bplaced.net/home/pi/192.168.0.38/");
    Wetter.findAllAsync("Ja");
    Wetter.setFindListener(new WebView.FindListener() {
    @override
    public void onFindResultReceived(int activeMatchOrdinal, int numberOfMatches, boolean isDoneCounting) {




    if(Wetter.equals("Nein")) {

    Toast.makeText(getBaseContext(), "Keine Astronomie", Toast.LENGTH_LONG).show();


    }else {
    String title = "Wetterstation : Clear Sky!";
    String content = "Die Lena, meldet gutes Wetter";
    Notification.Builder builder = helper.wetterlena(title, content);
    helper.getManager().notify(new Random().nextInt(), builder.build());

    }
    }
    });
     
  7. Jokel-W, 30.04.2018 #7
    Jokel-W

    Jokel-W Neuer Benutzer

    Hallo also habe es mal getestet ich würde es so machen.

    Code:
     public class MainActivity extends AppCompatActivity  {
    
        WebView webview;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            webview = (WebView) findViewById(R.id.webview);
            webview.loadUrl("http://wetterstation-mi.bplaced.net/home/pi/192.168.0.38");
    
            webview.setWebViewClient(new WebViewClient() {
                @SuppressLint("ClickableViewAccessibility")
                @RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN)
                @Override
                public void onPageFinished(WebView view, String url) {
                    String textToSearch = "Ja";
    
                    webview.findAllAsync(textToSearch);  // is not supposed to crash
    
    
                    webview.setFindListener(new WebView.FindListener() {
                        @Override
                        public void onFindResultReceived(int activeMatchOrdinal, int numberOfMatches, boolean isDoneCounting) {
    
                            if (isDoneCounting & numberOfMatches >0){
                                
                                // Hier dein Code wenn der String gefunden wurde
    
    
                            }
    
                        }
    
                    });
                }
    
            });
        }
    
    Frage was soll das immer mit den prüfen von "if(Wetter.equals("Nein")) " du hast doch auf den String geprüft, und wenn er im Html Code enthalten ist wird in die if Anweisung verzweigt sonst nicht.

    Finde deinen Lösungsansatz nicht so sinnvoll denn du wilst doch bestimmt auch noch andere Parameter abfragen .
    Bei so einer einfachen WebSeite würde ich den HTML Code in einen String laden und ihn mit StringOperationen duchsuchen.
     
    Janoroid bedankt sich.
  8. Janoroid, 30.04.2018 #8
    Janoroid

    Janoroid Threadstarter Neuer Benutzer

    @Jokel-W Vielen Dank für ihre Hilfe.
    Durch ihnen bin ich weitergekommen.

    Wie schließt man dieses Thema?

    MfG,Kelly
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
Wie float wert von android App an desktop Applikation per Bluetooth senden? Android App Entwicklung 29.10.2018
Neigungssensor ansprechen und wert ausgeben in App Android App Entwicklung 14.10.2018
Wert beim Start der App aus SharedPreferences auslesen Android App Entwicklung 10.09.2018
TextView wert übergeben Android App Entwicklung 28.06.2018
Classen Methoden ,deren Aufruf und meine Anfänger Probleme. HILFE !!! Android App Entwicklung 18.04.2018
Abfrage editText-Felder TextUtils Android App Entwicklung 29.01.2018
Fehler bei der Kompilierung Android App Entwicklung 18.12.2017
Du betrachtest das Thema "Mit Webview.findallasync ein Wert überprüfen -Hilfe" im Forum "Android App Entwicklung",
  1. Android-Hilfe.de verwendet Cookies um Inhalte zu personalisieren und dir den bestmöglichen Service zu gewährleisten. Wenn du auf der Seite weitersurfst stimmst du der Cookie-Nutzung zu.  Ich stimme zu.