iphonei objective c

29
UNIVERZITET U PRIŠTINI – FAKULTET TEHNIČKIH NAUKA KOSOVSKA MITROVICA SEMINARSKI RAD TEMA: Operativni sistem za iPhone, Objective C

Upload: philip-calabines

Post on 05-Jul-2015

159 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Iphonei Objective C

UNIVERZITET U PRIŠTINI – FAKULTET TEHNIČKIH NAUKA KOSOVSKA MITROVICA

SEMINARSKI RADTEMA: Operativni sistem za iPhone, Objective C

Mentor: Dragan Stanković

Student: Bojan Kalabines Stojanović

Page 2: Iphonei Objective C

3

Sadržaj

1. UvodNešto o iPhone-u……………………………………………………………………….....2Kako će izgledati iPhone četvrte generacije………………………………………………3

2. Objective CUvod……………………………………………………………………………………...4Objective C tutorial……………………………………………………………………….4iPhone Hello World uz korišćenje XCode-a………………………………………….......9

3. Zaključak…………………………………………………………………………..…....16

4. Dodatak……………………………………………………………………………….....17

5. Literatura……………………………………………………………………………......21

Page 3: Iphonei Objective C

3

UVOD

Nešto o iPhone-u

iPhone je linija internet i mutimedija smart telefona dizajniran i prodavan od kompanije Apple inc. User interface je napravljen tako da korisnici koriste virtuelnu tastaturu umesto fizičke. Do sada ima vise od 200k (200 hiljada) aplikacija odobrenih od Apple-a. Te aplikacije imaju različite funkcionalnosti počevši od igrica, gps navigacije, reference, social networking itd.

Apple je objavio iPhone januara 2007 posle mnogih špekulacija i tračeva. Te godine Time magazin je iPhone nazvao pronalaskom godine.

Izgradnja iphone-a je počela kada je izvršni direktor Steve Jobs i njihovi inženjeri istraživali ekran osetljiv na dodir. Apple je tajno radio sa AT&T mobility a razvoj iphone-a ih je koštao 150 miliona dolara za 30 meseci istraživanja. Jobs je predstavio iphone svetu 9. Januara 2007. Najava je došla par meseci ranije zato sto Apple-u je bilo potrebno da dobiju dozvolu za rad sa FCC (federal communications commission). iPhone je pušten u prodaju 29. Juna 2007. U 18 časova po lokalnom vremenu dok su stotine kupaca čekala u redu ispred prodavnica. Kasnije iphone je bio dostupan i na evropskom tržistu od novembra 2007 i to u Velikoj Britaniji, Francuskoj, Nemačkoj i u proleće 2008 u Austriji i Irskoj. U julu 2008 Apple je izbacio iphone 3G jos u 22 zemlje uključujući 6 malo pre navedenih. Apple je objavio novi iphone 3GS u junu 2009 sa planovima o proizvodnji u SAD, Kanadi i svim većim Evropskim zemljama. Najbolje od svega je da je Apple toliko toga radio na prilagodjavanju cene iphone-a tako da je od njegovog nastanka cena sa 599$ pala na 99$ mada zahteva dvogodisnji ugovor. Do sada apple je prodao 6.1 miliona primeraka iphone-a samo u 2007 godini. Procenjuje se da sada ima 6.4 miliona aktivnih korisnika iphone-a samo u SAD. Originalni iphone je napravljen od aluminijuma sa crnom plastikom dok su kasnije verzije 3G i 3GS pravljene i u belim nijansama.

iPhone pokreće operativni sistem poznat kao iPhone OS. Baziran je na varijantama Darwin koji se može naći u Mac OS X. Takodje sadrži Core Animation softversku komponentu iz Mac OS v10.5 Leopard. Operativni sistem zauzima nešto manje od jednog gb ukupne memorije koja se kreće izmedju 4 i 32 gb. Vrlo je važno znati da softverske aplikacije se ne mogu direktno kopirati sa Mac OS X bez obzira na to što iPhone-ov operativni sistem ima isti “temelj” kao Mac – ov operativni sistem.

slika 1.

