//

Interactie met internet

Interactie met internet discussie in Ontwikkelen voor iOS forum; ( verdwijnt na registratie ) Hallo, Nu ik wat ingewikkeldere apps wil gaan ontwikkelen vroeg ik mij af hoe interactie (data ophalen + terugsturen) vanuit een app mogelijk is met ...



Ga terug   iPhone, iPod touch, iPad en Apple TV forum > Development > Ontwikkelen voor iOS
Wachtwoord vergeten? Registreren!
Registreer FAQ Ledenlijst Kalender Berichten van vandaag

Reageren

 

Discussietools Weergave
  #1  
Oud 06-03-11, 09:10
DJ14 DJ14 is offline
• iOS 7.1
• 4.3.5
• Besturingssysteem: Mac OS X
 
Geregistreerd: Feb 2010
Berichten: 121
Standaard Interactie met internet

Hallo,

Nu ik wat ingewikkeldere apps wil gaan ontwikkelen vroeg ik mij af hoe interactie (data ophalen + terugsturen) vanuit een app mogelijk is met bepaalde websites. Zo kun je met bepaalde apps data ophalen (nieuwsberichten van bijv. nu.nl) en data ook weer terugsturen (reacties plaatsen in apps). Ik neem aan dat er gebruik wordt gemaakt van databases. Werkt dat gewoon via MySQL? (Nog een beter voorbeeld: de Trein applicatie, haalt ook gegevens uit een database. Wat voor database is dat (ik neem aan dat de site deze uit MySQL databases haalt) en hoe kan je hiermee communiceren vanuit een app?).

Bij voorbaat dank.
Advertentie
Advertentie Gesponsorde links (verdwijnt na registratie)

  #2  
Oud 06-03-11, 17:22
Geno's schermafbeelding
Geno Geno is offline
• iOS 9.0 beta
• 8.4
• Besturingssysteem: Mac OS X
 
Geregistreerd: Nov 2009
Berichten: 251
Standaard

De Trein applicatie haalt z'n gegevens van de mobiele NS site vandaan, niet direct uit een database.
__________________
iPod touch v3 - iPod Nano 2011 - iMac 27" - iPhone 4S - iPad 2 - MacBook Air 11,6"
  #3  
Oud 06-03-11, 19:05
DJ14 DJ14 is offline
• iOS 7.1
• 4.3.5
• Besturingssysteem: Mac OS X
 
Geregistreerd: Feb 2010
Berichten: 121
Standaard

Allereerst bedankt voor je reactie. Jij zegt dat de Trein applicatie zijn content van de mobiele site van de NS haalt. Hoe komt deze mobiele site dan aan zijn gegevens (ik vermoed uit een database). En bedoel je dat er XML van de mobiele site van de NS wordt gebruikt als bron voor de Trein app?
  #4  
Oud 07-03-11, 00:30
Geno's schermafbeelding
Geno Geno is offline
• iOS 9.0 beta
• 8.4
• Besturingssysteem: Mac OS X
 
Geregistreerd: Nov 2009
Berichten: 251
Standaard

Ja gewoon de gebruikelijke manier om data van een website te halen.

Als je gebruik maakt van een website of webservice heb je niet zomaar toegang tot de database. Communicatie verloopt meestal via de website naar de database.

In het geval om direct met een database te communiceren, zou dat ik afraden ivm veiligheid. Je kan beter met een tussenlaag werken om bepaalde verzoeken te doen, bv. PHP. Je stuurt vanuit je app GET POST requests naar de PHP script op je server en de script haalt de gegevens uit de database en geeft ze weer als XML of JSON.
  #5  
Oud 10-03-11, 17:46
nop nop is offline
• iOS 6.1.4
• 6.1.3
• Besturingssysteem: Mac OS X
 
Geregistreerd: Nov 2008
Locatie: Valkenburg
Berichten: 46
Standaard

Ik gebruik voor mij apps een eigen server die data verzamelt en aanbiedt aan de app. Een stukje middleware.
Voordeel is je flexibiliteit en je kunt zaken aanbieden als queueing en caching. Ik zou dus nooit direct data van een derde partij afnemen zonder er eerst zelf iets tussengezet te hebben. De kans dat je app omvalt als de derde partij iets wijzigt is erg groot.
__________________
iPhone/iPad ontwikkelaar http://www.ddq.nl
  #6  
Oud 10-03-11, 22:05
DJ14 DJ14 is offline
• iOS 7.1
• 4.3.5
• Besturingssysteem: Mac OS X
 
Geregistreerd: Feb 2010
Berichten: 121
Standaard

Heel erg bedankt allemaal. Toch snap ik het nog niet helemaal. Stel je hebt een MySQL database op een server waar je gegevens uit wilt halen om die te tonen in een iphone app. Volgens nop maak ik dan een PHP script welke deze gegevens uit de database ophaalt (allemaal geen probleem). Maar hoe moet het dan verder na dat PHP script? Een webview lijkt me niet van toepassing, beter is om tableviews te gebruiken. Maar hoe vul ik een tableview dan met data van het PHP script? Alvast bedankt.
  #7  
