Forum Sveta kompjutera

Nazad   Forum Sveta kompjutera > Test Run > Programiranje
Uputstvo Članstvo Kalendar Današnje poruke Pretraži

Programiranje Programski jezici, tehnike, alatke...

Odgovor
 
Alatke vezane za temu Vrste prikaza
Stara 17.7.2013, 11:43   #1
Milinko
Član
 
Član od: 14.2.2009.
Lokacija: Banja Luka
Poruke: 35
Zahvalnice: 9
Zahvaljeno 0 puta na 0 poruka
Određen forumom Web Servis i Android

Kako da napravim web servis koji ce biti povezan sa android aplikacijom?
Aplikacija mora da prima i salje podatke na web sajt koji treba da napravim, pa kako to sve da povezem? Sta mi treba, kako da to napravim i moze primjer koda kako bi to trebalo da izgleda? Hvala
Milinko je offline   Odgovor sa citatom ove poruke
Stara 17.7.2013, 15:23   #2
Ivan452
Veteran
 
Član od: 25.7.2008.
Lokacija: Beograd
Poruke: 772
Zahvalnice: 33
Zahvaljeno 189 puta na 152 poruka
Slanje poruke preko MSN-a korisniku Ivan452
Određen forumom Re: Web Servis i Android

Najjednostavnije resenje je da napravis php stranicu (stranice) koja ce iz URL-a da preuzima parametre, upisuje u bazu i/ili vrsi citanje iz nje.

To je lako savladati, ali nije bas toliko kratko da mogu sve da ti sada objasnim. Dacu ti neke smernice. Kljucne reci za pretragu koje ce ti trebati su: PHP, MySQL, HTTP GET, Android http request/response.
Ovo se moze podeliti u dve odvojene celine: server i klijent. Na serverskoj strani imas php i MySQL, na klijentskoj Android a komunikaciju obavljas putem HTTP Request/Response-a.

Prvo ti savetujem da napravis serversku stranu i da to testiras. Za uslove testiranja dovoljno ce biti da napravis php stranu koja ce da pokupi 2 podatka iz URL-a, upise ih u bazu i prikaze neku poruku.
Procitaces detaljnije, ali kada koristis HTTP Get metodu za request-response onda se vrednosti promenljivih salju u okviru URL-a, npr: www.mysite.com/myphp.php?val1=123&val2=321
Znaci ovde na svom sajtu imas myphp.php stranu kojoj prosledjujes dva parametra (val1 i val2).

I npr ako ti ovako izgleda stranica myphp.php:

Kod:
<?php 

$val1 = $_GET['val1'];
$val2 = $_GET['val2'];
print  $val1;
Print " ";
print  $val2;

?>
Onda kada u browser-u pozoves www.mysite.com/myphp.php?val1=123&val2=321 dobices stranicu na kojoj ce samo pisati: 123 321
U kodu php stranice mozes da stavis neke operacije sa bazom, zavisno od toga sta ti treba.

I ovo ti je serverska strana. Za testiranje serverske strane ti nije potrebna Android aplikacija, mozes da testiras iz svog browser-a tako sto ces pozivati odgovarajuci URL sa odgovarajucim prosledjenim parametrima.
Na android strani dovoljan ce ti biti sledeci kod:
Kod:
byte[] data;
HttpGet httpget;
StringBuffer buffer = null;
HttpResponse response;
HttpClient httpclient;
InputStream inputStream;
try 
{
     httpclient = new DefaultHttpClient();
     httpget = new HttpGet(www.mysite.com/myphp.php?val1=123&val2=321);
     response = httpclient.execute(httpget);
     inputStream = response.getEntity().getContent();
     data = new byte[256];
     buffer = new StringBuffer();
     int len = 0;

     while (-1 != (len = inputStream.read(data))) {buffer.append(new String(data, 0, len));}
     inputStream.close();
			   
}catch (Exception e) {System.out.println(e);}
Kada se ovo zavrsi vrednost promenljive buffer ce biti: 123 321
Ovo je stari neki kod, trebao bi da funkcionise. Mozda postoje neka nova eneganija resenja, neke nove klase, paketi ili sta vec (ako ti treba potrazi, kljucna rec Android call HTTP Get).
Jos jedna bitna stvar, da bi ti aplikacija funkcionisala na androidu 4+ sve network operacije moras da pozoves uokviru odvojenog threada ili async taksa.

Ovo je najjednostavnije resenje koje mi pada napamet. Ako hoces nesto malo komplikovanije prvo mozes da koristis HTTP POST umesto HTTP GET-a. Onda, serverska strana moze da implementira ReST, da podatke saljes u okviru JSON-a ili XML-a, a onda da uz sve to da ukljucis i Google App Engine. Postoji milion nacina, ali ako se secam ovo ti je za neki seminarski pa ne moras preterano da komplikujes.
Ivan452 je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Ivan452 na korisnoj poruci:
Milinko (22.7.2013)
Stara 17.7.2013, 15:52   #3
Geomaster
V.I.P. Programiranje
 
Član od: 28.6.2007.
Lokacija: Beograd
Poruke: 2.342
Zahvalnice: 2.836
Zahvaljeno 1.047 puta na 507 poruka
Slanje poruke preko MSN-a korisniku Geomaster Slanje poruke preko Skypea korisniku Geomaster
Određen forumom Re: Web Servis i Android

^ Slažem se sa svime, samo bih da napomenem da je preporučljivije da za takvo slanje podataka koristi HTTP POST. Možda u 90% slučajeva to neće praviti neku razliku, ali ako se šalje dosta podataka HTTP serveru može da se desi da zabode limit koji server postavlja za dužinu URL-a, dok se sa POST podacima to ne dešava. Česta praksa je da se za zahteve koji ne menjaju ništa na serveru koristi GET, a za zahteve koji predstavljaju neku akciju i nisu pasivni koristi POST. Ali ako pravi HTTP API ništa ga ne košta da sve bude POST
Geomaster je offline   Odgovor sa citatom ove poruke
Stara 17.7.2013, 16:22   #4
Ivan452
Veteran
 