Page 4: Iphonei Objective C

3

Apple iOS nije imao svoje zvanično ime sve do svog objavljivanja iPhone kompleta za razvoj softvera (SDK iPhone) 6.marta 2008. Pre toga Apple marketing je jednostavno objavio da na iPhone-u radi OS X, referenca na svog roditelja MAC OS X. Medjutim kada je globalno predstavljen predstavljen je kao iPhone OS. Sada je preimenovan u iOS 7.juna 2010. verovatno sto osim iPhone-a koriste ga jos 3 uredjaja. Prva generacija iPhone i iPod Touch imali su iOS 3.1.3 dok je druga generacija imala verziju 4.2.1 koja je bila dostupna svim korisnicima od 18.novembar 2010.

8.aprila 2010, Apple je objavljen iOS 4.0 kao i beta 4.0 verzija firmware-a i SDK. Beta 4.0 je bila dostupna samo registrovanim dilerima i distributerima dok je konačna verzija objavljena 21. juna 2010. Samom novom verzijom bio je moguć multitasking funkcija.

Apple pruža veliku podršku korisnicima iPhone-a tako sto su korisnici u mogućnosti da dobiju softverske ispravke besplatno, isto tako su dostupni razni dodaci za iPod Touch koji su takodje besplatni.

Počev od 17.juna 2010. iOS 4.2 je prvi i jedini update koji nikada nije pušten u javnost. Pri izlasku iOS 4.2.1 22. novembra 2010, iOS 4.2 je pomenut kao verzija puna bagova. Medjutim kod iOS 4.2.1 takodje nisu svi uredjaji bili kompatibilni kod ostalih uredjaja osim iPhone-a.

Poslednja verzija ovog operativno sistema je iOS 4.3.1 za iPhone, iPod Touch, iPad i Apple TV druge generacije koje je izasla 25.marta 2011. Samo da napomenem jos jednom da aplikacije se moraju zasebno pisati (ne kopirati) i kompajlirati za iPhone.

Page 5: Iphonei Objective C

3

Kako će izgledati iPhone četvrte generacije (4G)

Slika 2.

iPhone 4G donosi potpuno novi pristup dizajnu u poredjenju sa prethodnim generacijama iPhone-a. Zahvaljujuci četvrtastom/blok dizajnu malo je manje udoban za držanje u ruci u poredjenju sa svojim prethodnicima i pri držanju se osećaju oštre ivice.Ukoliko bolje pogledate videćete da je aluminjumski ram brilijantno napravljen; puno pažnje je posvećeno detaljima poput zvučnika, ulaza za slušalice, mikrofona… Na prednjem panelu se sada osim home dugmeta nalazi i prednja kamera locirana ispod staklene površine sa leve strane slušalice.Na 4 ivice se nalaze isti dugmići sa istim funkcijama kao i na prethodnim verzijama iPhone-ova. Dugmići za pojačavanje i smanjivanje zvuka su sada dva zasebna okrugla dugmeta. Pored ulaza za slušalice i power dugmeta se sada nalazi i mala rupa koja liči na rupu za mikrofon. SIM kartica je sada pomerena na desnu ivicu kao na iPad-u. Dimenzije: iPhone 4G je tanji od prethodnih iPhone-ova (za oko 2.5 mm), širina je takodje manja za oko 3,5 mm (zbog aluminijumskog rama), dužina je za oko 1 mm veća nego na prethodnim uredjajima.

slika 3.

Page 6: Iphonei Objective C

3

OBJECTIVE C

Uvod

Objective c je jednostavan jezik dizajniran da omogući sofisticirano objektno orjentisano programiranje. Objective c je definisan kao mali ali moćan proširen skup standardnog ANSI C jezika. Objective c je dizajniran da da C jeziku punu objektno-orjentisano mogucnost i to na jednostavan i prav način.

Većina objektno-orjentisanih razvojnih okruženja se sastoji od nekoliko delova:-objektno-orjentisanog jezika-biblioteke objekata-paket razvojnih alata-runtime environment

Objective C je reflektujuce, objektno orjentisani programski jezik koji dodaje smalltalk stil poruka programskom jeziku C. Danas koristi se pre svega na Apple-om MAC OS I iphone OS: dva okruzenja bazirana na OpenStep standard. Objective c je glavni jezik koji se koristi za Apple-ov Cocoa API(application programming interface), i bio je glavni programski jezik na NeXT i NeXTSTEP OS-evima1.

Objective-C Tutorial

Objective C je programski jezik koji se koristi za iPhone aplikativni razvoj. Za pravljenje bilo koje aplikacije 90% vremena se trosi radeći u ovom jeziku. Ovaj tutorial je dizajniran da omogući dobar start u iPhone programiranju. Sada ćemo predstaviti šta nam je sve potrebno za uspešno programiranje.

1 NeXTSTEP (ili NeXTstep, NeXTStep, i NEXTSTEP) je objektno orjentisan, multitasking operativni system proizveden od strane NeXT Computer

Page 7: Iphonei Objective C

3

Alati: Mac, XCode & Interface Builder

Pre nego što počnete bilo sta morate imati pristup Mac OSX operativnom sistemu. Zapravo trebaće nam novija verzija Mac OSX-a.

Kada imamo Mac OSX na svom mestu sledeći korak je da se prijavimo za Apple Developer Program tako što ćemo se prijaviti na http://developer.apple.com. Prijava je besplatna i odavde možemo da download-ujemo alate besplatno. Sa druge strane ako želimo da nase aplikacije vidimo na Apple App Store (Apple oficijalna prodavnica) moramo da platimo 99 dolara za to.

Na kraju, kada smo se prijavili u Apple razvojni tim trebamo da imamo alate za uspesno programiranje na iPhone-u. Od alata koristimo XCode i Interface Builder. XCode je IDE za iPhone razvoj i mesto u kome možemo da menjamo iPhone kod i na taj nacin da držimo naše aplikacije organizovanim. Interfece Builder je “point and click” program i koristimo gad a napravimo GUI za iPhone a da nemamo nikakav kontakt sa kodom iPhone-a.

iPhone Programski Jezici

iPhone programiranje zahteva korišćenje jednog ili više navedenih jezika:C, C++ i Objective C. C je stari programski jezik koji se koristi u mnogim softverskim sistemima a u našem slučaju, u iPhone OS, koristi se za niske funkcije operativnog sistema. C++ se koristi za kreiranje igrica i na kraju Objective C je program kod kojeg cemo trositi 90% našeg vremena dok se budemo bavili iPhone programiranjem.

Primer iPhone koda za programiranje:

UILabel *label label = [[UILabel alloc] init];label.frame = CGRectMake(10, 10, 300, 40);label.textAlignment = UITextAlignmentCenter;label.text = @"Press Button";[self.view addSubview:label];[label release];

Kod koji je dat u primeru ce napraviti labelu sa tekstom “Press Button”.

iPhone Razvojni Okviri

Page 8: Iphonei Objective C

3

Primarni okviri koje ćemo koristiti za iPhone programiranje je Cocoa-Touch2 okvir. U njemu možemo kreirati dugmića, labela, slajdera itd. Neki programeri će se češće odluciti za druge okvire kao što je NSFundation.

Objective-C Objekti

Objective C je objektno orjentisan programski jezik i većinu vremena u projektovanju trošimo radeći sa objektima. Da bi smo definisali objekat jednostavno trebamo da napišemo ime klase a zatim ime koje ce nam služiti kao lokalni pokazivač na objekat.

NSNumber *numberObject;

NSNumber je često korišćena klasa u Objective C-u a u našem slučaju objekat se zove numberObject. Zvezdica se koristi da ukaže da je ime objekta pokazivač.

Messaging Objekti

Kada vam je potreban objekat da odradi nešto, u Objective C-u morate da mu posaljete poruku (da ga pozovete). U drugim programskim jezicima koristi se termin “pozvati metodu/objekat” sa sintaksom koja lici na ovu:

alert.show();

Objective C obradjuje ovaj zadatak malo drugacije tako što koristi poruke a ne metodu zvanje metoda. Da bi smo demonstrirali držaćemo se malopredjašnjeg primera. Alert je uobicajeni user interface element koji se javlja sa porukom koju user cita. U programskim jezicima kao sto su dot net ili Java vi ćete verovatno koristiti metodu “show” da natera “alert” da prikaže poruku. Da bi ste uradili istu stvar u Objective C napisaćete ovako:

[alert show];

Prva stvar koju ćete primetiti je da objekat i metodu stavljamo u uglastim zagradama. Ovo je zaštitni znak Objective C-a, sintaksa kako bi ga ljudi lakše prepoznali. Druga stvar, vidite kako su ime metode i objekat razdvojeni.

2 Cocoa Touch je API(application programming interface), razvojni software program za iPhone

Page 9: Iphonei Objective C

3

Oslobadjanje Objekata (Releasing Objects)

Kada koristite Objective C na phones-u morate da oslobodite objekte koje ste kreirali koristeći alloc, new ili copy. To ima veze sa memorijom za upravljanje o kojoj ce biti reči u sledećem odeljku. Da oslobodite objekat jednostavno pošaljete “release” poruku samom objektu.

[myObject release];

Ovo je patent koji ćete često koristiti kada koristite objekte u Objective C-u:

//allocate memory and create objectmyClass *myObject = [[myClass alloc] init];//Use object[myObject doStuff];//Release object[myObject release];

Upravljanje memorijom

Kada radite sa Objective C-om na phones-u morate ručno da upravljate memorijom. Ovo je veoma važna tema jer ako upravljanje memorijom nije ispravno učinjeno može doći do curenja ili pak brisanja aplikacija. Upravljanje iPhone-ove memorije radi se pomoću jednostavnog sistema “Reference Counting”.

Ideja je da će sistem pratiti, kad god je to potrebno, da čuva memoriju za objekat na raspolaganju, baziran na broju drugih komponenti koje ukazuju na to da li im je i dalje potreban taj objekat. Svaka komponenta dobija svoj interes na objekat dodavanjem broja reference objektu. Takodje mi možemo sami da dodamo broj reference tako što ćemo poslati “retain” poruku objektu. Ako su 5 komponente zainteresovane za jedan objekat znači da taj objekat ima broj reference 5. System ce zadržati memoriju objekta sve dok je broj reference iznad 0.

Ako komponente ne trebaju objekat vise one će saopštiti to objektu slanjem poruke “release”. Svaki put kada je “release” poruka poslata referentni broj opada za 1. Kada referentni broj dostigne broj 0 sistem može da uništi objekat i da ponovo koristi taj deo memorije po volji.

Strings, NSString

Page 10: Iphonei Objective C

3

Sada ćemo preći na neke klase i objekte koji se često koriste u Objective C-u. Mnoge klase dolaze zajedno sa programima koje koristimo za programiranje kao što je XCode. On pruža prilično bogat okvir klasa i objekata.

Što se tice stringova u Objective C-u klasa koju koristimo za rad sa stringovima zove se NSString i koristi se kao svi drugi objekti:

NSString *myString = [[NSString alloc] initWithString:@"A String"];NSLog(myString);[myString release];

Iznad koristimo NSLog za pisanje poruke za konzolu. Ovde smo jednostavno kreirali instancu NSString koristeći tipičan obrazac koji je opisan u predhodnom odeljku(alloc, init i release). Medjutim NSString dolazi sa dodatnim funkcijama koje ne zahtevaju korišćenje alloc ili release poruke. Ista stvar se moze postići i ovako:

NSString *myString = @"A String";NSLog(myString);

NSString takodje ima funkciju koje će nam koristiti u izradi novih stringova “lepljenjem” drugih stringova, brojeva ili objekata zajedno korišćenjem stringWithFormat funkcije:

NSString *lotsOfInsertedStuffString = [NSString stringWithFormat:@"I am adding this number: %i and this string:%@.", 45, myString];

NSLog(lotsOfInsertedStuffString);

NSString dolazi sa bogatim setom funkcija zato potrudite se da pronadjete neke od njih u zaglavlju umesto da ih pravite.