Oud 11-03-11, 09:38
nop nop is offline
• iOS 6.1.4
• 6.1.3
• Besturingssysteem: Mac OS X
 
Geregistreerd: Nov 2008
Locatie: Valkenburg
Berichten: 46
Standaard

Ik gebruik een webview voor het tonen van de aangepaste content. Dat is gewoon een linkje naar een bestaande webpagina.

Download Mijn Hemel eens ( MijnHemel voor iPhone, iPod touch en iPad in de iTunes App Store )
Op het eerste tabje zie je een kalender. Dat is een UIWebview die gekoppeld is aan een php pagina die onderstaande ruwe data (die wordt vernieuwd met een cronjobje) verwerkt:
Code:
2455563.190289 12   1  za  1 januari   17.34   <img align="right" width="133" height="100" src="jupitermanen/kaart_20110101_1734b.png" title="Io in conjunctie met Europa" alt="Io in conjunctie met Europa" style="cursor: pointer;" onclick="window.open('afbeelding.php?f=jupitermanen/kaart_20110101_1734a.png&amp;t=Io in conjunctie met Europa', '_blank', 'width=1016,height=716,scrollbars=yes,toolbar=no,menubar=no,status=no,directories=no,resizable=yes'); return false">De Galile&iuml;sche maan Io staat op 6,1&rdquo; ten zuiden van Europa. Even later wordt de satelliet Callisto voor korte tijd bedekt door de schijf van Jupiter (18:07-19:49). Zie ook de figuur hiernaast en de tabel <a href="baseurl/jupiter/jupsat_2011.html#jan" title="Verschijnselen van de manen van Jupiter" target="_top">Verschijnselen van de manen van Jupiter</a> voor meer informatie.
 2455563.284039 13   1  za  1 januari   19.49   <img align="left" width="0200" height="0062" src="jupitermanen/kaart_20110101_2129b.png" title="Alle manen staan ten oosten van Jupiter" alt="Alle manen staan ten oosten van Jupiter" style="cursor: pointer;" onclick="window.open('afbeelding.php?f=jupitermanen/kaart_20110101_2129a.png&amp;t=Alle manen staan ten oosten van Jupiter', '_blank', 'width=1016,height=716,scrollbars=yes,toolbar=no,menubar=no,status=no,directories=no,resizable=yes'); return false">Van 19:49 tot 23:08 uur nemen we alle grote Jupitermanen ten oosten van de planeetschijf waar. In toenemende afstand van de planeet staan Callisto, Io, Europa en Ganymedes. Om 19:49 komt Callisto van achter de Jupiterschijf vandaan, na 23 uur staat Jupiter zo laag dat de planeet en zijn satellieten moeilijk zichtbaar worden.
De ruwe gegevens formatteer ik tot een leesbaar formaat en toon dmv php script alleen de relevante/actuele gegevens.
Het resultaat zie je hier : http://www.waarnemen.com/hemel/iphone.php

Maar goed, dit is een eenvoudige oplossing. Je kunt natuurlijk ook data in een tableview laden. Je serveert je gegevens dan in XML of je haalt met php parameters de elementen op (dat laatste is minder sjiek).
Ook zie je in de App UIImageviews. Die haalt ook data van Internet op, die centraal wordt geserveerd door mijn eigen server. Ik wil nooit afhankelijk worden van derden: hoe meer bronnen je direct raadpleegt, hoe meer kans op instortingsgevaar!

Laatst gewijzigd door nop; 11-03-11 om 09:40.
  #8  
Oud 12-03-11, 02:13
Geno's schermafbeelding
Geno Geno is offline
• iOS 9.0 beta
• 8.4
• Besturingssysteem: Mac OS X
 
Geregistreerd: Nov 2009
Berichten: 251
Standaard

Als XML de output is van je PHP script gebruik je een XMLparser bv.

Cocoa heeft z'n eigen XMLparser, genaamd NSXMLParser. Meer info te vinden in de Apple documentatie.
Reageren



Er zijn 1 actieve gebruikers die momenteel deze discussie bekijken (0 leden en 1 gasten)

 

Soortgelijke discussies

Discussie Auteur Forum Reacties Laatste bericht
Ervaringen met mobiel internet in met Duitse Simkaart foontje Internet in buitenland (roaming) 17 06-05-15 07:37
iPad met data ab. + oude iPhone met sim only zonder internet Captain Krimson Overige providers Nederland 0 28-02-11 15:46
wel mailen met Wi-Fi maar niet met internet Mad Hankey Wi-Fi 5 12-08-10 13:50

Regels voor berichten
Je mag geen nieuwe discussies starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit
Trackbacks are Aan
Pingbacks are Aan
Refbacks are Uit



Alle tijden zijn GMT +2. Het is nu 23:56.