Član od: 25.7.2008.
Lokacija: Beograd
Poruke: 772
Zahvalnice: 33
Zahvaljeno 189 puta na 152 poruka
Slanje poruke preko MSN-a korisniku Ivan452
Određen forumom Re: Web Servis i Android

Citat:
Geomaster kaže: Pregled poruke
^ Slažem se sa svime, samo bih da napomenem da je preporučljivije da za takvo slanje podataka koristi HTTP POST. Možda u 90% slučajeva to neće praviti neku razliku, ali ako se šalje dosta podataka HTTP serveru može da se desi da zabode limit koji server postavlja za dužinu URL-a, dok se sa POST podacima to ne dešava. Česta praksa je da se za zahteve koji ne menjaju ništa na serveru koristi GET, a za zahteve koji predstavljaju neku akciju i nisu pasivni koristi POST. Ali ako pravi HTTP API ništa ga ne košta da sve bude POST
Slazem se za POST. Ali, kako se prvi put susrece sa ovim bolje je da odradi za pocetak sa GET-om. Jer ce tako moci da testira iz pretrazivaca, dok ako ide sa POST-om onda ce morati da uradi i klijentsku stranu, i kako je velika verovatnoca da nece funkcionisati prvi put kada pokrene lakse ce sa GET-om da ulovi gresku.
Zato sam ga stavio kao eventualno dodatno poboljsanje.
Ivan452 je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Ivan452 na korisnoj poruci:
Geomaster (17.7.2013)
Stara 17.7.2013, 16:23   #5
Geomaster
V.I.P. Programiranje
 
Član od: 28.6.2007.
Lokacija: Beograd
Poruke: 2.342
Zahvalnice: 2.836
Zahvaljeno 1.047 puta na 507 poruka
Slanje poruke preko MSN-a korisniku Geomaster Slanje poruke preko Skypea korisniku Geomaster
Određen forumom Re: Web Servis i Android

Citat:
Ivan452 kaže: Pregled poruke
Slazem se za POST. Ali, kako se prvi put susrece sa ovim bolje je da odradi za pocetak sa GET-om. Jer ce tako moci da testira iz pretrazivaca, dok ako ide sa POST-om onda ce morati da uradi i klijentsku stranu, i kako je velika verovatnoca da nece funkcionisati prvi put kada pokrene lakse ce sa GET-om da ulovi gresku.
Zato sam ga stavio kao eventualno dodatno poboljsanje.
Nisam pažljivo pročitao tvoj post pa nisam video da si i to predložio na kraju. Izvinjavam se
Geomaster je offline   Odgovor sa citatom ove poruke
Stara 22.7.2013, 13:41   #6
Milinko
Član
 
Član od: 14.2.2009.
Lokacija: Banja Luka
Poruke: 35
Zahvalnice: 9
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: Web Servis i Android

Uspio sam, hvala vam.
Milinko je offline   Odgovor sa citatom ove poruke
Stara 23.7.2013, 4:28   #7
Ivan-94
Veteran
 
Član od: 15.3.2009.
Lokacija: Beograd
Poruke: 654
Zahvalnice: 240
Zahvaljeno 63 puta na 43 poruka
Slanje poruke preko MSN-a korisniku Ivan-94 Slanje poruke preko Skypea korisniku Ivan-94
Određen forumom Re: Web Servis i Android

Preporucio bih ti nesto kao sto je Laravel. On podrzava nesto sto se zove restful routing. Lako mozes da napravis restful API. Takodje mozs da output-ujes JSON pomocu Response::json(...) ili od L4 mozes da samo vratis skup modela i on ce da ti prikaze json.

Evo ti jedan tutorial http://net.tutsplus.com/tutorials/ph...a-restful-api/
Znam da je malo teze posto mozda nisi radio sa MVC-om ali mnogo je bolje.
Ivan-94 je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku Ivan-94 na korisnoj poruci:
Milinko (23.7.2013)
Stara 23.7.2013, 16:25   #8
Milinko
Član
 
Član od: 14.2.2009.
Lokacija: Banja Luka
Poruke: 35
Zahvalnice: 9
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: Web Servis i Android

OK, pogledacu. Hvala
Milinko je offline   Odgovor sa citatom ove poruke
Odgovor

Bookmarks sajtovi


Vaš status
Ne možete postavljati teme
Ne možete odgovarati na poruke
Ne možete slati priloge uz poruke
Ne možete prepravljati svoje poruke

BB kod: uključeno
Smajliji: uključeno
[IMG] kod: uključeno
HTML kod: isključeno


Slične teme
tema temu započeo forum Odgovora Poslednja poruka
[Android] Android telefon sa Qwerty ? Sladjan85 Aparati i oprema 17 4.6.2013 23:19
[Android] AIDE - Android Java IDE MG-RAY Programi za mobilne telefone 0 10.3.2012 11:07
MSI servis 72h 'Pick-up and Return' - Katastrofa! igvan Prenosni računari 12 19.2.2011 1:49
Windows Mobile > Android 2.1 markos807 Aparati i oprema 10 23.1.2011 17:07
Vip Android izazov (prijave do 31. decembra 2009) Chivan Dešavanja i događaji 0 1.12.2009 17:13


Sva vremena su po Griniču +2 h. Sada je 15:43.


Powered by vBulletin® verzija 3.8.7
Copyright ©2000–2024, vBulletin Solutions, Inc.
Hosted by Beograd.com