Racunanje i brojevi u Objective C-u

U većini slučajeva, što se tice matematickog dela, držaćemo se C stila. Objective C i C se često koriste zajedno kada su u pitanju matematicki problemi. Možemo kotistiti NSNumber klasu, Objective C, kada nam treba ulepšavanje brojeva ali kada su u pitanju petlje, if-then logika, case uslovi, funkcije itd. koristimo C stil.

int i = 3;NSLog(@"i = %i", i);double d = 3.4;NSLog(@"d = %f", d);double dPlusi = d + i;NSLog(@"d + i = %f", dPlusi);

Objective-C nizovi

Page 11: Iphonei Objective C

3

Pre nego sto završimo pogledajmo kako se koriste objektno orjentisani nizovi koje imamo na raspolaganju. Nizovi su jednostavno liste objekata u Objective C-u i možemo importovati bilo šta u nizove. Evo kako jednostavno možemo koristiti nizove:

//Instantiate an arrayNSMutableArray *myArray = [[NSMutableArray alloc] init];

//Add elements to an array[myArray addObject:@"Element 1"];[myArray addObject:@"Element 2"];[myArray addObject:@"Element 3"];

//Retrieve an object from an arrayNSLog([myArray objectAtIndex:0]);

//Retrieve the last object in an arrayNSLog([myArray lastObject]);

for (NSString *s in myArray) {NSLog(s);

}

Kao što smo par puta ranije govorili, moramo da oslobodimo (release) objekat kada smo završili.

[myArray release];

iPhone Hello World primer uz korišćenje XCode-a

U ovom uputstvu demonstriraću kako da napravite svoju prvu aplikaciju. Takodje ćete možda naći neke relevantne informacije koje ćete naći korisnim ako se bavite sa kompleksnijim iPhone ili MAC OS aplikacijama.

Pre nego sto počnemo potrebno je da imamo xcode i xcode sdk, integrisano razvojno područje preporučeno od Apple-a.

Najpre otvorite xcode, kreirajte novi projekat, čekirajte view based application i nazovite vaš program Hello World i sačuvajte ga. Ovde na slici je prikazano kako je program sačuvan na desktop-u.

Page 12: Iphonei Objective C

3

slika 4.

slika 5.

Page 13: Iphonei Objective C

3

Nakon što je odradjen malopredjašnji posao xcode će otvoriti project prozor. Većinu vremena ćemo potrošiti samo u ovom jednom prozoru. Project prozor je podeljen na 3 celine. Imamo Groups and Files panel na levoj strani. Ovaj prozor sadrži sve resurse kako bismo uradili ovaj nas projekat. Desno-gore prozor je Detail View koji nam pokazuje detaljne informacije o selektovanoj grupi iz Groups & Files prozora. Desno-dole prozor zove se Editor. Bilo koj fajl koji selektujemo u Groups & Files prozoru biće otvoren u Editor prozoru. U ovom prozoru ili pišemo ili pak menjamo aplikacioni izvorni kod.

Saznajmo sada nešto o fajlovima iz prozora Groups & Files. Unutar ove sekcije imamo 5 pod foldera: Classes, Other Sources, Resources, Frameworks, and Products. Sada ćemo reći nešto o njima.

Classes :- Sve klase Objective C-a pripadaju ovom folderu. Za bolju organizaciju možemo da kreiramo pod foldere pod Classes folderu.

Sources Other :- Ovaj folder sadrši fajlove izvornog koda koji nisu klase Objective C-a. Na početku postoje samo 2 fajla a to su: Hello World_Prefix.pch i main.m respektivno.

Hello World_Prefix.pch :- Ekstenzija .pch je skraćenica od “precompiled header”. Ovaj fajl sadrši listu zaglavlja koja pripadaju frameworks-ovima(okvirima) koji se koriste u našem projektu. Kad god je nas projekat kompajliran ili izvršen xcode prekompajlira zaglavlja koja sadrži nas fajl.

main.m :- Ovo je naš glavni fajl, mesto gde naša aplikacija ima main() metodu. Ovaj fajl obično ostaje nepromenjen.

Resources :- Ovaj folder sadrži fajlove kao što su ikonice, sličice, razni zvuci i video klipovi. Takodje sadrži tri veoma važne stvari koja svaka od njih ima svoj značaj u razvoju applikacije našeg projekta a to su: Hello_WorldViewController.xib, Info.plist i MainWindow.xib.

Hello_WorldViewController.xib :- Informacije korišćenje od strane Interface Builder-a su u ovom fajlu.

Info.plist :- Informacije u vezi sa našom aplikacijom se nalaze u ovom fajlu.

MainWindow.xib :- Obično ovaj fajl ostaje netaknut ali u velikim i kompleksnim aplikacijama on biva zamenjen.

Frameworks :- Ovaj folder sadrži biblioteke koje sadrže kodove i resurse npr. sličice i zvuci.

Products:- Ovaj folder sadrži izlaz projekta Hello World.app, fajl kojeg stvara naš projekat. Na početku naš fajl je označen crvenom bojom zbog toga što još nije kompajliran. Kada biva kompajliran crvena boja nestaje.

Page 14: Iphonei Objective C

3

slika 6.

Kako smo obuhvatili najvažnije teme za izgradnju iPhone aplikacije stoga nastavljamo sa našim Hello World projektom. Dakle, za sada smo napravili pregled na osnovu našeg projekta sa imenom Hello World i sačuvali smo ga na desktop-u. U projektu ćemo kreirati labelu u koju ćemo napisati Hello World. Ovde ćemo koristiti malu pomoć programa Interface Builder ali istu stvar mozemo uraditi i rucno.

#import <stdio.h>

int main( int argc, const char *argv[] ) { printf( "hello world\n" ); return 0;}

koristimo #import umesto #include u Objective-C

Podrazumevana file ekstenzija za Objective-C je .m

Po mom misljenju korišćenje Interface Buildera je verodostojnije. Dakle, iz Groups & Files prozora > Resources otvorićemo Hello_WorldViewController.xib fajl. Ovako ćemo otvoriti fajl unutar Interface Builder programa. U Hello_WorldViewController.xib prozoru otvorićemo View prozor.Klikom na tools > attributes inspector moćićemo da menajmo boju pozadine.Klikom na tools > Library, odatle ćemo prevući UI labelu na view prozor, zatim prilagoditi veličinu labele i upisati Hello World u sekciji attributes i na kraju pritisnuti enter dugme kako bi nas tekst bio vidljiv unutar labele.

Page 15: Iphonei Objective C

3

slika 7.

slika 8.

Page 16: Iphonei Objective C

3

slika 9.

Nakon svega ovoga pritisnućemo taster mac + s da bismo sašuvali promene u Hello_WorldViewController.xib i zatim zatvorićemo Interface Builder kako bi se vratili prozoru samog projekta. Nakon toga pritiskom na dugme mac + r ili klikom na build kompajliramo i izvršavamo naš program. Ako je uspešno kompajliran kreiraće se .app fajl a simulator ce se ispisati Hello World.

Page 17: Iphonei Objective C

3

 

Page 18: Iphonei Objective C

3

Zaključak

Znamo da iPhone pokreće operativni sistem poznat kao iPhone OS. Baziran je na raznim softverskim delovima koje se mogu naći u Mac OS X ujedno je i komtabilan sa njim. Operativni sistem zauzima nešto manje od jednog gb ukupne memorije koja se kreće izmedju 4 i 32 gb. Vrlo je važno znati da softverske aplikacije se ne mogu direktno kopirati sa Mac OS X bez obzira na to što iPhone-ov operativni sistem ima isti “temelj” kao Mac – ov operativni sistem. Samo da napomenem jos jednom da aplikacije se moraju zasebno pisati (ne kopirati) i kompajlirati za iPhone. Jedine zamerke koje imam je to što u Srbiji nema oficijalnog prodavača iPhone-ova tj. Apple nije sklopio ugovor ni sa jednim od naših domaćih operatera i to da bez obzira na smanjivanje cene iPhone nije dostupan svakom ko hoće da postane njegov ponosni korisnik.Što se tiče Objective C-a, moj kratki uvod o njemu predstavlja ptičiju perspektivu programiranja za iPhone ali ipak je dovoljan da se počne Objective C karijera. Postoje tu još mnogo napredinjih stvari u jeziku koje se vremenom i vežbom same dodju ali ovo je sasvim dovoljno da se počne iphone razvoj. Da bi smo ušli malo dublje moramo dosta vremena utrošiti ali sa ovim tutorialom napravili smo dobar početak.

