java - web view error loading on activity -


this code

package com.javacodegeeks.androidqrcodeexample;  import android.app.activity; import android.app.alertdialog; import android.content.activitynotfoundexception; import android.content.dialoginterface; import android.content.intent; import android.net.uri; import android.os.bundle; import android.util.log; import android.view.view; import android.webkit.webview; import android.webkit.webviewclient; import android.widget.toast;  public class androidbarcodeqrexample extends activity {     /** called when activity first created. */      static final string action_scan = "com.google.zxing.client.android.scan";     string disco = null;     string qrcode_result = null;     webview webview;      @override     public void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         webview = (webview) findviewbyid(r.id.webview);         setcontentview(r.layout.activity_main);           //prendo il nome utente dalla precedente scheda         bundle extras = getintent().getextras();         if (extras != null) {             disco = extras.getstring("disco");         }             }      public void scanqr(view v) {         try {             intent intent = new intent(action_scan);             intent.putextra("scan_mode", "qr_code_mode");             startactivityforresult(intent, 0);         } catch (activitynotfoundexception anfe) {             showdialog(androidbarcodeqrexample.this, "nessuno scanner trovato", "scarica subito uno scanner", "si", "no").show();         }     }      private static alertdialog showdialog(final activity act, charsequence title, charsequence message, charsequence buttonyes, charsequence buttonno) {         alertdialog.builder downloaddialog = new alertdialog.builder(act);         downloaddialog.settitle(title);         downloaddialog.setmessage(message);         downloaddialog.setpositivebutton(buttonyes, new dialoginterface.onclicklistener() {             public void onclick(dialoginterface dialoginterface, int i) {                 uri uri = uri.parse("market://search?q=pname:" + "com.google.zxing.client.android");                 intent intent = new intent(intent.action_view, uri);                 try {                     act.startactivity(intent);                 } catch (activitynotfoundexception anfe) {                  }             }         });         downloaddialog.setnegativebutton(buttonno, new dialoginterface.onclicklistener() {             public void onclick(dialoginterface dialoginterface, int i) {             }         });         return downloaddialog.show();     }      public void onactivityresult(int requestcode, int resultcode, intent intent) {         if (requestcode == 0) {             if (resultcode == result_ok) {                 string contents = intent.getstringextra("scan_result");                 string format = intent.getstringextra("scan_result_format");                 qrcode_result = contents;                  //prendo il primo numero                 char check = qrcode_result.charat(0);                      if (check == '0') {                         string url = "http://www.bparty.org/app/localsite/connect_android_qr.php?disco=" + disco + "&string=" + qrcode_result;                         url = url.replace(" ", "%20");                         log.i("url",url);                         webview.loadurl(url);                         //allora e' un codice univoco lista                         qrcode_result = "qrcode per lista";                     }                     else if (check == '1') {                         // allora e' un codice di ticket comprato                         qrcode_result = "qrcode per ticket";                     }                     else {                         //allora non esiste                         qrcode_result = "qrcode non valido";                     }                    toast toast = toast.maketext(this, "content:" + qrcode_result, toast.length_long);                 toast.show();             }         }     } } 

when run app after qrcode scan have error :

06-15 03:43:27.809 11140-11140/com.javacodegeeks.androidqrcodeexample e/androidruntime﹕ fatal exception: main java.lang.runtimeexception: failure delivering result resultinfo{who=null, request=0, result=-1, data=intent { act=com.google.zxing.client.android.scan flg=0x80000 (has extras) }} activity {com.javacodegeeks.androidqrcodeexample/com.javacodegeeks.androidqrcodeexample.androidbarcodeqrexample}: java.lang.nullpointerexception

i think it's web view not initialized well.. isn't it?

inside oncreate() method, move webview initialization after setcontentview

    @override     public void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         setcontentview(r.layout.activity_main);         webview = (webview) findviewbyid(r.id.webview);         .....    } 

Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -