Autore Topic: problemi nella webview  (Letto 798 volte)

Offline iacoposk8

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
problemi nella webview
« il: 04 Settembre 2013, 14:12:11 CEST »
0
Ciao a tutti! sto iniziando a sviluppare su android.
ho eclipse, già configurato (son riuscito a far partire un hello world)
ora vorrei utilizzare una web view.
sto seguendo questa guida.
devo inserire queste due righe di codice ma non so bene come fare:
Codice: [Seleziona]
WebView webView = (WebView) findViewById(R.id.webView1);
webView.loadUrl("http://www.google.it/");
io sono andato in src/com.example.helloworld/MainActivity.java
e ho modificato il codice in questo modo
Codice: [Seleziona]
package com.example.helloworld;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;

public class MainActivity extends Activity {

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


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
   
    WebView webView = (WebView) findViewById(R.id.webView1);
    webView.loadUrl("http://www.google.it/");
   
}
e leggo:
Codice: [Seleziona]
Multiple markers at this line
        - WebView cannot be resolved
         to a type
        - WebView cannot be resolved
         to a type

Multiple markers at this line
        - Syntax error on token ""http://www.google.it/"", delete
         this token
        - Syntax error on token(s), misplaced construct(s)
sulle ultime due righe della webview

Post unito: 04 Settembre 2013, 15:06:46 CEST
il primo errore sono riuscito a risolverlo scrivendo all'inizio
Codice: [Seleziona]
import android.webkit.WebView;
import android.webkit.WebViewClient;

EDIT:
Sono riuscito a rimuovere tutti gli errori di compilazione così:
Codice: [Seleziona]
package com.example.helloworld;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.text.Editable;
import android.view.View;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends Activity {
        WebView webview;
       
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       
        WebView webView = (WebView) findViewById(R.id.webView1);
        webView.loadUrl("www.google.it");
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
}
ma nell'emulatore leggo:
Codice: [Seleziona]
unfortunately, HelloWorld has stopped
« Ultima modifica: 04 Settembre 2013, 15:20:19 CEST da iacoposk8, Reason: Merged DoublePost »

Offline gabric

  • Utente senior
  • ****
  • Post: 614
  • Respect: +18
    • Google+
    • Mostra profilo
    • Brancato's site
  • Dispositivo Android:
    Nexus 5 / Tablet mediacom s4
  • Play Store ID:
    Brancato's+app
  • Sistema operativo:
    window7. ubuntu
Re:problemi nella webview
« Risposta #1 il: 04 Settembre 2013, 16:13:21 CEST »
0
ciao
dentro il file activity_main della cartella drawable devi inserire la webview con id webview1
posta tutto il log d'errore, ma dovrebbe esser questo

Offline iacoposk8

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
Re:problemi nella webview
« Risposta #2 il: 04 Settembre 2013, 16:23:13 CEST »
0
non trovo la cartella drawable, ho però diverse cartelle che si chiamano drawable-[testo]
io il riferimento id webview1 ce l'ho nell'activity_main.xml dentro la cartella layout.
questo è il log:
Codice: [Seleziona]
09-04 10:19:27.392: D/AndroidRuntime(1728): Shutting down VM
09-04 10:19:27.392: W/dalvikvm(1728): threadid=1: thread exiting with uncaught exception (group=0x41465700)
09-04 10:19:27.411: E/AndroidRuntime(1728): FATAL EXCEPTION: main
09-04 10:19:27.411: E/AndroidRuntime(1728): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.helloworld/com.example.helloworld.MainActivity}: android.view.InflateException: Binary XML file line #11: Error inflating class uses-permission
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2211)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.app.ActivityThread.access$600(ActivityThread.java:141)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.os.Handler.dispatchMessage(Handler.java:99)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.os.Looper.loop(Looper.java:137)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.app.ActivityThread.main(ActivityThread.java:5103)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at java.lang.reflect.Method.invokeNative(Native Method)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at java.lang.reflect.Method.invoke(Method.java:525)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at dalvik.system.NativeStart.main(Native Method)
09-04 10:19:27.411: E/AndroidRuntime(1728): Caused by: android.view.InflateException: Binary XML file line #11: Error inflating class uses-permission
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:707)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:267)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.app.Activity.setContentView(Activity.java:1895)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at com.example.helloworld.MainActivity.onCreate(MainActivity.java:19)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.app.Activity.performCreate(Activity.java:5133)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)
09-04 10:19:27.411: E/AndroidRuntime(1728):         ... 11 more
09-04 10:19:27.411: E/AndroidRuntime(1728): Caused by: java.lang.ClassNotFoundException: Didn't find class "android.view.uses-permission" on path: DexPathList[[zip file "/data/app/com.example.helloworld-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.example.helloworld-2, /system/lib]]
09-04 10:19:27.411: E/AndroidRuntime(1728):         at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:53)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.view.LayoutInflater.createView(LayoutInflater.java:559)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.view.LayoutInflater.onCreateView(LayoutInflater.java:652)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:66)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.view.LayoutInflater.onCreateView(LayoutInflater.java:669)
09-04 10:19:27.411: E/AndroidRuntime(1728):         at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694)
09-04 10:19:27.411: E/AndroidRuntime(1728):         ... 21 more
09-04 10:19:39.201: I/Process(1728): Sending signal. PID: 1728 SIG: 9

Offline elfo83

  • Utente normale
  • ***
  • Post: 283
  • Respect: +23
    • Mostra profilo
  • Sistema operativo:
    Mac OS 10.8.2
Re:problemi nella webview
« Risposta #3 il: 04 Settembre 2013, 17:27:06 CEST »
0
Posta il file .xml del layout, l'errore dovrebbe stare li.

Offline gabric

  • Utente senior
  • ****
  • Post: 614
  • Respect: +18
    • Google+
    • Mostra profilo
    • Brancato's site
  • Dispositivo Android:
    Nexus 5 / Tablet mediacom s4
  • Play Store ID:
    Brancato's+app
  • Sistema operativo:
    window7. ubuntu
Re:problemi nella webview
« Risposta #4 il: 04 Settembre 2013, 18:41:03 CEST »
0
si scusami, dovevo dire layout, non drawable. comunque esatto, l'errore dovrebbe esser nel file xml. probabilmente la web view ha un id diverso da quello che richiami

Offline iacoposk8

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
Re:problemi nella webview
« Risposta #5 il: 05 Settembre 2013, 10:49:20 CEST »
0
sono riuscito a risolvere, un errore da niubbissimo! ho messo
<uses-permission android:name="android.permission.INTERNET"/>
nell'activity piuttosto che nel manifest

Offline gabric

  • Utente senior
  • ****
  • Post: 614
  • Respect: +18
    • Google+
    • Mostra profilo
    • Brancato's site
  • Dispositivo Android:
    Nexus 5 / Tablet mediacom s4
  • Play Store ID:
    Brancato's+app
  • Sistema operativo:
    window7. ubuntu
Re:problemi nella webview
« Risposta #6 il: 05 Settembre 2013, 10:51:22 CEST »
0
ah ecco
allora segnala questo topic come risolto!
p.s. se devi solo aprire un sito internet, puoi richiamare l'intent del browser passando l'url
in questo modo non devi inserire il permesso internet, che è uno dei più sospetti "accesso di rete completo, possibilità di creare socket"
che quindi spingi gli utenti a non installare l'app

Offline iacoposk8

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
Re:problemi nella webview
« Risposta #7 il: 05 Settembre 2013, 11:53:16 CEST »
0
ok, grazie ;)
il topic dovrebbe essere già segnato come risolto