Page 19: Iphonei Objective C

3

Dodatak

Otključavanje iPhone-a

iPhone se prodavao samo u zemljama Sjedinjenim Američkim državama, Nemačkoj, Francuskoj, Velikoj Britaniji, Kanadi zbog toga sto je kompanija Apple u nekoliko navrata bio optuživan zbog kradje imena, forme i nekih softverskih alata kao npr. od strane kompanije Nokia iz Finske i zbog toga su morali ograničiti tržište. Međutim kasnije zbog dozvole da prošire tržište izašli su na velika vrata i sada je iPhone dostupan i u Danskoj, Tajland, Austrija, Belgija, Južna Afrika, Ekvador, Singapur, Grčka, Kipar, Australija, Rumunija, Tajvan, Kina,Hong Kong, Pakistan, Indija, Bangladeš, Italija, Irska, Izrael, Turska, Novi Zeland, Vijetnam, Finska, Rusija i Saudijska Arabija. Za sve buduce korisnike koji nemaju prebivalište u gore navedenim zemljama ovaj dodatak će veoma mnogo koristiti zbog toga što samo korišćenje iPhone-a je moguće samo u tim zemljama zbog posebnih funkcija samog telefona a to su sim lock i nemogućnosti korišćenja aplikacija i drugih alata ukoliko nisu preuzeti iz Apple store iliti oficijalne prodavnice.

U ovom odeljku cu kratko odgovoriti na ova dva pitanja. Ovde je prikazano kako da otključate iPhone 3G.

I. iPhone treba otključati i uraditi jailbreak.

1.Pokrenite Cydiu. 2.Kliknite na Manage na dnu ekrana.

3.Kliknite na Sources.

Page 20: Iphonei Objective C

3

4.Kliknite na Edit u gornjem desnom uglu.

5.Zatim kliknite na Add.

6.Ovde treba da dodate sledeci source. Kada ukucate, kliknite na Add Source.Code: http:// repo666.ultrasn0w.com

7.Kada se source doda, kliknite na Return to Cydia.

8.Kliknite na Done, da završite sa izmenom source-ova.

9.Sada kliknite na upravo dodani source > repo666.ultrasn0w.com.

Page 21: Iphonei Objective C

3

10.Kliknite na ultrasn0w.

11.Kliknite na Install u gornjem desnom uglu.

12.Sad kliknite na Confirm.

13.Kada se instalacija završi, kliknite na Return to Cydia.

14.Sada izadjite iz Cydie pritiskom na Home dugme. Nakon toga potrebno je ugasiti i ponovo upaliti iPhone.

Page 22: Iphonei Objective C

3

15.To je to. Sada možete koristiti bilo koju SIM karticu.

II. Kada ste otključali treba: -Ubaciti kontakte sa SIM kartice u telefon:Udjite u Settings pa Mail,Contacts,Calendars pa Import SIM Contacts-Prebacite muziku, slike,... u iTunes-u napravite playlist-u pesama, zatim konektujte iPhone i čekirajte tu listu za sync. -Instalirati MobileInstalation Patch iz Cydia. On vam omogucuje da instalirate krekovane aplikacije i igrice koje ćete ubacivati preko iTunes-a.

-Napraviti iTunes Accounthttp://www.isrbija.net/showthread.php?t=2391

III. Sada možete da radite šta želite...

Page 23: Iphonei Objective C

3

LITERATURA

1. www.iphone-srbija.com

2. http://www.otierney.net/objective-c.html

3. http://mobileappmastery.com/objective-c-tutorial/

4. www.iphone-srbija.com/forum/development

5. http://en.wikipedia.org/wiki/IPhone