Naar content
Trending apps
  • Inbox by Gmail

  • Maps: Navigatie en OV

  • WhatsApp Messenger

  • Messenger

  • Facebook

Trending games
  • Minecraft Earth

  • Dr. Mario World

  • Harry Potter: Wizards Unite

  • Breaking Bad: Criminal Elements

  • The Elder Scrolls: Blades

Trending smartphones
  • Realme X2 Pro

  • Moto G8 Plus

  • Microsoft Surface Duo

  • OnePlus 7T Pro

  • Nokia 7.2

Nieuwste tablets
  • Samsung Galaxy Tab S6

  • Samsung Galaxy Tab A 10.5

  • Samsung Galaxy Tab S4

  • Samsung Galaxy Tab S3 9.7

  • Asus Zenpad 3S 10

woutervegter

woutervegter

  • Lid sinds 30 november 2010
  • Berichten 76
  • Reputatie 0
  • #1
  • 5 oktober 2011
  • 20:55

Hier kunnen we elkaar helpen met de DevTutorial op deze pagina:

DevTutorial 6 - Je eigen class maken en deze vullen met JSON-gegevens | Androidworld

Als je ergens niet uit komt en je hebt het eerst zelf even geprobeerd, vraag dan hier om advies.
Het is belangrijk dat je de volgende dingen vermeldt:
-Welke laatste stappen heb je uitgevoerd
-Wat gaat er precies fout

We merken wel hoe het loopt. Ik lees deze thread in ieder geval één keer per dag.

Succes!

Bewerkt (5 oktober 2011 20:55)
bassie1995

bassie1995

  • Lid sinds 04 januari 2011
  • Berichten 2028
  • Reputatie 0
  • #2
  • 5 oktober 2011
  • 21:53

Damn, nog meer… Ga in de vakantie maar eens hard eraan werken

Bewerkt (5 oktober 2011 21:53)
apw

apw

  • Lid sinds 24 september 2011
  • Berichten 4
  • Reputatie 0
  • #3
  • 8 oktober 2011
  • 13:09

Ik heb de DevTutorial gevolgd tot aan “Intents en de method startActivity” en de applicatie gerund. Hij geeft geen errors, maar de UserName en Website worden ook niet weergegeven. Ik heb de code nogmaals nagelopen en geprobeerd in de logcat terug te vinden wat er fout gaat. Volgens mij gaat het hier fout:

LOGCAT:
System.err org.json.JSONException: A JSONObject text must begin with ‘{’ at character 1 of <?xml version=“1.0” encoding=“UTF-8”?>

Het lijkt er dus op dat het ‘{’ ontbreekt in de mResultsString en dat JSONObject jSONObject = new JSONObject(jSONString); er geen goed jSONObject van kan maken.

Iemand een idee?

Bewerkt (8 oktober 2011 13:09)
fifarunnerr

fifarunnerr

  • Lid sinds 13 juli 2010
  • Berichten 1846
  • Reputatie 10
  • #4
  • 8 oktober 2011
  • 13:57

de jSONString is niet goed

Bewerkt (8 oktober 2011 13:57)
apw

apw

  • Lid sinds 24 september 2011
  • Berichten 4
  • Reputatie 0
  • #5
  • 8 oktober 2011
  • 14:59

@fifarunnerr, scherp, die had ik nog niet door

Maar ik heb inmiddels het probleem gevonden. In DevTutorial 5 wordt een andere url gebruikt dan in de sourcecode van wouter's GitHub.

Vervang dus:
String fetchUrl = "http://api.twitter.com/1/users/show.xml?screen_name=“ + encodedUserName;

Door:
String fetchUrl = ”http://api.twitter.com/1/users/show.json?screen_name=" + encodedUserName;

Bewerkt (8 oktober 2011 14:59)
woutervegter

woutervegter

  • Lid sinds 30 november 2010
  • Berichten 76
  • Reputatie 0
  • #6
  • 8 oktober 2011
  • 17:13

Mmm.. een klein foutje! Ik heb hebt aangepast

Bewerkt (8 oktober 2011 17:13)
Dopey

Dopey

  • Lid sinds 18 september 2011
  • Berichten 19
  • Reputatie 0
  • #7
  • 9 oktober 2011
  • 17:18

Ik ben op het punt dat ik de methods updateView() en Twitteruser heb gecombineerd en waarop Wouter zegt: probeer de app maar te starten. Daar krijg ik een force close. Verbaast me niks want volgens mij heb ik een paar stukjes code op de verkeerde plek gezet (soms niet helemaal duidelijk waar in welke class ik code moet toevoegen). Ik zou natuurlijk de uiteindelijke code kunnen downloaden om te vergelijken, maar ik los het liever eerst zelf op. Dus debuggen. Alleen: dat lukt niet, ik snap niet wat ik zie in de debug windows.

De code geeft geen problems, alleen twee warnings dat de waarde van mUserName en mWebsite niet worden gebruikt.
De app start in de emulator netjes met de verborgen TextViews en Button.
De fout treedt op zodra ik een username (woutervegter) heb ingevuld en op Download druk. De logfile toont de foutmelding ‘<datum tijd> ERROR/AndroidRuntime(251): Uncaught handler: thread main exiting due to uncaught exception’ en ergens daaronderaan zie ik ‘Caused by java.lang.NullPointerException’ en ‘… 25 more’. Pal daarboven staat ‘Caused by java.lang.reflect.InvocationTargetException’ en ‘at ….downloadUserInfo’.
Dus ik heb in een breakpoint gezet in de eerste regel code van die laatstgenoemde method.

Als ik dan debug, krijg ik eerst een ‘source not found, the JAR file c:……android.jar has no source attachment. Klinkt spannend, maar is volgens mij niks (dezelfde warning krijg ik ook als de code van wouter van de vorige tutorial debug). Als ik Step over doe, krijg ik nog een Source not found, met ’ViewRoot.handleMessage(Message) line: 1740'. Deze twee waarschuwingen/foutmeldingen alterneren tijdens het doorsteppen.
Ik zie echter niet op welke regel van de code al die fouten zitten.

Wat moet ik hiermee? Na een dag resultaatloos debuggen zou ik heel blij zijn als iemand me in de goeie richting kan zetten! Of wil ik nou teveel en moet ik toch maar de code van Wouter erbij pakken?

Bewerkt (9 oktober 2011 17:18)
fifarunnerr

fifarunnerr

  • Lid sinds 13 juli 2010
  • Berichten 1846
  • Reputatie 10
  • #8
  • 9 oktober 2011
  • 17:37

Waarschijnlijk heb je de debugger een regel te laat laten starten. Al staat in de logcat al de oplossing op jou probleem.
Daar staat iets als:
Caused by java.lang.NullPointerException at
com.jou.package.name.KlasseNaam:10

10 is in dit geval je regelnummer. Zoek dat op in die KlasseNaam(die er voor staat) en dan heb je de regel gevonden. In die regel is een waarde null, die je moet initialiseren.

Bewerkt (9 oktober 2011 17:37)
Dopey

Dopey

  • Lid sinds 18 september 2011
  • Berichten 19
  • Reputatie 0
  • #9
  • 9 oktober 2011
  • 17:51

De laatste twee regels van die error zijn:
10-09 15:08:26.675: ERROR/AndroidRuntime(295): Caused by: java.lang.NullPointerException
10-09 15:08:26.675: ERROR/AndroidRuntime(295): … 25 more

Ik zie daar geen regelnummer. Ik weet niet precies wat dat ‘… 25 more’ betekent, maar het suggereert dat er 25 meer logregels zijn die ik niet zie?

fifarunnerr;225205
Waarschijnlijk heb je de debugger een regel te laat laten starten. Al staat in de logcat al de oplossing op jou probleem.
Daar staat iets als:
Caused by java.lang.NullPointerException at
com.jou.package.name.KlasseNaam:10

10 is in dit geval je regelnummer. Zoek dat op in die KlasseNaam(die er voor staat) en dan heb je de regel gevonden. In die regel is een waarde null, die je moet initialiseren.

Bewerkt (9 oktober 2011 17:51)
fifarunnerr

fifarunnerr

  • Lid sinds 13 juli 2010
  • Berichten 1846
  • Reputatie 10
  • #10
  • 9 oktober 2011
  • 17:59

En wat staat daar boven?

Bewerkt (9 oktober 2011 17:59)

Reageer

Om te reageren, dien je te zijn ingelogd. Druk op de onderstaande knop om in te loggen of maak een nieuwe account aan.

Inloggen Registreren