1 00:00:00,000 --> 00:00:02,610 [Powered by Google Translate] [Seminar] [Android Apps (Tani me fasule pelte!)] 2 00:00:02,610 --> 00:00:04,210 [Jordani Jozwiak] [Universiteti i Harvardit] 3 00:00:04,210 --> 00:00:06,780 [Kjo është CS50.] [CS50.TV] 4 00:00:06,780 --> 00:00:11,600 >> Përshëndetje të gjithë, dhe i mirëpritur për Apps Android (Tani me fasule pelte!) Seminar. 5 00:00:11,600 --> 00:00:14,530 Ajo që quhet tani me fasule pelte, natyrisht, për shkak se 6 00:00:14,530 --> 00:00:17,310 versioni i fundit i OS është quajtur Jelly Bean. 7 00:00:17,310 --> 00:00:22,950 Kur kam folur për Android vitin e kaluar dhe e bëri këtë seminar në thelb të njëjtën 8 00:00:22,950 --> 00:00:29,150 Unë u paraqitur modelet e projektimit dhe zgjedhje stilistike për kek me xhenxhefil, 9 00:00:29,150 --> 00:00:31,250 edhe pse Cream Ice sandviçësh kishte dalë jashtë në kohë, 10 00:00:31,250 --> 00:00:33,680 dhe kjo është diçka që ne do të flasim për të shkuar përpara pak. 11 00:00:33,680 --> 00:00:35,720 Android, natyrisht, ka disa çështje me fragmentim, 12 00:00:35,720 --> 00:00:40,240 kështu që sistemi i fundit operativ Google është zakonisht 13 00:00:40,240 --> 00:00:44,710 me të vërtetë nuk do të bëhet e zakonshme në mesin e përdoruesve për të potencialisht deri në një vit, për fat të keq. 14 00:00:44,710 --> 00:00:49,960 >> Por, pa marrë parasysh se, ne do të flasim për shumë arsye pse 15 00:00:49,960 --> 00:00:53,000 Android është shumë më mirë se IOS. 16 00:00:53,000 --> 00:00:56,410 Mirë, ne do të flasim për iOS kundrejt Android, 17 00:00:56,410 --> 00:00:59,770 disa paradigma të projektimit, si ju do të merrni ngritur në vetëm një rrëshqitje, 18 00:00:59,770 --> 00:01:03,410 dhe dallim i madh mes kësaj dhe vitin e kaluar është që unë vetëm dua të 19 00:01:03,410 --> 00:01:06,860 zoom përmes disa gjëra konceptuale që punojnë me 20 00:01:06,860 --> 00:01:09,950 sistemi operativ dhe pastaj të shkoni në një shembull të vërtetë themelore. 21 00:01:09,950 --> 00:01:13,730 Në fakt, vetëm shembulli se Google përshkruan për ndërtimin app tuaj të parë, 22 00:01:13,730 --> 00:01:17,070 dhe ne do të shkojnë nëpërmjet saj së bashku dhe vetëm përshkruajnë. 23 00:01:17,070 --> 00:01:22,100 >> Unë e di shumë prej jush kanë koduar vetëm në C, kështu që Java është tashmë do të jetë 24 00:01:22,100 --> 00:01:27,220 një perspektivë të ndryshme, dhe në këtë mënyrë ju do të merrni këmbët tuaja lagësht 25 00:01:27,220 --> 00:01:31,540 dhe të ndjehen pak më të rehatshme me atë shpresë. 26 00:01:31,540 --> 00:01:35,330 Një përmbledhje e shpejtë, iOS kundrejt Android. 27 00:01:35,330 --> 00:01:39,200 Në Android nuk është kjo një tarifë kohë Zhvilluesi i 25 $, 28 00:01:39,200 --> 00:01:42,390 asnjëri prej kësaj gjëje $ 100 në vit. 29 00:01:42,390 --> 00:01:45,440 Nuk ka kufizime, që do të thotë se në qoftë se unë dua të paraqesë një app, 30 00:01:45,440 --> 00:01:51,560 Unë vetëm të paraqesë atë, dhe nuk ka asnjë proces miratimi si nuk është për iOS. 31 00:01:51,560 --> 00:01:53,890 Ju merrni për të zhvilluar me Java duke përdorur Eclipse, 32 00:01:53,890 --> 00:01:57,090 e cila është platformë kryq, kështu që nuk ka rëndësi në qoftë se ju keni një Mac, 33 00:01:57,090 --> 00:01:59,600 Windows, Linux apo ndonjë makinë. 34 00:01:59,600 --> 00:02:03,730 Sigurisht, me iOS ju duhet të përdorni XCode në një Mac, 35 00:02:03,730 --> 00:02:06,930 Android dhe është përdorur nga shumë njerëz më shumë, 36 00:02:06,930 --> 00:02:11,580 kështu që nëse ju doni app tuaj që të ketë një lloj të shikimit apo ndoshta 37 00:02:11,580 --> 00:02:14,110 të bërë një pak të holla nga reklama 38 00:02:14,110 --> 00:02:17,450 ndoshta ju jeni më shumë gjasa për të përfituar nga Android. 39 00:02:17,450 --> 00:02:20,630 >> Dhe një gjë që ka qenë gjithmonë i njohur për Android 40 00:02:20,630 --> 00:02:25,100 është shuma ekstreme e customization, kurse iOS është shumë e fiksuar në rrugët e tyre 41 00:02:25,100 --> 00:02:29,380 në mënyrë që ata mund të mbajnë sigurinë dhe kontrollin mbi çdo aspekt të vogël 42 00:02:29,380 --> 00:02:34,180 i projektimit në kuadër të OS dhe Apps të tyre individuale. 43 00:02:34,180 --> 00:02:40,180 Android është formë shumë e lirë, dhe nuk ka mundësi kaq shumë më tepër. 44 00:02:40,180 --> 00:02:42,530 Mirë, disa nga paradigmat e projektimit. 45 00:02:42,530 --> 00:02:49,600 Vini re këtu vetëm si iOS ka tableta dhe iPhone dhe iPod prek 46 00:02:49,600 --> 00:02:53,840 ata duhet të mbështesin, të themi, si një pajisje duzinë në qoftë se ju doni të mbështetur 47 00:02:53,840 --> 00:02:55,450 gjëra historike si. 48 00:02:55,450 --> 00:02:58,410 Me Android ju duhet për të mbështetur qindra e pajisjeve, 49 00:02:58,410 --> 00:03:01,240 kështu që ka disa gjëra që Google ka qenë duke u përpjekur për të zbatuar 50 00:03:01,240 --> 00:03:04,970 për të bërë përdorues të përjetojnë një pak më të qëndrueshme, 51 00:03:04,970 --> 00:03:08,560 por ne gjithashtu do të flasim rreth asaj se si kjo do të thotë se ka çështje të fragmentimit 52 00:03:08,560 --> 00:03:11,700 se ju vazhdimisht duhet të jetë i vetëdijshëm për mbështetjen. 53 00:03:11,700 --> 00:03:16,140 Copëzimi do të thotë se ka shumë sisteme të ndryshme operative, 54 00:03:16,140 --> 00:03:20,330 Telefonat shumë të ndryshme me hardware të ndryshme running Android të gjithë në të njëjtën kohë, 55 00:03:20,330 --> 00:03:29,680 kështu që ky grafik këtu shkon prapa për rreth 6 muaj. 56 00:03:29,680 --> 00:03:36,460 Yeah, 6 muaj, dhe ju mund të shihni se si grupi më të errët 57 00:03:36,460 --> 00:03:39,330 në pjesën e poshtme është Jelly Bean, i cili doli gjatë verës, 58 00:03:39,330 --> 00:03:42,970 dhe ju mund të shihni të drejtë tani ndoshta rreth 2% e telefonave kanë atë. 59 00:03:42,970 --> 00:03:45,520 >> Cream Ice sandviçësh doli më shumë se një vit më parë, 60 00:03:45,520 --> 00:03:47,770 dhe një e katërta e telefonave kanë atë. 61 00:03:47,770 --> 00:03:53,910 Ka ende një shumë të telefonave që janë duke përdorur versionin e OS nga vjet më parë. 62 00:03:53,910 --> 00:03:57,820 Një gjë që Google është përpjekur të bëni për të bërë përvojën e përdoruesit 63 00:03:57,820 --> 00:04:01,400 shumë më konsistente Apps është duke filluar me huall mjalti, 64 00:04:01,400 --> 00:04:04,320 e cila është version tabletë, atëherë Ice Cream Sandwich dhe Jelly Bean, 65 00:04:04,320 --> 00:04:06,750 ata janë me të vërtetë duke u përpjekur të theksoj përdorimin e këtij veprimit bar, 66 00:04:06,750 --> 00:04:10,430 e cila është ajo që ju mund të shihni në krye këtu, 67 00:04:10,430 --> 00:04:14,730 çdo gjë të drejtë këtu, duke përfshirë edhe këtë pak butonin settings. 68 00:04:14,730 --> 00:04:16,079 Kjo është zgjedhja e projektimit. 69 00:04:16,079 --> 00:04:18,000 Tani, sa herë që ju shihni 3 dots kjo do të thotë të klikoni mbi këtë, 70 00:04:18,000 --> 00:04:21,880 dhe atje do të jetë një drop-down menu, e cila ka disa lloj të settings. 71 00:04:21,880 --> 00:04:28,900 Kjo vetëm tregon deri për shkak se unë klikuar këtë buton. 72 00:04:28,900 --> 00:04:32,040 Kjo është diçka që ata janë duke u përpjekur për të përdorur për të bërë Apps pak më konsistente 73 00:04:32,040 --> 00:04:39,210 të gjithë bordit dhe kështu përdoruesi ka një kuptim më të mirë të përvojës uniforme. 74 00:04:39,210 --> 00:04:42,640 >> Mirë, kështu që në rast se ju nuk e keni bërë këtë tashmë ose në qoftë se ju jeni të shikuar në shtëpi 75 00:04:42,640 --> 00:04:50,210 atëherë ju mund të ndiqni këto hapa për të ngritur mjedisin tuaj coding. 76 00:04:50,210 --> 00:04:52,630 Ajo do të përfshijë të shkuar në faqen e internetit këtu. 77 00:04:52,630 --> 00:04:56,260 Ju mund të Google instalimi Android SDK 78 00:04:56,260 --> 00:04:59,130 dhe të ndiqni disa përshkrime atje. 79 00:04:59,130 --> 00:05:01,310 Ata t'ju tregojë gjithçka. 80 00:05:01,310 --> 00:05:05,160 Ata kanë ju instaloni SDK, shkarko versionin Eclipse Classic, 81 00:05:05,160 --> 00:05:07,450 edhe pse, natyrisht, ne jemi në Java coding. 82 00:05:07,450 --> 00:05:12,190 Ata rekomandojnë këtë një, dhe pastaj këtë ADT, mjetet Zhvillimit Android, 83 00:05:12,190 --> 00:05:17,300 është një plugin që ju të instaluar në errësirë ​​e cila ju lejon për të 84 00:05:17,300 --> 00:05:20,550 kanë një përvojë shumë më të strukturuar me Android brenda Eclipse. 85 00:05:20,550 --> 00:05:24,070 Kjo do t'ju japë disa interfaces grafike të përdoruesit 86 00:05:24,070 --> 00:05:29,610 për dizajnimin e pikëpamjeve, dhe ai do t'ju japë më shumë mbështetje 87 00:05:29,610 --> 00:05:34,840 dhe aftësinë për të nisur me emulator dhe të gjitha atë gjë e tillë. 88 00:05:34,840 --> 00:05:36,090 Kuadri Aplikimi. 89 00:05:36,090 --> 00:05:41,590 >> Unë dua të flas rreth asaj se si projektet brenda Android janë të strukturuara, 90 00:05:41,590 --> 00:05:44,830 dhe pastaj ne do të shkojnë në një shembull të shpejtë, dhe shpresojmë se 91 00:05:44,830 --> 00:05:48,820 ju mund të bëni pyetje në çdo moment dhe të ndiheni rehat në fund të saj. 92 00:05:48,820 --> 00:05:50,090 Ne kemi disa zhargon të parë. 93 00:05:50,090 --> 00:05:55,330 Një aktivitet është si të ekranit që ju shikoni kur ju të nisë një app. 94 00:05:55,330 --> 00:05:57,840 Përvoja e tërë është vetë aktiviteti, 95 00:05:57,840 --> 00:06:00,790 kështu që ju mund të mendoni për atë si një ekran ose pamje, 96 00:06:00,790 --> 00:06:04,540 por kjo është në fakt kodi burim anën e saj. 97 00:06:04,540 --> 00:06:12,680 Ne ende e quajmë pjesë aktuale interface e saj një pamje. 98 00:06:12,680 --> 00:06:17,230 Kjo është lloj i si se si në pset 7 patëm kontrollues dhe pastaj pikëpamje. 99 00:06:17,230 --> 00:06:20,690 Aktiviteti është më shumë ose më pak kontrollues, 100 00:06:20,690 --> 00:06:23,360 dhe pikëpamje është ajo që ne jemi duke bërë në drejtim të XML 101 00:06:23,360 --> 00:06:25,260 që është e lidhur me atë aktivitet. 102 00:06:25,260 --> 00:06:29,340 Fragmente janë diçka që është implementuar në Cream Ice sandviçësh shkuar përpara. 103 00:06:29,340 --> 00:06:36,380 Kjo është vetëm një ide të marrë pjesët e mendimit ose aktiviteti 104 00:06:36,380 --> 00:06:39,990 dhe të ndarë ato në zona të veçanta në mënyrë që ne mund të 105 00:06:39,990 --> 00:06:45,030 të bëjë kodi ynë më i përdorshëm për këto pajisje të ndryshme 106 00:06:45,030 --> 00:06:51,890 që ne kemi për të mbështetur, dhe kjo është vetëm një mënyrë e duke u përpjekur për të 107 00:06:51,890 --> 00:06:54,290 gjithashtu Faktorin nga kodi më shumë. 108 00:06:54,290 --> 00:07:01,090 Shërbimet janë gjëra si sfond duke luajtur muzikë ose drejtime potencialisht të navigimit. 109 00:07:01,090 --> 00:07:05,640 Ofruesit e përmbajtjes, këto janë APIs brenda sistemit operativ 110 00:07:05,640 --> 00:07:09,070 që ju lejon të hyni të dhënave të përbashkëta të tilla si informacionin e kontaktit, 111 00:07:09,070 --> 00:07:12,790 dhe pastaj një qëllimi është diçka që ne do të përdorim kur duam të nisë 112 00:07:12,790 --> 00:07:17,210 një aktivitet i ri nga aktivitet tona aktuale. 113 00:07:17,210 --> 00:07:20,980 >> Përshëndetje Android, kjo do të jetë një projekt që ne do të flasim rreth. 114 00:07:20,980 --> 00:07:25,410 Unë do të të vërtetë të bëjë atë për ju, dhe pastaj ne do të bëjmë një gjë ku ne të klikoni një buton 115 00:07:25,410 --> 00:07:27,650 me një tekst dhe të fillojë një aktivitet të ri. 116 00:07:27,650 --> 00:07:30,110 Shumë thjeshtë, por unë dua të shkoj nëpër 117 00:07:30,110 --> 00:07:34,480 çfarë do të shkojë në një projekt si ky. 118 00:07:34,480 --> 00:07:39,260 Kur ju bëni projektin e ri ju do të shihni brenda Eclipse 119 00:07:39,260 --> 00:07:41,900 ka ky projekt i quajtur Përshëndetje Android. 120 00:07:41,900 --> 00:07:43,470 Pastaj ka një bandë e tërë e dosjeve këtu. 121 00:07:43,470 --> 00:07:46,760 Ato ju jeni të shqetësuar me të vërtetë janë dosje burim, 122 00:07:46,760 --> 00:07:54,540 dosje burim, res, dhe në një farë mase dosje libs për bibliotekat. 123 00:07:54,540 --> 00:08:00,070 Dhe vetëm kështu ne jemi në të njëjtën faqe me atë 124 00:08:00,070 --> 00:08:03,240 në qoftë se keni qenë për të krijuar një projekt të ri, 125 00:08:03,240 --> 00:08:08,270 ju mund ta bëni këtë të drejtë këtu, kështu që në qoftë se unë dua ta quaj atë HelloAndroid, 126 00:08:08,270 --> 00:08:11,100 dhe pastaj ajo automatikisht bën një bandë e tërë e informacionit për ne. 127 00:08:11,100 --> 00:08:14,110 Emri paketë është menduar të jetë një identifikues unik 128 00:08:14,110 --> 00:08:16,710 që normalisht do të jetë e lidhur me faqen e internetit, nëse keni pasur një të tillë. 129 00:08:16,710 --> 00:08:24,430 >> Për shembull, unë do ta thërrasë këtë net.cs50.helloandroid. 130 00:08:24,430 --> 00:08:30,070 Dhe unë tashmë e kanë bërë këtë projekt një herë. 131 00:08:30,070 --> 00:08:40,059 Mirë, më vjen keq. Le të thërrasë atë HelloCS50. 132 00:08:40,059 --> 00:08:42,929 Dhe atëherë ajo do të kërkojë gjëra të tilla si çfarë lloj të ikonës duam për të bërë. 133 00:08:42,929 --> 00:08:48,840 Kjo është e gjitha për shkak të ndërfaqes Android Developer Tools, 134 00:08:48,840 --> 00:08:53,350 plugin që ne të shtuar në Eclipse, kështu që ne mund të zgjidhni gjëra të tilla si 135 00:08:53,350 --> 00:08:58,320 ajo ikona ne duam, dhe se do të shkojë në atë thellësi, nëse ne duam. 136 00:08:58,320 --> 00:09:04,360 Por në fund, vetëm të bëjë projektin, 137 00:09:04,360 --> 00:09:07,040 dhe çdo gjë tregon deri të drejtë këtu. 138 00:09:07,040 --> 00:09:10,030 Siç kam treguar në ekran tjetër, 139 00:09:10,030 --> 00:09:14,070 ne kemi dosje burim, dhe unë do të flas në lidhje me atë që të gjithë kjo do të thotë së shpejti, 140 00:09:14,070 --> 00:09:19,090 por ju mund të shihni se menjëherë ajo na merr në ekran HelloCS50. 141 00:09:19,090 --> 00:09:24,690 Ka disa butona mbi këtu për të shtuar tekstin dhe teksti Layouts në terren. 142 00:09:24,690 --> 00:09:28,910 Është lloj si XCode, por për fat të keq jo aq i efektshëm. 143 00:09:28,910 --> 00:09:37,790 Por clips do të jetë mik i juaj dhe ADT në veçanti për të bërë këtë. 144 00:09:37,790 --> 00:09:40,920 >> Mirë, dosje burim është vendi ku 145 00:09:40,920 --> 00:09:43,820 Java dosjet janë mbajtur, dhe kjo është në të vërtetë fillimin e programit tuaj. 146 00:09:43,820 --> 00:09:45,990 Kjo është në thelb si kontrolluesit. 147 00:09:45,990 --> 00:09:49,020 Dosje burimeve ose res është ajo ku ne do të vazhdojmë Layouts ekran, 148 00:09:49,020 --> 00:09:54,110 imazhe, tinguj, tekst, animacion dhe çdo gjë tjetër, libs, natyrisht, bibliotekat. 149 00:09:54,110 --> 00:10:01,700 Dhe Manifest, kjo është mënyra se sistemi Android di 150 00:10:01,700 --> 00:10:03,130 si për të bashkëvepruar me app tuaj. 151 00:10:03,130 --> 00:10:07,980 Ajo tregon atë në lidhje me lejet dhe çfarë aktivitete të vërtetë do të kandidojë. 152 00:10:07,980 --> 00:10:12,350 Kjo është e gjitha informacion thelbësor që është e nevojshme për të drejtuar app tuaj. 153 00:10:12,350 --> 00:10:17,990 Kjo dosje është burimi-në qoftë se ne të zgjeruar atë si ju mund të shihni të drejtë këtu. 154 00:10:17,990 --> 00:10:23,920 Dhe një shembull që do të shikojmë një kod-ky është kodi default. 155 00:10:23,920 --> 00:10:27,930 Si ne e quajti atë, MainActivity. 156 00:10:27,930 --> 00:10:33,230 By default, ne kemi marrë onCreate, i cili është një funksion që është thirrur kur ky aktivitet ngarkesa, 157 00:10:33,230 --> 00:10:37,150 kështu që ju doni të telefononi onCreate (savedInstanceState). 158 00:10:37,150 --> 00:10:40,440 Kjo do të rivendosë çdo pjesë të informacionit 159 00:10:40,440 --> 00:10:44,910 në rast se app ishte ndaluar. 160 00:10:44,910 --> 00:10:48,790 >> Nuk është një e tërë jeta aktivitet cikli tabelë të cilat ju mund të shikoni në 161 00:10:48,790 --> 00:10:50,380 kur ju merrni një pak më në thellësi në të, 162 00:10:50,380 --> 00:10:56,210 por vija më e rëndësishme e kodit ekziston ky funksion setContentView 163 00:10:56,210 --> 00:11:00,290 e cila do të ngarkesës skedarin burimor për layout. 164 00:11:00,290 --> 00:11:03,590 Atëherë çfarë onCreate këtu në thelb është bërë është ajo e thënë 165 00:11:03,590 --> 00:11:07,010 kur kam krijuar këtë aktivitet që unë dua të ngarkesës këtë layout. 166 00:11:07,010 --> 00:11:12,030 Dhe ne do të flasim rreth asaj se layout është në një të dytë. 167 00:11:12,030 --> 00:11:16,230 Në qoftë se ne ishim të nisur që këtu ajo duket tamam si kjo, 168 00:11:16,230 --> 00:11:22,880 dhe nga default Eclipse, sepse ne kemi bërë këtë dhe ADT bërë atë për ne 169 00:11:22,880 --> 00:11:28,210 kjo është e gjitha kod Boilerplate që është krijuar për ne, 170 00:11:28,210 --> 00:11:34,630 dhe ne mund të lëvizë dhe të ndryshojë gjërat siç na pëlqen. 171 00:11:34,630 --> 00:11:38,190 Dosje burim, si thashë, ky është vendi ku ne të mbajë të gjitha Layouts, 172 00:11:38,190 --> 00:11:41,150 drawables në drejtim të ndonjë lloj të imazheve- 173 00:11:41,150 --> 00:11:46,360 ata janë quajtur drawables-dhe pastaj fotografi të shëndoshë, menutë. 174 00:11:46,360 --> 00:11:51,170 Kjo është një mënyrë e një bandë e tërë e XML në një mënyrë të bukur renditura. 175 00:11:51,170 --> 00:11:58,030 Siç mund ta shikoni, ka shumë. Hdpi, ldpi, mdpi dhe dosjet xhdpi për drawables. 176 00:11:58,030 --> 00:12:02,220 Këto janë të ndryshme densiteti pixel ekran, kështu densitet të lartë për inç, 177 00:12:02,220 --> 00:12:05,710 densitet të ulët, dendësi të mesme, dendësi të lartë ekstra. 178 00:12:05,710 --> 00:12:08,900 >> Kjo është, përsëri, kështu që ne mund të mbështesë të gjitha këto pajisje të ndryshme, 179 00:12:08,900 --> 00:12:15,100 dhe ideale, ju do të keni imazhe të ndryshme për çdo rezolutë të ndryshme. 180 00:12:15,100 --> 00:12:20,740 Layouts janë ku ne të përfshijë të gjitha Layouts të ndryshme që do të përdoren në aktivitete të ndryshme. 181 00:12:20,740 --> 00:12:24,150 Ata gjithashtu mund të përfshijë Layouts për fragmente, 182 00:12:24,150 --> 00:12:26,670 që do të thotë aktiviteteve të pjesshme në thelb. 183 00:12:26,670 --> 00:12:29,610 Nëse ju doni të bëni diçka të ftohtë si kur ju rrotullohen në telefon 184 00:12:29,610 --> 00:12:33,900 ju dëshironi që ajo të ketë një plan urbanistik të ndryshme ju mund të bëni faqosje peizazhin-si një dosje të ndryshme, 185 00:12:33,900 --> 00:12:39,000 Android dhe automatikisht ka një bandë e tërë e këtyre rregullave brenda dosje burimeve, 186 00:12:39,000 --> 00:12:44,690 kështu që do të dini të shikoni në dosje të ndryshme bazuar në setup aktuale e telefonit, 187 00:12:44,690 --> 00:12:46,740 çfarë lloj të pajisjeve që ju jeni duke përdorur. 188 00:12:46,740 --> 00:12:52,350 Në mënyrë të ngjashme, kjo vlera-v11 këtu dhe vlera-v14 189 00:12:52,350 --> 00:12:55,460 dhe vlerat e prezgjedhura kjo dosje është për- 190 00:12:55,460 --> 00:13:01,730 mirë, vlerat në vetvete, kjo do të jetë Vlerat e nënkuptuara nëpër të gjitha versionet e sistemit operativ. 191 00:13:01,730 --> 00:13:06,390 Nga ana tjetër, v11 v14 dhe korrespondojnë me huall mjalti 192 00:13:06,390 --> 00:13:08,780 dhe Ice Cream Sandwich, respektivisht. 193 00:13:08,780 --> 00:13:12,800 Përsëri, këto janë mënyra se-brenda këtyre dosjeve janë vargjet e ndryshme 194 00:13:12,800 --> 00:13:17,550 dhe stilet, kështu që ju mund të rregulloje pamjen e app tuaj 195 00:13:17,550 --> 00:13:22,660 ose potencialisht edhe funksionalitetin e saj, edhe pse kjo ndoshta do të jetë një ide e keqe, 196 00:13:22,660 --> 00:13:25,890 bazuar në versionin e sistemit operativ. 197 00:13:25,890 --> 00:13:28,760 >> Dhe kam biseduar në lidhje me gjithë këtë këtu. 198 00:13:28,760 --> 00:13:35,870 Përsëri, drawable, të papërpunuara,, faqosje vlerat. 199 00:13:35,870 --> 00:13:41,380 Defaults, nëse ne do të shkojmë në Android ose Përshëndetje Përshëndetje CS50 Right Now 200 00:13:41,380 --> 00:13:43,310 ajo do të duket vetëm si kjo. 201 00:13:43,310 --> 00:13:45,800 Ajo do të thonë hello botë. 202 00:13:45,800 --> 00:13:58,430 Si ju mund të shihni të drejtë këtu me tekst Android 203 00:13:58,430 --> 00:14:04,420 teksti tekst për këtë pikëpamje, e cila është në thelb vetëm një etiketë, 204 00:14:04,420 --> 00:14:06,900 është ajo që ne do të thërrasë atë në IOS. 205 00:14:06,900 --> 00:14:11,580 Ajo ka këtë simbol qesharak @ string / hello_world. 206 00:14:11,580 --> 00:14:16,200 Kjo është kështu që ne mund-ne përpjekje për nxjerrjen e të gjitha vargjet, 207 00:14:16,200 --> 00:14:19,740 të gjithë e hard-coded strings në Android në një dosje të veçantë, 208 00:14:19,740 --> 00:14:23,610 cila ndodh të jetë në values.strings. 209 00:14:23,610 --> 00:14:29,300 Nëse ne shikojmë këtu, ne mund të shohim se kemi një varg të vështirë-koduar ruajtur këtu 210 00:14:29,300 --> 00:14:33,910 për botë Hello, dhe është quajtur bota hello, dhe kjo është lloj i një 211 00:14:33,910 --> 00:14:39,230 Vendimi i zakonshëm dizajn nëpër shumë platforma që ju doni të- 212 00:14:39,230 --> 00:14:41,780 vargjet janë lloj i gjërave që ne duam të jetë potencialisht në gjendje të ndryshojë. 213 00:14:41,780 --> 00:14:48,050 Ne nuk duam të kontrollojmë F në dosjen kod burim tonë në XML tonë. 214 00:14:48,050 --> 00:14:50,760 Ne duam që të jenë në gjendje për të ndryshuar këtë sa herë që ne të merrni shans. 215 00:14:50,760 --> 00:14:53,640 >> Ky skedar XML, strings.xml, është një mënyrë e nxjerrjes 216 00:14:53,640 --> 00:14:56,710 hard-coded vargjet që do të jetë ndryshe në burimet tona faqosje 217 00:14:56,710 --> 00:15:03,530 ose në kodin tonë burimor. 218 00:15:03,530 --> 00:15:08,190 Manifestin është ajo ku ne mbajmë këtë informacion thelbësor në lidhje me aplikimin. 219 00:15:08,190 --> 00:15:11,050 Ai përfshin emrin e paketës. Kjo duhet të jetë një identifikues unik. 220 00:15:11,050 --> 00:15:16,020 Ndryshe nga App Store për iOS emrat e aplikimeve 221 00:15:16,020 --> 00:15:19,980 nuk duhet të jetë unike, dhe ju në fakt mund të ndryshojë emrin e aplikimit tuaj 222 00:15:19,980 --> 00:15:23,570 pasi të keni të paraqesë atë, kështu që në qoftë se unë të fillojë me Birds Angry, 223 00:15:23,570 --> 00:15:26,840 dhe pastaj unë të bëjë një update, dhe unë nuk dua për lirimin e një version të ri 224 00:15:26,840 --> 00:15:34,230 I guess I mund të telefononi atë Angry Birds 2, ndërsa unë jam në ciklin e lirimit të njëjtë. 225 00:15:34,230 --> 00:15:36,780 Kjo vetëm do të shfaqen si një update. 226 00:15:36,780 --> 00:15:39,790 E vetmja gjë që duhet të jetë unike është ky emri i paketës, 227 00:15:39,790 --> 00:15:41,280 cilat shumë njerëz nuk do të shohin. 228 00:15:41,280 --> 00:15:44,680 E pra, ju do të shihni vetëm në qoftë se keni qenë në kërkim në kodin burimor ose në qoftë se ka disa lloj të gabimit. 229 00:15:44,680 --> 00:15:47,580 Komponentët përfshijnë aktivitete, kështu që ne duhet të deklarojë 230 00:15:47,580 --> 00:15:49,070 çdo lloj aktiviteti ne përdorim. 231 00:15:49,070 --> 00:15:53,430 Kjo është një lloj leje e tillë. 232 00:15:53,460 --> 00:15:58,150 >> Android sepse nuk e kanë këtë proces rigoroz të aplikimit 233 00:15:58,150 --> 00:16:02,210 për dorëzimin e Apps në vend të kësaj ata vetëm bëjnë gjithçka bazuar jashtë e lejeve 234 00:16:02,210 --> 00:16:04,300 dhe duke deklaruar gjërat në manifest. 235 00:16:04,300 --> 00:16:06,380 Versioni SDK është gjithashtu i rëndësishëm. 236 00:16:06,380 --> 00:16:10,330 Ne mund të vendosni të përdorni si version diçka minimale SDK. 237 00:16:10,330 --> 00:16:16,010 Natyrisht, ju dëshironi për të krijuar kodin 238 00:16:16,010 --> 00:16:18,570 dhe të projektimit për sistemet operative më të reja. 239 00:16:18,570 --> 00:16:20,840 Ndoshta jo më i ri, ndoshta jo Jelly Bean. 240 00:16:20,840 --> 00:16:23,610 Ndoshta ju doni për të hartuar kryesisht për Ice Cream Sandwich, 241 00:16:23,610 --> 00:16:27,120 edhe pse ata janë shumë e shumë të njëjtë në aspektin e vendimeve të projektimit 242 00:16:27,120 --> 00:16:30,550 dhe bibliotekat aktuale dhe APIs. 243 00:16:30,550 --> 00:16:36,250 Por në vend se të ketë njerëz 244 00:16:36,250 --> 00:16:40,050 i origjinal Android version-si Donut mënyrë mbrapa kur- 245 00:16:40,050 --> 00:16:43,420 të cilët ende ndodh të jetë duke përdorur që përpiqen për të shkarkuar aplikacionin tuaj dhe pastaj thonë 246 00:16:43,420 --> 00:16:46,160 ajo nuk punon në telefonin tim ju mund të vendosni versionin minimal 247 00:16:46,160 --> 00:16:48,620 dhe e kanë atë të jetë Gingerbread apo Ice Cream Sandwich 248 00:16:48,620 --> 00:16:53,300 ose çdo gjë që ju mendoni Dorëzimi rehatshme. 249 00:16:53,300 --> 00:16:57,170 Dhe ky është një shembull i qartë. Ne mund të shohim në një aktuale në një grimë. 250 00:16:57,170 --> 00:17:00,900 >> Mirë, ne vetëm do të shkojë përpara me demo tani. 251 00:17:00,900 --> 00:17:08,900 Kjo është demo në qoftë se ju të ndërtuar Google Android app tuaj të parë ose diçka të tillë. 252 00:17:08,900 --> 00:17:12,089 Ne do të shkojnë nëpër çdo gjë që po ndodh në atje, 253 00:17:12,089 --> 00:17:17,690 dhe të vjen keq, vetëm për një referencë të cilët këtu e di Java në ndonjë masë? 254 00:17:17,690 --> 00:17:28,310 Mirë, kështu që Java është gjuhë e re coding për shumicën e njerëzve që vijnë nga CS50. 255 00:17:28,310 --> 00:17:31,850 Shkurtimisht, për të shkuar përsëri atë që ajo thotë këtu, 256 00:17:31,850 --> 00:17:35,580 ajo që ne duam të bëjmë është më tepër se sa përshtateni këtë kërkesë Hello World 257 00:17:35,580 --> 00:17:38,620 se e gjithë kjo nuk është ajo nis dhe ajo thotë se bota përshëndetje 258 00:17:38,620 --> 00:17:43,580 dhe ai thotë përshëndetje CS50 në krye, sepse kjo është emri aktiviteti 259 00:17:43,580 --> 00:17:47,190 ne jemi duke shkuar në përpjekje për të bërë një fushë të tekstit dhe një buton 260 00:17:47,190 --> 00:17:50,680 kështu që kur ne të shtypni këtë buton ajo do të marrë tekstin 261 00:17:50,680 --> 00:17:53,660 nga fushën e tekstit dhe të fillojë një aktivitet të ri, dhe kjo do të thotë 262 00:17:53,660 --> 00:17:58,380 çfarëdo që teksti thënë në aktivitet, dhe kjo është relativisht e thjeshtë. 263 00:17:58,380 --> 00:18:00,650 Kjo nuk është shumë interesante. Ju nuk do të duan për lirimin e ndonjë app si kjo. 264 00:18:00,650 --> 00:18:03,880 Por kjo tregon disa gjëra të rëndësishme të projektimit. 265 00:18:03,880 --> 00:18:07,030 >> Ne do të duhet për të bashkëvepruar me manifestin, me fotografi layout, 266 00:18:07,030 --> 00:18:12,440 me kod burim, dhe ju mund të shihni se si për të nisur një aktivitet nga një tjetër. 267 00:18:19,740 --> 00:18:23,060 Ne do të fillojë me paraqitjen për aktivitetin tonë të parë, 268 00:18:23,060 --> 00:18:27,320 Unë e di që kjo është lloj i vogël, 269 00:18:27,320 --> 00:18:32,660 por si ju mund të shihni të drejtë tani, të gjitha ajo është është ajo ka logon tonë që kemi krijuar, 270 00:18:32,660 --> 00:18:36,310 emri i aktivitetit, dhe ai thotë botë Hello në qendër. 271 00:18:36,310 --> 00:18:40,400 Në vend të kësaj, unë jam i pari duke shkuar për të bërë këtë në një plan urbanistik lineare, 272 00:18:40,400 --> 00:18:42,350 një plan urbanistik të afërm, dhe këto janë të gjitha gjërat 273 00:18:42,350 --> 00:18:45,870 ju mund të shikoni lart dhe janë me vlerë do mbi në disa pika në drejtim të Layouts. 274 00:18:45,870 --> 00:18:47,310 Kjo është një shumë si HTML. 275 00:18:47,310 --> 00:18:52,640 Ne tha se kjo nuk është e vërtetë vlen të ditur në aspektin e kuptimin programor, 276 00:18:52,640 --> 00:18:55,840 por ka Layouts kaq shumë të ndryshme që ju mund të kontrollit, 277 00:18:55,840 --> 00:18:57,970 dhe kjo është vetëm si CSS në aspektin e stileve. 278 00:18:57,970 --> 00:19:01,590 >> Ka shumë ndodh vetëm në aspektin e estetikë këtu, 279 00:19:01,590 --> 00:19:08,930 Dhe vërtet, kjo është me vlerë të mësuarit, por kjo është lloj i gjë që ju duhet të shikoni lart 280 00:19:08,930 --> 00:19:11,810 si ju shkoni dhe ju ndjeheni si ju keni nevojë për diçka të re. 281 00:19:11,810 --> 00:19:17,030 Unë mund të përfitojnë nga disa prej mjeteve ADT këtu të paktën për të nisem me. 282 00:19:17,030 --> 00:19:21,930 Unë do të bëjë një fushë të tekstit, dhe unë do të bëjë një buton. 283 00:19:21,930 --> 00:19:24,100 Vendos ata të drejtë tjetër për njëri-tjetrin. 284 00:19:24,100 --> 00:19:28,200 Ata tashmë resize përshtatshme. 285 00:19:28,200 --> 00:19:31,320 Na vjen keq, përsëri, vijnë me diferencën midis shtrirjes lineare dhe layout relative, 286 00:19:31,320 --> 00:19:34,830 një plan urbanistik linear jep funksionalitetin e një pak më shumë 287 00:19:34,830 --> 00:19:38,720 në aspektin e plotësimit hapësirë ​​dhe duke u siguruar 288 00:19:38,720 --> 00:19:42,790 ne pozicion gjëra horizontalisht apo vertikalisht. 289 00:19:42,790 --> 00:19:46,130 Dallimi i madh mes një plan urbanistik lineare dhe një faqosje të afërm 290 00:19:46,130 --> 00:19:50,250 është relative pozicionet faqosje gjithçka në lidhje me pikëpamjet e tjera, 291 00:19:50,250 --> 00:19:52,630 dhe gjëja më e mirë për këtë është se ajo merr më pak kohë për të nxjerrë 292 00:19:52,630 --> 00:19:56,120 shkak të sistemit operativ duket në të gjithë kodin dhe thotë se kjo shkon 293 00:19:56,120 --> 00:19:58,270 relative për këtë këtu, këtu. 294 00:19:58,270 --> 00:20:03,170 Kjo do të thotë ajo bën matje më pak se një bandë e tërë e Layouts mbivendosur lineare, 295 00:20:03,170 --> 00:20:06,840 të cilat unë do të duhet të bëni nëse kam kërkuar gjërat të shkojnë vertikalisht këtu. 296 00:20:06,840 --> 00:20:10,510 >> Unë tashmë kam disa gjëra shkojnë horizontalisht, kështu që unë do të duhet një plan urbanistik të ndryshme lineare 297 00:20:10,510 --> 00:20:14,560 në folenë e tyre së vertikalisht, por në qoftë se unë ishin duke bërë një plan urbanistik të afërm unë mund të them 298 00:20:14,560 --> 00:20:18,140 mbani këtë në të majtë, kjo në të djathtë dhe këto gjëra poshtë. 299 00:20:18,140 --> 00:20:21,850 Por për shkak se unë dua që ata të mbushin tani unë jam duke shkuar për të përdorur një plan urbanistik lineare, 300 00:20:21,850 --> 00:20:24,510 dhe ju mund të shihni se tashmë e bën një shumë prej këtyre gjërave për ne. 301 00:20:24,510 --> 00:20:28,890 Gjitha vështrimet duhet të keni një pronë e gjerësi dhe lartësi, 302 00:20:28,890 --> 00:20:33,410 dhe kjo ndodh që të ketë një peshë prej 1, dhe kjo ka një peshë prej 1 303 00:20:33,410 --> 00:20:36,050 në mënyrë që ajo mbush tërë hapësirën. 304 00:20:36,050 --> 00:20:38,460 Por gjerësia dhe lartësia e tij janë më të rëndësishme. 305 00:20:38,460 --> 00:20:45,880 Kjo fushë ID drejtë këtu nuk është e rëndësishme brenda layout aktuale 306 00:20:45,880 --> 00:20:49,060 nëse ne jemi duke përdorur një plan urbanistik të afërm dhe duke thënë se ne mund referencë 307 00:20:49,060 --> 00:20:52,990 një pozicion pikëpamje në lidhje me një tjetër. 308 00:20:52,990 --> 00:20:56,170 Nëse do të kishim një plan urbanistik të afërm mund të themi se ky pozicion poshtë këtë një 309 00:20:56,170 --> 00:20:59,390 ose mbi këtë ID, ID, por kjo do të jetë e rëndësishme 310 00:20:59,390 --> 00:21:01,660 kur ne jemi duke e përdorur atë në kodin tonë, sepse ne mund referencë 311 00:21:01,660 --> 00:21:05,610 këto pikëpamje individuale në këtë mënyrë. 312 00:21:05,610 --> 00:21:10,350 >> Dhe pastaj ju mund të shihni requestFocus tag, e cila është diçka që ju ndoshta e pa në pset 7. 313 00:21:10,350 --> 00:21:15,370 Nuk ishte një auto fokus tag ose diçka në këto linja për njërën nga fushat. 314 00:21:15,370 --> 00:21:22,100 Dhe një gjë, natyrisht, ne mund të bëjmë ashtu si në HTML, 315 00:21:22,100 --> 00:21:25,660 dhe njoftimi një nga gjërat e bukur rreth ADT është se ajo autocompletes këtu. 316 00:21:25,660 --> 00:21:29,930 Ndoshta jo si bukur si ajo e bëri në XCode, por ajo e bën megjithatë, 317 00:21:29,930 --> 00:21:32,860 dhe ne mund të themi aluzion dhe pastaj t'i jepte një lloj i vargut 318 00:21:32,860 --> 00:21:37,070 doja shkruani një mesazh, 319 00:21:37,070 --> 00:21:41,300 dhe në qoftë se unë jepte një moment, edhe të vëreni se unë të marrë një gabim të vogël këtu 320 00:21:41,300 --> 00:21:44,610 duke thënë se ne duhet të përdorni një burim string për këtë, 321 00:21:44,610 --> 00:21:48,820 kështu që në qoftë se unë le të bëjë disa punë e vështirë për mua 322 00:21:48,820 --> 00:21:57,320 Unë mund të zgjidhni këtë varg, të bëjë refractor Android dhe ekstrakt string Android. 323 00:21:57,320 --> 00:22:00,570 Unë mund të jepte atë emër, shkruani një mesazh, 324 00:22:00,570 --> 00:22:04,180 dhe atë që ka tani është ai zëvendësoi atë varg hard-coded 325 00:22:04,180 --> 00:22:07,980 me një referencë të vargut in. dosjen vargun e xml, 326 00:22:07,980 --> 00:22:10,200 që do të thotë tani kjo është këtu. 327 00:22:10,200 --> 00:22:15,560 >> Dhe unë e di se duket pak e punë të parëndësishme dhe si shtesë në këtë pikë, 328 00:22:15,560 --> 00:22:17,840 por kur ju keni një bandë e tërë e gjërave, një bandë e tërë e vargjeve, 329 00:22:17,840 --> 00:22:20,750 kjo është me të vërtetë e rëndësishme, dhe veçanërisht për lokalizimin 330 00:22:20,750 --> 00:22:26,920 sepse siç e përmenda më parë, Android është një sistem shumë i përdorur globalisht operativ 331 00:22:26,920 --> 00:22:35,950 që ju thjesht mund të bëni vlera-en apo vlera-sp 332 00:22:35,950 --> 00:22:44,320 ose diçka për gjuhët anglisht ose spanjisht ose të tjera. 333 00:22:44,320 --> 00:22:50,210 Dhe pastaj ju ndoshta nuk e kanë pasur këtë përvojë ende 334 00:22:50,210 --> 00:22:53,030 pasi ne nuk e ka bërë JavaScript shumë në drejtim të programimit web, 335 00:22:53,030 --> 00:22:56,850 por ne gjithashtu mund të bëjë këtë fushë që quhet onClick për butonin, 336 00:22:56,850 --> 00:23:02,350 dhe kjo është një mënyrë për referenca brenda shtrirjes sonë 337 00:23:02,350 --> 00:23:06,570 se ne duam një funksion të caktuar për t'u quajtur në kodin tonë burimor. 338 00:23:06,570 --> 00:23:09,420 Unë jam duke shkuar për të thirrur këtë sendMessage, 339 00:23:09,420 --> 00:23:13,390 dhe në mënyrë që të bëjë këtë punë që do të thotë në aktivitetin kryesor këtu 340 00:23:13,390 --> 00:23:19,180 Unë do të duhet për të krijuar një funksion që është publik 341 00:23:19,180 --> 00:23:22,250 kështu që ajo mund të arrihen nga layout. 342 00:23:22,250 --> 00:23:25,930 Është i pavlefshëm për shkak se ju thjesht nuk duan që ajo të kthehet çdo gjë. 343 00:23:25,930 --> 00:23:37,760 Ne do të thërrasë atë sendMessage, dhe kjo merr një pamje, 344 00:23:37,760 --> 00:23:43,690 cila eshte nje lloj i kuadër se ne mund ankoruar këtë metodë 345 00:23:43,690 --> 00:23:47,160 në atë pikëpamje individuale kur ne xhironi atë. 346 00:23:47,160 --> 00:23:50,090 >> Dhe unë nuk e di nëse keni vënë re-mirë, ju nuk do të keni vënë re, 347 00:23:50,090 --> 00:24:02,370 por në këtë pikë të drejtë këtu 348 00:24:02,370 --> 00:24:06,930 kjo pikëpamje është një tip që ende nuk është përfshirë, 349 00:24:06,930 --> 00:24:10,630 dhe natyrisht, ju të gjithë e dimë nga CS50 për të mos përfshirë lloje. 350 00:24:10,630 --> 00:24:13,120 Gjë e bukur për Eclipse IDE si është se 351 00:24:13,120 --> 00:24:17,520 në qoftë se ju harroni që të përfshijë një lloj ajo do të theksojë me një të kuqe pak squiggly 352 00:24:17,520 --> 00:24:19,680 dhe pastaj ju japin mundësi për të importuar pamje. 353 00:24:19,680 --> 00:24:23,130 Një mënyrë e shpejtë për të bërë është që kontrolli ndryshim O, dhe ajo do të importojë 354 00:24:23,130 --> 00:24:27,070 të gjitha dosjet që ajo ka nevojë për të. 355 00:24:27,070 --> 00:24:33,670 Tani që ne kemi këtë sendMessage funksion, 356 00:24:33,670 --> 00:24:46,560 e cila do të dërgojë mesazh nga MainActivity në një aktivitet të ri, 357 00:24:46,560 --> 00:24:55,230 ne jemi duke shkuar për të duhet të përdorni një qëllim për të nisur këtë aktivitet të ri nga një, 358 00:24:55,230 --> 00:25:02,240 kështu që ne ndoshta do të duan të krijojnë një konstante globale apo edhe një konstante sidomos publik 359 00:25:02,240 --> 00:25:06,240 që do të na ndihmojnë të dimë se si ne jemi duke shkuar për referencë string 360 00:25:06,240 --> 00:25:09,090 sepse kur ne krijojmë një qëllim ne nuk jemi vetëm duke e quajtur një aktivitet të ri, 361 00:25:09,090 --> 00:25:11,520 por ne gjithashtu mund të jepte një pako e informacionit. 362 00:25:11,520 --> 00:25:14,720 Një pako është në të vërtetë termi që përdor Android, 363 00:25:14,720 --> 00:25:21,470 dhe kjo është një mënyrë për të thënë jepte të dhëna shtesë, të cilat ajo nuk mund të jetë i një lloji shumë të sofistikuar të të dhënave, 364 00:25:21,470 --> 00:25:24,510 por ne mund të patjetër të përfshijnë booleans ose strings ose ints. 365 00:25:24,510 --> 00:25:29,750 Kjo gjë e tillë. 366 00:25:29,750 --> 00:25:34,230 >> Ndjehen të lirë për të pyetur në lidhje me ndonjë prej këtyre eleminatoreve këtu, 367 00:25:34,230 --> 00:25:36,900 publik, i formës së prerë, statike. 368 00:25:36,900 --> 00:25:38,610 Publik është e rëndësishme. 369 00:25:38,610 --> 00:25:47,090 Kjo do të thotë që ne mund të hyni në këtë variabël nga dosjet e tjera kodin burim 370 00:25:47,090 --> 00:25:49,590 të tilla si kur ne krijojmë një aktivitet të ri. 371 00:25:49,590 --> 00:25:52,190 Ne mund referencë string brenda kësaj dosje. 372 00:25:52,190 --> 00:25:57,160 Nëse kjo është private, kjo do të thotë se është e kufizuar tek kjo skedë individual këtu. 373 00:25:57,160 --> 00:26:02,430 Por ne do të quajmë këtë si diçka të mesazhit ekstra. 374 00:26:16,260 --> 00:26:23,300 Tani ne kemi bërë këtë funksion, dhe në qoftë se ne të klikoni butonin, ky funksion do të quhet. 375 00:26:23,300 --> 00:26:27,970 Por ne nuk kemi bërë asgjë, natyrisht, me funksionin. 376 00:26:27,970 --> 00:26:33,130 Ajo që ne duam të bëjmë tani është të krijojë një aktivitet të ri, 377 00:26:33,130 --> 00:26:35,350 aktivitet që në fakt do të jetë nisur. 378 00:26:35,350 --> 00:26:44,330 Në Eclipse ne mund të themi të re aktivitet, Android, aktivitet bosh. 379 00:26:44,330 --> 00:26:46,530 Ne mund t'i jepte një emër. 380 00:26:46,530 --> 00:26:57,050 Le të thërrasë atë aktiviteti ynë rezultat. 381 00:26:57,050 --> 00:27:04,430 Dhe pastaj kjo fushë hierarkike prind është një mënyrë për të specifikuar 382 00:27:04,430 --> 00:27:08,180 se aktivitetet janë të lidhura me njëri-tjetrin. 383 00:27:08,180 --> 00:27:11,020 Sepse kjo do të jetë nisur nga aktivitet tjetër 384 00:27:11,020 --> 00:27:27,520 ne duhet të saktësojmë se ka aktivitet kryesor prind. 385 00:27:27,520 --> 00:27:31,220 >> Dhe unë mund të keni klikuar mbi fushën e ardhshme atje, e cila do të na kanë thënë 386 00:27:31,220 --> 00:27:33,830 disa fusha opsionale që ai ishte gjithashtu duke përfshirë, 387 00:27:33,830 --> 00:27:38,800 por gjëja më e bukur në lidhje me ADT, përsëri, është se në qoftë se unë lëviz poshtë këtu 388 00:27:38,800 --> 00:27:45,740 në manifestin e mbani mend se e gjithë kjo me të vërtetë është përfshirë nga default 389 00:27:45,740 --> 00:27:48,930 kur ne fillimisht krijoi projektin, 390 00:27:48,930 --> 00:27:53,090 dhe tani, sepse kemi përdorur këtë krijoni një aktivitet të ri në vend se vetëm 391 00:27:53,090 --> 00:27:58,610 duke shtuar se vetë dosjen tonë të klasës, sepse ne shkuam përmes GUI e tyre për të bërë këtë 392 00:27:58,610 --> 00:28:01,930 shtoi ajo tashmë e gjithë kjo të qarta për ne, 393 00:28:01,930 --> 00:28:06,020 që thjesht do të thotë se tani sistemi operativ nuk do të ankohen 394 00:28:06,020 --> 00:28:09,400 kur ne përpiqemi për të nisur këtë aktivitet. 395 00:28:09,400 --> 00:28:14,620 Dhe ai gjithashtu, natyrisht, i dha atij një etiketë, e cila gjithashtu tregon deri në vargjet. 396 00:28:14,620 --> 00:28:17,340 Ajo ka një shumë të gjëra në fund mbrapa për ne. 397 00:28:17,340 --> 00:28:20,140 Gjithsesi, tani që ne kemi këtë aktivitet të rezultojë si i mirë, 398 00:28:20,140 --> 00:28:23,810 aktuale kodin source file në dosje burim, 399 00:28:23,810 --> 00:28:33,540 dhe ju mund të shihni-të prek shkurtimisht mbi këtë- 400 00:28:33,540 --> 00:28:37,790 sepse ne tha ajo në lidhje me këtë prind hierarkik 401 00:28:37,790 --> 00:28:46,640 ajo i dha këtë fushë android.r.ide.home në këtë gjë onOption përzgjedhur. 402 00:28:46,640 --> 00:28:49,020 >> Çfarë kjo në thelb është thënë është se ka një buton menu tani 403 00:28:49,020 --> 00:28:53,110 se në këndin e sipërm të majtë të ekranit 404 00:28:53,110 --> 00:29:02,220 në qoftë se unë kthehem në PowerPoint, ku ne së pari të biseduar rreth veprimit bar 405 00:29:02,220 --> 00:29:05,380 për shkak të prindit hierarkik tani ka një shigjetë pak mbrapa këtu 406 00:29:05,380 --> 00:29:10,610 dhe kjo është e klikueshme kështu që ne duhet të jetë në gjendje të pas-ne fakt e drejtuar këtë app- 407 00:29:10,610 --> 00:29:15,360 shkoni mbrapa, dhe kjo është një mënyrë e kursimit të na pak e kodit atje. 408 00:29:26,220 --> 00:29:40,180 Tani brenda kësaj-mirë, ajo duket të jetë ankuar në lidhje me atë për një moment. 409 00:29:40,180 --> 00:29:43,910 Le të komentojnë se jashtë. 410 00:29:43,910 --> 00:29:48,260 Tani, në mënyrë që në fakt të bashkëvepruar me këta 2 aktivitete, 411 00:29:48,260 --> 00:29:55,020 ne kemi për të krijuar një qëllim i cili i përfshin të gjitha këto të dhëna. 412 00:29:55,020 --> 00:29:58,950 Në sendMessage tani unë jam duke shkuar për të lundrimit nëpër disa copa të kodit 413 00:29:58,950 --> 00:30:00,700 dhe të shpjegojë se si të shkoj. 414 00:30:00,700 --> 00:30:06,280 Një qëllim, siç thashë, është një mënyrë për të nisur një aktivitet nga një tjetër. 415 00:30:06,280 --> 00:30:10,000 Qëllimi është lloji. Ne jemi duke krijuar një myIntent ndryshueshme. 416 00:30:10,000 --> 00:30:13,980 >> Dhe kjo është në fakt një objekt, e cila është arsyeja pse ne kemi për të thirrur të ri. 417 00:30:13,980 --> 00:30:18,500 Është e zakonshme përdorimi Java atje, e cila mund të marrë një grimë të vogël e duke u përdorur për të. 418 00:30:18,500 --> 00:30:23,900 Kjo do të thotë ne jemi duke përdorur veprimtarinë ose MainActivity klasë, 419 00:30:23,900 --> 00:30:28,630 dhe qëllimi në këtë mënyrë merr veprimtarinë ajo që shkon nga 420 00:30:28,630 --> 00:30:36,060 dhe veprimtaria ajo do të, të cilën ne e quajmë ResultActivity, 421 00:30:36,060 --> 00:30:38,170 dhe që është klasë e vet. 422 00:30:38,170 --> 00:30:41,720 Përfshi se. 423 00:30:41,720 --> 00:30:47,370 Dhe pastaj siç e përmenda më parë, ne dha atë ID në fushën e tekstit edit 424 00:30:47,370 --> 00:30:53,710 dhe pamje teksti, kështu që në mënyrë që të programuar të kapur 425 00:30:53,710 --> 00:31:01,860 teksti që ekziston në editText 426 00:31:01,860 --> 00:31:06,710 ne e përdorim këtë funksion të quajtur findViewByID, 427 00:31:06,710 --> 00:31:13,660 e cila është e ngjashme me diçka që ju do të përdorni kur duke u përpjekur për të marrë arat nga DOM. 428 00:31:13,660 --> 00:31:17,560 Ndoshta David bisedimet për këtë në leksion. 429 00:31:17,560 --> 00:31:26,600 Por kjo është vetëm një mënyrë për të marrë ato-kjo është arsyeja pse ne tag këto gjëra me ato fusha. 430 00:31:26,600 --> 00:31:31,110 Id.editText1. 431 00:31:31,110 --> 00:31:35,220 Ajo është tashmë autocompleting për mua atje. 432 00:31:35,220 --> 00:31:42,010 >> Dhe pastaj ne do të përfshijë gjithashtu-editText këtë tani që ne kemi në fushë 433 00:31:42,010 --> 00:31:47,640 brenda programit tonë, gjithçka që ishte në thelb ka findViewByID 434 00:31:47,640 --> 00:31:50,870 ju mund të mendoni për atë si të na japë një referencë ndaj atij editText. 435 00:31:50,870 --> 00:31:54,570 Tani ne duam të marrë string ose mesazh 436 00:31:54,570 --> 00:32:00,670 brenda asaj editText të cilat ne mund të bëjmë duke përdorur- 437 00:32:00,670 --> 00:32:03,360 ju mund të mendoni editText si një struct- 438 00:32:03,360 --> 00:32:07,600 ne e quajmë atë një objekt në Java-me një bandë e tërë e metodave të ndryshme 439 00:32:07,600 --> 00:32:10,650 ose fusha dhe atributet bashkangjitur. 440 00:32:10,650 --> 00:32:15,510 Kur unë them editText. kjo më jep mundësinë për të hyrë në 441 00:32:15,510 --> 00:32:19,770 një metodë e tillë si getText, e cila do të marrë tekstin e tanishme 442 00:32:19,770 --> 00:32:23,990 në atë editText dhe pastaj të kthyer që në mënyrë eksplicite 443 00:32:23,990 --> 00:32:26,520 për një varg, dhe ne kemi ruajtur mesazhin. 444 00:32:26,520 --> 00:32:32,730 Tani ne të vërtetë duan të bëjnë diçka me atë qëllim ne krijuar vetëm çaste më parë. 445 00:32:32,730 --> 00:32:40,250 Unë do të vënë ekstra siç është quajtur në qëllim, 446 00:32:40,250 --> 00:32:43,330 e cila, përsëri, si kam thënë më parë, kjo është një mënyrë e krijimit pako 447 00:32:43,330 --> 00:32:45,980 me një bandë e tërë e të dhënave. 448 00:32:45,980 --> 00:32:50,920 Mesazhi Extra është tag tonë kështu që ne e dimë se çfarë jeni të shpëtuar këtë nen, 449 00:32:50,920 --> 00:32:56,700 dhe atëherë unë jam i përfshirë mesazhin. 450 00:32:56,700 --> 00:33:04,870 >> Dhe atëherë ne në fakt mund të fillojnë aktivitetin duke i dhënë asaj myIntent parametër. 451 00:33:04,870 --> 00:33:10,630 Dhe kjo në fakt do të nisë aktivitetin, kështu që tani që unë upgraded to Windows 8 452 00:33:10,630 --> 00:33:15,870 mund të ketë disa gabime që shfaqen shkurtimisht, por të përpiqet të injorojë ato. 453 00:33:28,010 --> 00:33:30,310 Dhe kjo është emulator Android. 454 00:33:30,310 --> 00:33:33,540 Shpresojmë kod të vërtetë do të pop-up në një moment. 455 00:33:33,540 --> 00:33:36,680 Përsëri, duke injoruar të gjitha ato gjëra të vogla. 456 00:33:36,680 --> 00:33:42,290 Por Android emulator ju mund të matem çdo version të sistemit operativ 457 00:33:42,290 --> 00:33:45,180 nga ato më të hershme, Donut, Gingerbread. 458 00:33:45,180 --> 00:33:49,640 Kjo është Jelly Bean 4.1. 459 00:33:49,640 --> 00:33:53,150 Por si ju mund të shihni të drejtë tani, kjo është diçka që kemi bërë. 460 00:33:53,150 --> 00:33:55,780 Kjo ka MainActivity, editText, button. 461 00:33:55,780 --> 00:34:01,550 Unë mund të shkruani diçka këtu, por çfarë jemi duke humbur në këtë pikë? 462 00:34:01,550 --> 00:34:05,190 Ne kemi bërë fushën në MainActivity që do të dërgoni mesazh 463 00:34:05,190 --> 00:34:08,570 për aktivitetin tjetër, por në këtë pikë 464 00:34:08,570 --> 00:34:12,330 ne nuk kemi bërë asgjë në aktivitetin tjetër, kështu që ajo nuk do të marrë asgjë. 465 00:34:12,330 --> 00:34:18,800 Le të përfundojë deri atë pjesë para se të lëvizë. 466 00:34:18,800 --> 00:34:25,760 >> Ky aktivitet rezultat, ajo që ne do të duhet të bëni është që ne do të duhet të bëni është që ne do të duhet për- 467 00:34:25,760 --> 00:34:30,070 ne gjithashtu mund të referencës qëllimin brenda këtij aktiviteti, 468 00:34:30,070 --> 00:34:33,580 kështu që ne kemi për të kapur të qëllimit, e cila është me të vërtetë të thjeshtë. 469 00:34:33,580 --> 00:34:40,780 Kjo është një funksion të përfshira në klasë aktivitetit, 470 00:34:40,780 --> 00:34:47,610 kështu që ne mund të them vetëm "Merr mesazh nga qëllimit." 471 00:34:47,610 --> 00:34:56,260 "MyIntent Intent = getIntent." 472 00:34:56,260 --> 00:35:00,030 Dhe kjo do të na japin-myIntent tani është një objekt, 473 00:35:00,030 --> 00:35:05,380 cila eshte nje referim te qëllim që çuar na te kete aktivitet. 474 00:35:05,380 --> 00:35:10,130 MainActivity thërret dhe i jep informacion shtesë të rezultojë aktivitet. 475 00:35:10,130 --> 00:35:14,070 Aktiviteti rezultat tani duket në synimin që çoi atë këtu, 476 00:35:14,070 --> 00:35:23,540 dhe ne mund të hyni mesazhin që kemi krijuar në një tjetër, 477 00:35:23,540 --> 00:35:26,370 getStringExtra, dhe kjo do të autocomplete për mua. 478 00:35:26,370 --> 00:35:31,190 Dhe pastaj mos harroni, mënyrën se si ne tagged se pak e të dhënave 479 00:35:31,190 --> 00:35:38,400 ishte duke i dhënë atë në këtë fushë të drejtë këtu, në këtë varg publik, 480 00:35:38,400 --> 00:35:42,080 e cila është tag për vargun ne fakt përfshira. 481 00:35:42,080 --> 00:35:48,450 >> Nëse unë them MainActivity.Extra_Message 482 00:35:48,450 --> 00:35:52,200 ajo është e drejtë atje, dhe kjo është lloj i si parameter emrin 483 00:35:52,200 --> 00:35:55,330 kur kaluam kodin nga kontrollues në template, 484 00:35:55,330 --> 00:35:57,680 kur ne do të themi diçka shigjetë titullin. 485 00:35:57,680 --> 00:36:01,140 Është i njëjti lloj ideje atje. 486 00:36:01,140 --> 00:36:07,130 Tani, mos harroni këtë. 487 00:36:07,130 --> 00:36:12,230 Ne gjithashtu e kishte krijuar këtë auto ose auto gjeneruar kodin 488 00:36:12,230 --> 00:36:16,410 për aktivitetin e rezultatit, e cila përfshin mendimin e tekstit në mes 489 00:36:16,410 --> 00:36:19,690 që thotë se bota përshëndetje. 490 00:36:19,690 --> 00:36:27,510 Ne potencialisht mund të bëjë që të madh. 491 00:36:27,510 --> 00:36:33,980 Le të bëjë atë të parë. 492 00:36:33,980 --> 00:36:39,550 Ne mund të bëjë atë 40 pixels densitet të pavarura. 493 00:36:39,550 --> 00:36:42,670 Le të shohim, kjo është super i madh. Kjo do të jetë në rregull. 494 00:36:42,670 --> 00:36:48,180 Dhe pastaj në mënyrë të referimit këtë pikëpamje individuale teksti brenda kodit tonë 495 00:36:48,180 --> 00:36:53,890 ne do të duhet për të dhënë atë një ID, 496 00:36:53,890 --> 00:36:58,350 dhe në mënyrë që të bëjë që ne themi @ + id, që do të thotë që ne të caktojë atë ID. 497 00:36:58,350 --> 00:37:02,480 Nëse ne vetëm tha id @ ajo do të supozojmë që ne jemi duke iu referuar një letërnjoftim që tashmë ekziston, 498 00:37:02,480 --> 00:37:07,760 dhe le ta quajmë këtë resultTextView tonë. 499 00:37:07,760 --> 00:37:10,570 Dhe vini re se në XML nuk ka nevojë për pikpresje ose asgjë. 500 00:37:10,570 --> 00:37:12,380 Gjithçka është brenda këtyre tags. 501 00:37:12,380 --> 00:37:15,530 Është shumë i ngjashëm me HTML në një shumë të shqisave. 502 00:37:15,530 --> 00:37:22,760 >> Ajo merr pak duke u përdorur për të, por në fund ju do të ndiheni goxha rehat me të. 503 00:37:22,760 --> 00:37:31,320 Le të rinovuar tekst për synimin e tekstit tonë rrjedhojë, 504 00:37:31,320 --> 00:37:35,650 dhe siç bëmë kur ishim gjetjes se fushën e tekstit redakto në aktivitet tona të tjera 505 00:37:35,650 --> 00:37:46,630 në MainActivity këtu ne gjithashtu do të njëjtën gjë- 506 00:37:46,630 --> 00:37:54,890 ne do të gjeni pamje nga ID. 507 00:37:54,890 --> 00:37:59,640 R Dhe, në rast se unë nuk e kishte përmendur këtë më parë, është referencë në burimet dosje tonë, 508 00:37:59,640 --> 00:38:05,350 dhe pastaj ID është një referencë për çdo gjë në dosjen e burimeve, të gjitha IDS, 509 00:38:05,350 --> 00:38:10,060 dhe resultTextView. 510 00:38:10,060 --> 00:38:13,010 Dhe ashtu si më parë, resultTextView është një objekt, 511 00:38:13,010 --> 00:38:15,780 që do të thotë ajo ka të gjitha këto veti të lidhen me të. 512 00:38:15,780 --> 00:38:20,610 Kur ne përdorim getText për tekstin redakto për këtë fushë tekst ose tekst view 513 00:38:20,610 --> 00:38:23,980 ne mund të përdorni të vërtetë setText, 514 00:38:23,980 --> 00:38:26,960 dhe pastaj ne tashmë gjetur mesazhin nga qëllimit, 515 00:38:26,960 --> 00:38:35,760 kështu që unë mund të them mesazh, dhe kjo do të vërtetë të vendosur mesazh. 516 00:38:35,760 --> 00:38:41,820 >> Është marrë një moment për të nisur, dhe pastaj ne mund të shohim nëse janë apo jo ajo crashes, 517 00:38:41,820 --> 00:38:48,670 por çdo pyetje në lidhje me këtë proces të drejtë atje, se lloj i ndërveprimit? 518 00:38:48,670 --> 00:38:51,490 Në shumë mënyra kjo është drejtpërdrejtë. 519 00:38:51,490 --> 00:38:53,960 Arsyeja që unë jam duke shkuar nëpër diçka relativisht e thjeshtë 520 00:38:53,960 --> 00:38:57,330 është, përsëri, sepse ju merrni për të parë ndërveprimin në mes layout, 521 00:38:57,330 --> 00:38:59,520 kodi burim, se si ju gjërat e referencës 522 00:38:59,520 --> 00:39:07,680 dhe ndoshta të marrë një ekspozim të vogël për sa Java punon atje. 523 00:39:07,680 --> 00:39:16,500 Në qoftë se unë në fakt shkruani diçka në këtu, si ohai, dhe pastaj klikoj butonin, 524 00:39:16,500 --> 00:39:22,260 ajo nis një aktivitet të ri, dhe se pikëpamja teksti thotë ohai. 525 00:39:22,260 --> 00:39:27,640 Kjo është shumë e thjeshtë, por shpresojmë se pas asaj shembull 526 00:39:27,640 --> 00:39:32,310 ju lloj i shihni se si punon ky ndërveprim, dhe tani që rrëmujë e dosjeve 527 00:39:32,310 --> 00:39:36,870 në anën e majtë për të gjitha këto dosje të projektit, shpresojmë se ju e dini ku mund të shikojnë tani. 528 00:39:36,870 --> 00:39:38,700 Kjo është kodin tuaj burim zonë. 529 00:39:38,700 --> 00:39:41,760 >> Layout është me të vërtetë e vetmja gjë që ju do të merret me të derisa ju të përfshijnë imazhet 530 00:39:41,760 --> 00:39:46,370 dhe drawables apo çfarëdo, dhe vlerat, që do të përfshijë strings, 531 00:39:46,370 --> 00:39:51,960 siç kemi përmendur, dhe pastaj stilet është diçka që është lloj i si CSS. 532 00:39:51,960 --> 00:39:56,410 Trajtuar atë kur ju doni, por deri sa ju të ndiheni rehat me duke shtuar dhunti shtesë 533 00:39:56,410 --> 00:40:02,520 për aplikimin tuaj nuk ka nevojë për t'u shqetësuar në lidhje me atë shumë. 534 00:40:02,520 --> 00:40:07,410 Vetëm të përfundojë një gjë tjetër që ju patjetër do të dëshironi që të përfshijë- 535 00:40:07,410 --> 00:40:13,010 duke supozuar që ju doni të integrohen karakteristika të ftohtë dhe për të shpëtuar veten disa ekstra coding- 536 00:40:13,010 --> 00:40:16,460 do të jetë për të përfshijnë bibliotekat 3 partisë. 537 00:40:16,460 --> 00:40:19,840 Këtu është pak Android djalë me kapelë Sherlock Holmes. 538 00:40:19,840 --> 00:40:23,040 Ky është një bar veprim Sherlock bibliotekë, 539 00:40:23,040 --> 00:40:25,390 e cila në thelb do të thotë se bar veprimi patë më herët, 540 00:40:25,390 --> 00:40:29,590 e cila tani është standard në Ice Cream Sandwich dhe Jelly Bean, 541 00:40:29,590 --> 00:40:33,100 në qoftë se ju doni të sjellë atë lloj përvojë përdorues për përdoruesit në versionet më të vjetra 542 00:40:33,100 --> 00:40:39,290 dhe për të shpëtuar veten nga shqetësuese në lidhje me mënyrën se si përdoruesi është duke shkuar për të lundruar 543 00:40:39,290 --> 00:40:42,490 në versionet më të vjetra, kur ajo gjë nuk është atje ju mund të përfshijë këtë bibliotekë 544 00:40:42,490 --> 00:40:46,770 dhe atëherë ju vetëm keni për referencë-sesa Android parazgjedhur 545 00:40:46,770 --> 00:40:50,250 për bibliotekat veprimit bar, ju referencë këtë bibliotekë mbështetje. 546 00:40:50,250 --> 00:40:53,090 >> Gjëra të tilla si Scoreloop, është e madhe në qoftë se ju jeni do të përfshijë një lojë. 547 00:40:53,090 --> 00:40:57,280 Kjo ju lejon të shtoni bordet udhëheqës dhe të arriturat për lojëra. 548 00:40:57,280 --> 00:41:00,900 AdMob është një mënyrë për të vënë reklama në aplikacionet tuaja 549 00:41:00,900 --> 00:41:02,900 në rast se ju doni të bëni një pak të holla off e saj. 550 00:41:02,900 --> 00:41:05,730 Sigurisht, nuk është Facebook dhe Twitter për integrimin atje 551 00:41:05,730 --> 00:41:08,170 në qoftë se ju doni të ndajnë gjërat lehtë, et cetera. 552 00:41:08,170 --> 00:41:15,120 Dropbox, po ashtu, dhe Google Analytics është që ka një tabelë në kërkim. 553 00:41:15,120 --> 00:41:19,070 Kjo do të jetë shumë e rëndësishme në qoftë se ju në të vërtetë doni për të parë kush është duke ndërvepruar 554 00:41:19,070 --> 00:41:25,800 me app tuaj ose kush është, se si ata ndërveprojnë, et cetera. 555 00:41:25,800 --> 00:41:30,650 Google, by default, ju tregon një shumë e statistikave rreth i cili ka instaluar app tuaj 556 00:41:30,650 --> 00:41:35,020 dhe çfarë telefonat që ata kanë, çfarë Versione të sistemit operativ që ata kanë. 557 00:41:35,020 --> 00:41:38,080 Por në qoftë se ju doni të shihni kush është duke e përdorur atë në baza ditore dhe se si ata e përdorin atë 558 00:41:38,080 --> 00:41:42,860 atëherë ju do të dëshironi që të përfshijë një lloj të sistemit të përcjelljes si kjo. 559 00:41:42,860 --> 00:41:44,990 >> Kur të jeni gati për të shpërndarë app tuaj 560 00:41:44,990 --> 00:41:46,930 Unë nuk kam nevojë për të shkuar në se në thellësi shumë. 561 00:41:46,930 --> 00:41:49,090 Klikoni në linkun këtu, Google Luaj. 562 00:41:49,090 --> 00:41:51,080 Ajo përdoret për të jetë tregu Android. 563 00:41:51,080 --> 00:41:53,470 Ata del gjithçka me Google Luaj, 564 00:41:53,470 --> 00:41:55,230 kështu që tani ju paraqisni për këtë. 565 00:41:55,230 --> 00:41:57,140 Është shumë e thjeshtë. 566 00:41:57,140 --> 00:42:01,070 Ju duhet të përfshijë një përshkrim, disa screenshots. 567 00:42:01,070 --> 00:42:05,660 Ashtu si thashë, nuk ka asnjë proces miratimi si iOS. 568 00:42:05,660 --> 00:42:07,270 Dhe ku të shkojnë nga këtu? 569 00:42:07,270 --> 00:42:09,450 Unë ju tregoi një shembull të vërtetë të thjeshtë. 570 00:42:09,450 --> 00:42:13,270 Shpresojmë se në qoftë se ajo duket tmerrësisht e thjeshtë 571 00:42:13,270 --> 00:42:15,740 atëherë kjo është ndoshta një shenjë e mirë. 572 00:42:15,740 --> 00:42:20,080 Në qoftë se ju në të gjitha ndjerë pak konfuze ose të pasigurt në lidhje me pikërisht ajo që unë u typing 573 00:42:20,080 --> 00:42:26,160 kjo është gjithashtu mirë, por nga këtu shkojnë në Guides Google. 574 00:42:26,160 --> 00:42:28,330 Kjo është një vend i madh për të filluar. 575 00:42:28,330 --> 00:42:31,460 Ajo do të flisni ju nëpërmjet asaj që ata presin në aspektin e dizajnit të aplikacionit, 576 00:42:31,460 --> 00:42:33,380 se si përdoruesit normalisht ndërveprojnë me të. 577 00:42:33,380 --> 00:42:36,450 Është shumë më e lirë se sa iOS formë, unë do të them, 578 00:42:36,450 --> 00:42:41,330 të cilën ajo duket si shikime tryezë janë të-Unë nuk e di, kjo është buka e tyre dhe gjalpë. 579 00:42:41,330 --> 00:42:44,690 Çdo gjë është një pikëpamje tryezë rrëshqitje lart dhe poshtë. 580 00:42:44,690 --> 00:42:48,160 Me Android ata patjetër të inkurajuar njerëzit që të shikoni atë nga 581 00:42:48,160 --> 00:42:51,720 një bandë e tërë e perspektivave të ndryshme. 582 00:42:51,720 --> 00:42:56,000 >> Kur ju të përfshijë kit Software zhvillimit në këtë ADT 583 00:42:56,000 --> 00:43:03,010 nga default ju keni një bandë e tërë e projekteve të mostrës në Android. 584 00:43:03,010 --> 00:43:05,470 Të drejtë këtu, Android, Android Projekti Shembull. 585 00:43:05,470 --> 00:43:11,870 Nëse unë klikoni mbi atë, atëherë unë mund të zgjidhni një version për të cilin e kampionit të projekteve të aplikuar. 586 00:43:11,870 --> 00:43:13,300 Ka një bandë e tërë e gjëra të ndryshme këtu. 587 00:43:13,300 --> 00:43:16,690 Ajo fillon me bar përputhshmërinë e veprimit, 588 00:43:16,690 --> 00:43:24,610 loja Accelerometer, backup dhe rivendosjen e, Bluetooth, ndërtues gjest. 589 00:43:24,610 --> 00:43:28,930 JetBoy është një lojë mostër që do t'ju japin, siç është LunarLander. 590 00:43:28,930 --> 00:43:31,250 Ka një bandë e tërë e aplikacioneve mostër këtu, 591 00:43:31,250 --> 00:43:35,290 dhe ata janë në shënjestër të gjithë në aspekte të ndryshme të Android API-së, 592 00:43:35,290 --> 00:43:41,520 dhe ideja është se si ju bëni kërkesën tuaj 593 00:43:41,520 --> 00:43:44,110 ju nuk keni nevojë për të mësuar gjithçka në lidhje me Android për të bërë një app Android. 594 00:43:44,110 --> 00:43:47,300 Ju vetëm duhet të mësojnë në lidhje me pjesët që ju jeni në të vërtetë do të përdorin. 595 00:43:47,300 --> 00:43:49,340 Shikoni këtyre bibliotekave mostrës. 596 00:43:49,340 --> 00:43:51,510 Ndjehen të lirë për të kopjoni dhe ngjisni kodin dhe reapply atë. 597 00:43:51,510 --> 00:43:53,850 Kjo është një gjë e madhe që të shikojmë në kodin më të vështirë 598 00:43:53,850 --> 00:43:57,060 dhe të përpiqemi për të kuptuar atë, e cila është sigurisht arsyeja pse në CS50 599 00:43:57,060 --> 00:44:01,510 ne shpesh ju jap sasi të mëdha të kodit burimor. 600 00:44:01,510 --> 00:44:04,620 Shikoni disa nga këto në qoftë se ju jeni do të përdorin bibliotekat ngjashme 601 00:44:04,620 --> 00:44:08,630 dhe pastaj të aplikojnë atë në kodin tuaj. 602 00:44:08,630 --> 00:44:10,430 Dhe sigurisht, nuk janë mësime. 603 00:44:10,430 --> 00:44:12,690 Kërko për mësime. 604 00:44:12,690 --> 00:44:17,020 Kam gjetur një shumë e ato të mira online i cili mund t'ju sjellë deri në shpejtësinë 605 00:44:17,020 --> 00:44:20,080 me çfarë fragmente të vërtetë janë dhe se si ju mund t'i përdorë ato. 606 00:44:20,080 --> 00:44:22,240 >> Disa nga këto gjëra të reja të projektimit, si fragmente, 607 00:44:22,240 --> 00:44:26,840 ju me të vërtetë nuk duhet të jenë të shqetësuar në lidhje me nëse ju jeni duke e bërë një 608 00:44:26,840 --> 00:44:30,560 goxha të madhe në projektin e fushëveprimit. 609 00:44:30,560 --> 00:44:32,510 Ata janë të gjëra që Google është duke u përpjekur për të fazën in 610 00:44:32,510 --> 00:44:35,570 StackOverflow është sigurisht miku juaj. 611 00:44:35,570 --> 00:44:37,930 Shpresojmë që unë ju shitur një grimë në Android, 612 00:44:37,930 --> 00:44:41,640 realizimin e kjo është shumë më e lehtë për t'iu qasur vetëm në aspektin e gjuhës kodim. 613 00:44:41,640 --> 00:44:45,970 Java është unë do të them shumë më e lehtë për të kuptuar se sa Objektivi-C. 614 00:44:45,970 --> 00:44:50,780 Android po rritet Unë mendoj se shumë më tepër se iOS. 615 00:44:50,780 --> 00:44:54,890 Unë do të thotë, të dhënave është atje, mënjanë nga ajo që unë mendoj. 616 00:44:54,890 --> 00:44:56,920 Ajo do të jetë rreth për një kohë, 617 00:44:56,920 --> 00:45:00,880 dhe ata janë disa vjet prapa në drejtim të cikleve të tyre të projektimit, 618 00:45:00,880 --> 00:45:04,690 kështu që kjo është lloj i kuptueshme se ata janë ende duke punuar me disa nga këto 619 00:45:04,690 --> 00:45:09,080 pyetje logjike, si ky veprimit bar është një gjë e re për ta ende, 620 00:45:09,080 --> 00:45:16,010 lloj i krijimit përvojë të ngjashme përdoruesit në të gjitha Apps e tyre. 621 00:45:16,010 --> 00:45:20,650 Shpresojmë që ju mund të shkoni përpara dhe të hapur deri tani Eclipse 622 00:45:20,650 --> 00:45:22,870 dhe të bëjë Apps tuaj Android. 623 00:45:22,870 --> 00:45:30,240 >> A ka dikush ndonjë pyetje para se të përfundojë deri në lidhje me ndonjë gjë? 624 00:45:30,240 --> 00:45:34,410 Unë mund t'ju them se përgjigja është 42. 625 00:45:34,410 --> 00:45:41,990 E pra, të gjithë të lumtur kodim, dhe fat të mirë. 626 00:45:41,990 --> 00:45:44,990 [CS50.TV]