1 00:00:00,000 --> 00:00:02,610 [Powered by Google Translate] [Seminar] [Android Apps (Ngayon ay may halaya Beans!)] 2 00:00:02,610 --> 00:00:04,210 [Jordan Jozwiak] [Harvard University] 3 00:00:04,210 --> 00:00:06,780 [Ito ay CS50.] [CS50.TV] 4 00:00:06,780 --> 00:00:11,600 >> Kamusta lahat, at maligayang pagdating sa mga Android Apps (Ngayon na may halaya Beans!) Seminar. 5 00:00:11,600 --> 00:00:14,530 Ito ay tinatawag na ngayon na may halaya Beans, siyempre, dahil 6 00:00:14,530 --> 00:00:17,310 ang pinakabagong bersyon ng OS ay tinatawag na halaya Bean. 7 00:00:17,310 --> 00:00:22,950 Kapag ako uusapang tungkol sa Android nakaraang taon at ginawa talaga ito parehong seminar 8 00:00:22,950 --> 00:00:29,150 Ako ay nagtatanghal ang mga pattern na disenyo at pangkakanyahan mga pagpipilian para sa gingerbread, 9 00:00:29,150 --> 00:00:31,250 kahit na Ice Cream Sandwich ay dumating out sa panahon, 10 00:00:31,250 --> 00:00:33,680 at ito ay isang bagay na namin ang pag-usapan ang pagsulong ng isang maliit na bit. 11 00:00:33,680 --> 00:00:35,720 Android, siyempre, ay may ilang mga isyu sa pagkapira-piraso, 12 00:00:35,720 --> 00:00:40,240 kaya ang mga pinakabagong system ng Google operating ay karaniwang 13 00:00:40,240 --> 00:00:44,710 hindi talagang pagpunta sa maging karaniwan sa mga gumagamit para sa mga potensyal ng hanggang sa isang taon, sa kasamaang-palad. 14 00:00:44,710 --> 00:00:49,960 >> Pero bahala na, kami makipag-usap tungkol sa maraming mga kadahilanan kung bakit 15 00:00:49,960 --> 00:00:53,000 Android ay magkano ang mas mahusay kaysa sa iOS. 16 00:00:53,000 --> 00:00:56,410 Okay, kami makipag-usap tungkol sa Android kumpara sa iOS, 17 00:00:56,410 --> 00:00:59,770 ilang paradigms disenyo, paano makakakuha ka ng mga set up sa loob lamang ng isang slide, 18 00:00:59,770 --> 00:01:03,410 at ang malaking pagkakaiba sa pagitan ng ito at noong nakaraang taon ay ko lang nais na 19 00:01:03,410 --> 00:01:06,860 mag-zoom sa haka-haka ng ilang mga bagay na may nagtatrabaho 20 00:01:06,860 --> 00:01:09,950 sa operating system at pagkatapos ay pumunta sa isang talagang pangunahing halimbawa. 21 00:01:09,950 --> 00:01:13,730 Sa katunayan, lamang ang halimbawa na naglalarawan sa Google para sa pagbuo ng iyong unang app, 22 00:01:13,730 --> 00:01:17,070 at kami ay pumunta sa pamamagitan ng ito nang magkasama at ilarawan lamang. 23 00:01:17,070 --> 00:01:22,100 >> Alam ko marami sa inyo ang lamang ma-code sa C, kaya Java ay pagpunta sa maging 24 00:01:22,100 --> 00:01:27,220 isang iba't ibang mga pananaw, at sa ganitong paraan makikita mo makuha ang iyong mga paa basa 25 00:01:27,220 --> 00:01:31,540 at pakiramdam ng kaunti pa komportable sa ito sana. 26 00:01:31,540 --> 00:01:35,330 Ang isang mabilis na buod, Android kumpara sa iOS. 27 00:01:35,330 --> 00:01:39,200 Sa Android mayroong ang isang-beses na bayad sa developer na $ 25, 28 00:01:39,200 --> 00:01:42,390 wala sa mga bagay na ito $ 100 bawat taon. 29 00:01:42,390 --> 00:01:45,440 Walang mga paghihigpit, na nangangahulugan na kung nais ko upang isumite ang isang app, 30 00:01:45,440 --> 00:01:51,560 Katatapos ko lamang isumite ito, at walang pag-apruba ng proseso tulad doon ay para sa iOS. 31 00:01:51,560 --> 00:01:53,890 Makukuha mo upang bumuo sa Java gamit Eclipse, 32 00:01:53,890 --> 00:01:57,090 na kung saan ay ang cross platform, kaya hindi mahalaga kung ikaw ay may isang Mac, 33 00:01:57,090 --> 00:01:59,600 Windows, o ilang Linux machine. 34 00:01:59,600 --> 00:02:03,730 Siyempre, may iOS mayroon kang gamitin XCode sa Mac, 35 00:02:03,730 --> 00:02:06,930 at Android ay ginagamit ng maraming iba pang mga tao, 36 00:02:06,930 --> 00:02:11,580 kaya kung nais mo ang iyong app na magkaroon ng isang uri ng pagpapakita o di kaya 37 00:02:11,580 --> 00:02:14,110 gumawa ng isang maliit na pera mula sa mga advertisement 38 00:02:14,110 --> 00:02:17,450 ikaw ay marahil mas malamang na makinabang mula sa Android. 39 00:02:17,450 --> 00:02:20,630 >> At isang bagay na laging nai-kilala tungkol sa Android 40 00:02:20,630 --> 00:02:25,100 ay ang matinding halaga ng pagpapasadya, samantalang ang iOS ay masyadong naayos na sa kanilang mga paraan 41 00:02:25,100 --> 00:02:29,380 sa gayon ay maaari nilang mapanatili ang seguridad at kontrol sa bawat aspeto kaunti 42 00:02:29,380 --> 00:02:34,180 ng mga disenyo sa loob ng kanilang OS at ang mga indibidwal na mga app. 43 00:02:34,180 --> 00:02:40,180 Android ay napaka libreng form, at may kaya maraming iba pang mga posibilidad. 44 00:02:40,180 --> 00:02:42,530 Okay, ang ilang mga disenyo paradigms. 45 00:02:42,530 --> 00:02:49,600 Pansinin dito tulad ng iOS ay may tableta at mga iPhone at iPod touch 46 00:02:49,600 --> 00:02:53,840 mayroon sila upang suportahan, sabihin nating, tulad ng isang dosenang mga aparato kung gusto mong suportahan 47 00:02:53,840 --> 00:02:55,450 makasaysayang mga bagay pati na rin. 48 00:02:55,450 --> 00:02:58,410 Sa Android mayroon kang upang suportahan ang daan-daang mga aparato, 49 00:02:58,410 --> 00:03:01,240 kaya mayroong ilang mga bagay na ang Google ay sinusubukan upang ipatupad 50 00:03:01,240 --> 00:03:04,970 upang gumawa ng user ang makaranas ng isang maliit na mas pare-pareho, 51 00:03:04,970 --> 00:03:08,560 pero gagamitin din namin makipag-usap tungkol sa kung paano ito ay nangangahulugan na may mga isyu ng pagkapira-piraso 52 00:03:08,560 --> 00:03:11,700 na iyong patuloy na kailangang magkaroon ng kamalayan ng pagsuporta. 53 00:03:11,700 --> 00:03:16,140 Pagkapira-piraso ay nangangahulugan na ang maraming iba't ibang mga operating system, 54 00:03:16,140 --> 00:03:20,330 maraming iba't ibang mga telepono na may iba't ibang mga hardware tumatakbo Android lahat nang sabay-sabay, 55 00:03:20,330 --> 00:03:29,680 kaya graph na ito dito napupunta bumalik para sa tungkol sa 6 na buwan. 56 00:03:29,680 --> 00:03:36,460 Oo, 6 na buwan, at maaari mong makita kung paano ang darkest band 57 00:03:36,460 --> 00:03:39,330 sa ibaba ay halaya Bean, kung saan ay dumating out sa ibabaw ng tag-araw, 58 00:03:39,330 --> 00:03:42,970 at maaari mong makita ngayon marahil tungkol sa 2% ng mga teleponong mayroon ito. 59 00:03:42,970 --> 00:03:45,520 >> Ice Cream Sandwich ay dumating out sa loob ng isang taon na ang nakalipas, 60 00:03:45,520 --> 00:03:47,770 at isang-kapat ng mga teleponong mayroon ito. 61 00:03:47,770 --> 00:03:53,910 Mayroong pa rin ng maraming mga telepono na ginagamit bersyon ng OS mula sa taon na ang nakakaraan. 62 00:03:53,910 --> 00:03:57,820 Ang isang bagay na ang Google ay sinubukan mong gawin upang gawin ang mga karanasan ng gumagamit 63 00:03:57,820 --> 00:04:01,400 ng maraming mas pare-pareho sa buong apps ay nagsisimula sa Honeycomb, 64 00:04:01,400 --> 00:04:04,320 kung saan ay ang tablet bersyon, pagkatapos ay i-Ice Cream Sandwich at halaya Bean, 65 00:04:04,320 --> 00:04:06,750 talaga nila sinusubukan upang bigyan ng diin ang paggamit ng ito bar pagkilos, 66 00:04:06,750 --> 00:04:10,430 na kung saan ay kung ano ang maaari mong makita sa tuktok dito, 67 00:04:10,430 --> 00:04:14,730 lahat ng bagay dito mismo, kasama ang maliit na pindutan na setting. 68 00:04:14,730 --> 00:04:16,079 Ito ay ang disenyo choice. 69 00:04:16,079 --> 00:04:18,000 Ngayon, sa tuwing nakikita mo ang 3 tuldok ang ibig sabihin nito mag-click sa ito, 70 00:04:18,000 --> 00:04:21,880 at magkakaroon ng drop-down na menu, na kung saan ay may ilang mga uri ng mga setting. 71 00:04:21,880 --> 00:04:28,900 Ito ay nagpapakita lamang up ako dahil nag-click sa button na ito. 72 00:04:28,900 --> 00:04:32,040 Ito ay isang bagay na sila na sinusubukan mong gamitin upang gumawa ng apps ng kaunti mas pare-pareho 73 00:04:32,040 --> 00:04:39,210 sa buong board at sa gayon ang mga gumagamit ay may mas mahusay na pakiramdam ng pare-parehong karanasan. 74 00:04:39,210 --> 00:04:42,640 >> Okay, kaya kung sakaling hindi mo pa tapos na ito o kung pinapanood mo sa bahay 75 00:04:42,640 --> 00:04:50,210 pagkatapos ay maaari mong sundin ang mga hakbang na ito upang i-set up ang iyong coding kapaligiran. 76 00:04:50,210 --> 00:04:52,630 Ito ay kasangkot pagpunta sa website dito. 77 00:04:52,630 --> 00:04:56,260 Maaari mong i-install ang Google Android SDK 78 00:04:56,260 --> 00:04:59,130 at sundin ang ilang mga paglalarawan doon. 79 00:04:59,130 --> 00:05:01,310 Sila sabihin sa iyo ang lahat. 80 00:05:01,310 --> 00:05:05,160 Ang mga ito ay mong i-install ang SDK, download Eclipse Classic na bersyon, 81 00:05:05,160 --> 00:05:07,450 kahit na, siyempre, kami ay coding sa Java. 82 00:05:07,450 --> 00:05:12,190 Inirerekumenda nila ito ng isa, at pagkatapos ay ito ADT, ang Android Development Tools, 83 00:05:12,190 --> 00:05:17,300 ay isang plugin na i-install mo sa Eclipse na nagbibigay-daan sa iyo upang 84 00:05:17,300 --> 00:05:20,550 magkaroon ng higit na mas streamline na karanasan sa Android sa loob ng Eclipse. 85 00:05:20,550 --> 00:05:24,070 Ito ay magbibigay sa iyo ng ilang mga graphical interface ng gumagamit 86 00:05:24,070 --> 00:05:29,610 para sa pagdisenyo ang mga tanawin, at ito ay magbibigay sa iyo ng mas suporta 87 00:05:29,610 --> 00:05:34,840 at ang kakayahan upang ilunsad na may emulator at ang lahat na uri ng bagay. 88 00:05:34,840 --> 00:05:36,090 Application framework. 89 00:05:36,090 --> 00:05:41,590 >> Gusto kong makipag-usap tungkol sa kung paano ang mga proyekto sa loob ng Android ay nakaayos, 90 00:05:41,590 --> 00:05:44,830 at pagkatapos ay gagamitin namin pumunta sa isang mabilis na halimbawa, at sana 91 00:05:44,830 --> 00:05:48,820 maaari kang magtanong sa anumang punto at kumportable sa pamamagitan ng dulo ng ito. 92 00:05:48,820 --> 00:05:50,090 Mayroon kaming ilang mga hindi maintindihang pag-uusap muna. 93 00:05:50,090 --> 00:05:55,330 Ang isang aktibidad ay tulad ng screen ang makikita mo kapag ikaw ilunsad ang isang app. 94 00:05:55,330 --> 00:05:57,840 Ang buong karanasan ay ang aktibidad mismo, 95 00:05:57,840 --> 00:06:00,790 sa gayon maaari mong isipin na ito bilang isang screen o sa isang view, 96 00:06:00,790 --> 00:06:04,540 subalit ito ay aktwal na ang source code gilid ng ito. 97 00:06:04,540 --> 00:06:12,680 Kami pa rin tawagan ang aktwal na bahagi ng interface ito sa isang view. 98 00:06:12,680 --> 00:06:17,230 Ito ay uri ng tulad ng kung paano sa pset 7 nagkaroon kami ng controller at pagkatapos ay ang view. 99 00:06:17,230 --> 00:06:20,690 Ang aktibidad ay higit pa o mas mababa ang controller, 100 00:06:20,690 --> 00:06:23,360 at tingnan ang ay kung ano ang ginagawa namin sa mga tuntunin ng XML 101 00:06:23,360 --> 00:06:25,260 na nauugnay sa aktibidad na iyon. 102 00:06:25,260 --> 00:06:29,340 Fragment ay isang bagay na ipinapatupad sa Ice Cream Sandwich pasulong. 103 00:06:29,340 --> 00:06:36,380 Ito ay lamang ng isang ideya ng pagkuha ng mga bahagi ng view o mga aktibidad 104 00:06:36,380 --> 00:06:39,990 at paghahati ang mga ito sa magkahiwalay na lugar sa gayon maaari naming 105 00:06:39,990 --> 00:06:45,030 gumawa ng aming code sa higit pang kapaki-pakinabang para sa maraming mga iba't ibang mga aparato 106 00:06:45,030 --> 00:06:51,890 na mayroon kami upang suportahan, at ito ay lamang ng isang paraan ng sinusubukang i- 107 00:06:51,890 --> 00:06:54,290 salik din ang higit pa code. 108 00:06:54,290 --> 00:07:01,090 Serbisyo ay background mga bagay tulad ng pag-play ng musika o mga direksyon nabigasyon potensyal. 109 00:07:01,090 --> 00:07:05,640 Nilalaman provider, ito ang mga API sa loob ng operating system 110 00:07:05,640 --> 00:07:09,070 na magpapahintulot sa inyo na ma-access ang shared data tulad ng impormasyon ng contact, 111 00:07:09,070 --> 00:07:12,790 at pagkatapos ay ang isang layunin ay isang bagay na gagamitin namin kapag gusto naming ilunsad 112 00:07:12,790 --> 00:07:17,210 isang bagong aktibidad mula sa aming kasalukuyang aktibidad. 113 00:07:17,210 --> 00:07:20,980 >> Kamusta Android, ito ay magiging isang proyekto na kami ay makipag-usap tungkol sa. 114 00:07:20,980 --> 00:07:25,410 Kukunin ko talagang gawin ito para sa iyo, at pagkatapos ay gagamitin namin gawin ang isang bagay kung saan kami mag-click ng isang pindutan 115 00:07:25,410 --> 00:07:27,650 may ilang mga teksto at ilunsad ang isang bagong aktibidad. 116 00:07:27,650 --> 00:07:30,110 Tunay na tuwiran, ngunit gusto kong pumunta sa pamamagitan ng 117 00:07:30,110 --> 00:07:34,480 ano ay pumunta sa isang proyektong gaya nito. 118 00:07:34,480 --> 00:07:39,260 Kapag gumawa ka ng bagong proyekto makikita mo sa loob ng Eclipse 119 00:07:39,260 --> 00:07:41,900 mayroong proyektong ito na tinatawag Kamusta Android. 120 00:07:41,900 --> 00:07:43,470 Pagkatapos doon ay ang maramihang mga folder dito. 121 00:07:43,470 --> 00:07:46,760 Ang mga talagang nag-aalala ka sa mga pinagmulan folder, 122 00:07:46,760 --> 00:07:54,540 ang resource folder, ang res, at sa ilang mga lawak ang libs folder para sa mga aklatan. 123 00:07:54,540 --> 00:08:00,070 At lang kaya kami sa parehong pahina na may 124 00:08:00,070 --> 00:08:03,240 kung ikaw ay lumikha ng isang bagong proyekto, 125 00:08:03,240 --> 00:08:08,270 maaari mong gawin ito dito mismo, kaya kung gusto kong tumawag ito HelloAndroid, 126 00:08:08,270 --> 00:08:11,100 at pagkatapos ito ay awtomatikong ginagawa ng isang buong bungkos ng impormasyon para sa amin. 127 00:08:11,100 --> 00:08:14,110 Ang mga pangalan ng pakete ay dapat na maging isang natatanging identifier 128 00:08:14,110 --> 00:08:16,710 na normal mapapasama sa website, kung mayroon kang isa. 129 00:08:16,710 --> 00:08:24,430 >> Halimbawa, ako ay tumawag ito net.cs50.helloandroid. 130 00:08:24,430 --> 00:08:30,070 At ako na ginawa proyektong ito nang isang beses. 131 00:08:30,070 --> 00:08:40,059 Okay, paumanhin. Sabihin tumawag ito HelloCS50. 132 00:08:40,059 --> 00:08:42,929 At pagkatapos ay hilingin sa mga bagay tulad ng anong uri ng mga icon na nais naming gawin. 133 00:08:42,929 --> 00:08:48,840 Ito ay dahil ang lahat ng mga interface ng Android Developer Tools, 134 00:08:48,840 --> 00:08:53,350 ang plugin na naidagdag namin sa Eclipse, upang maaari naming pumili mga bagay tulad ng 135 00:08:53,350 --> 00:08:58,320 ano icon gusto namin, at na nais pumunta sa malalim na kung gusto namin. 136 00:08:58,320 --> 00:09:04,360 Ngunit sa dulo, lamang gawin ang mga proyekto, 137 00:09:04,360 --> 00:09:07,040 at lahat ng bagay ay nagpapakita up dito mismo. 138 00:09:07,040 --> 00:09:10,030 Habang ako ay nagpakita sa kabilang screen, 139 00:09:10,030 --> 00:09:14,070 mayroon kaming ang source folder, at makikita ko makipag-usap tungkol sa kung ano ang lahat ng ito ay nangangahulugan na sa lalong madaling panahon, 140 00:09:14,070 --> 00:09:19,090 ngunit maaari mong makita na agad na ito ay tumatagal sa amin sa HelloCS50 screen. 141 00:09:19,090 --> 00:09:24,690 May ilang mga pindutan sa ibabaw dito para sa pagdaragdag ng teksto at teksto ng layout na patlang. 142 00:09:24,690 --> 00:09:28,910 Ito ay uri ng tulad ng XCode ngunit sa kasamaang palad hindi pa masyadong bilang streamlined. 143 00:09:28,910 --> 00:09:37,790 Ngunit ang mga clip ay ang iyong magiging kaibigan at ADT sa partikular na para sa paggawa nito. 144 00:09:37,790 --> 00:09:40,920 >> Okay, ang source folder kung saan ay 145 00:09:40,920 --> 00:09:43,820 ang Java file ay gaganapin, at ito ay talagang ang paglulunsad ng iyong programa. 146 00:09:43,820 --> 00:09:45,990 Ito ay isa lamang tulad ng controllers. 147 00:09:45,990 --> 00:09:49,020 Ang resource na folder o ang res ay kung saan magtatago kami ng mga layout ng screen, 148 00:09:49,020 --> 00:09:54,110 mga larawan, mga tunog, teksto, animation at lahat ng iba pa, libs, malinaw naman, mga aklatan. 149 00:09:54,110 --> 00:10:01,700 At ang manifest, ito ay ang paraan na ang system ng Android nakakaalam 150 00:10:01,700 --> 00:10:03,130 kung paano makipag-ugnay sa iyong app. 151 00:10:03,130 --> 00:10:07,980 Ito ay nagsasabi ito tungkol sa mga pahintulot at kung ano ang gawain ay talagang hindi mapatakbo. 152 00:10:07,980 --> 00:10:12,350 Ito ay ang lahat ng mga mahahalagang impormasyon na kinakailangan upang patakbuhin ang iyong mga app. 153 00:10:12,350 --> 00:10:17,990 Ang pinagmulan ay folder-kung namin palawakin ito bilang maaari mong makita dito mismo. 154 00:10:17,990 --> 00:10:23,920 At isang halimbawa na ang code ng magiging hitsura-ito ay ang default na code. 155 00:10:23,920 --> 00:10:27,930 Bilang namin na tinatawag na ito, MainActivity. 156 00:10:27,930 --> 00:10:33,230 Sa pamamagitan ng default, makakakuha tayo ng onCreate, na kung saan ay isang function na tinatawag na kapag ang aktibidad na ito na naglo-load, 157 00:10:33,230 --> 00:10:37,150 kaya nais mong tawagan onCreate (savedInstanceState). 158 00:10:37,150 --> 00:10:40,440 Ito ay ibalik ang anumang mga piraso ng impormasyon 159 00:10:40,440 --> 00:10:44,910 kung sakaling ang app ay naka-pause. 160 00:10:44,910 --> 00:10:48,790 >> Mayroong isang buong aktibidad buhay ikot ng tsart kung saan maaari kang tumingin sa 161 00:10:48,790 --> 00:10:50,380 kapag kumuha ka ng isang maliit na mas malalim sa loob nito, 162 00:10:50,380 --> 00:10:56,210 ngunit ang pinaka-mahalaga na linya ng code doon ay ang function na setContentView 163 00:10:56,210 --> 00:11:00,290 na kung saan ay i-load ang file na mapagkukunan para sa mga layout. 164 00:11:00,290 --> 00:11:03,590 Pagkatapos ano onCreate dito ay isa lamang paggawa ay ito sinasabi 165 00:11:03,590 --> 00:11:07,010 kapag lumikha ako sa aktibidad na ito gusto kong i-load ang layout. 166 00:11:07,010 --> 00:11:12,030 At kami ay makipag-usap tungkol sa kung ano ang layout na iyon sa isang segundo. 167 00:11:12,030 --> 00:11:16,230 Kung kami ay upang ilunsad na dito, mukha itong eksakto tulad nito, 168 00:11:16,230 --> 00:11:22,880 at sa pamamagitan ng default dahil namin ang paglalaho ginagawa ito at ADT paggawa nito para sa amin 169 00:11:22,880 --> 00:11:28,210 ito ay ang lahat ng boilerplate code na nilikha para sa atin, 170 00:11:28,210 --> 00:11:34,630 at maaari naming ilipat sa at baguhin ang mga bagay na gusto namin. 171 00:11:34,630 --> 00:11:38,190 Ang resource na folder, tulad ng sinabi ko, ito ay kung saan hawakan namin ang lahat ng mga layout, 172 00:11:38,190 --> 00:11:41,150 drawables sa mga tuntunin ng anumang uri ng mga larawan- 173 00:11:41,150 --> 00:11:46,360 sila ay tinatawag na drawables-at pagkatapos ay i-sound file, mga menu. 174 00:11:46,360 --> 00:11:51,170 Ito ay isang paraan ng isang buong bungkos ng XML sa isang masarap na pinagsunod-sunod fashion. 175 00:11:51,170 --> 00:11:58,030 Tulad ng iyong nakikita, mayroong. Hdpi, ldpi, mdpi xhdpi at mga folder para sa drawables. 176 00:11:58,030 --> 00:12:02,220 Ito ang mga iba't ibang density ng screen, kaya mataas density pixel per inch, 177 00:12:02,220 --> 00:12:05,710 mababang density, medium density, sobrang mataas na density. 178 00:12:05,710 --> 00:12:08,900 >> Ito ay, muli, upang maaari naming sinusuportahan ng lahat ng mga iba't ibang mga aparato, 179 00:12:08,900 --> 00:12:15,100 at may perpektong, magkakaroon ka ng iba't ibang mga imahe para sa bawat iba't ibang mga resolution. 180 00:12:15,100 --> 00:12:20,740 Layout ay kung saan namin isama ang lahat ng mga iba't ibang mga layout na gagamitin sa iba't-ibang mga gawain. 181 00:12:20,740 --> 00:12:24,150 Sila ay maaaring ring magsama ng mga layout para sa mga fragment, 182 00:12:24,150 --> 00:12:26,670 na nangangahulugan na bahagyang gawain talaga. 183 00:12:26,670 --> 00:12:29,610 Kung gusto mong gawin ng isang bagay na cool na tulad ng sa iyo sa tuwing i-rotate ang telepono 184 00:12:29,610 --> 00:12:33,900 gusto mo ito upang magkaroon ng isang iba't ibang mga layout ang maaari mong gawin layout-landscape bilang ibang folder, 185 00:12:33,900 --> 00:12:39,000 Android at awtomatikong ay may buong bungkos ng mga panuntunang ito sa loob ng folder na mapagkukunan, 186 00:12:39,000 --> 00:12:44,690 kaya ito ay kilala upang tumingin sa iba't ibang mga folder batay sa kasalukuyang setup ng telepono, 187 00:12:44,690 --> 00:12:46,740 kung anong uri ng hardware na ginagamit mo. 188 00:12:46,740 --> 00:12:52,350 Katulad nito, ang mga halaga-v11 dito at ang mga halaga-v14 189 00:12:52,350 --> 00:12:55,460 at ang default na halaga ng folder na ito ay para sa- 190 00:12:55,460 --> 00:13:01,730 well, mga halaga sa pamamagitan ng kanyang sarili, ito ay magiging ang mga default na halaga sa lahat ng mga bersyon ng operating system. 191 00:13:01,730 --> 00:13:06,390 Sa kabilang banda, v11 at v14 tumutugma sa Honeycomb 192 00:13:06,390 --> 00:13:08,780 at Ice Cream Sandwich, ayon sa pagkakabanggit. 193 00:13:08,780 --> 00:13:12,800 Muli, ang mga ito ay mga paraan na-sa loob ng mga folder na ito ay magkaibang mga string 194 00:13:12,800 --> 00:13:17,550 at estilo, sa gayon ay maaari mong i-customize ang hitsura ng iyong mga app 195 00:13:17,550 --> 00:13:22,660 o potensyal na kahit na pag-andar nito, bagaman na marahil maging isang masamang ideya, 196 00:13:22,660 --> 00:13:25,890 batay sa mga bersyon ng operating system. 197 00:13:25,890 --> 00:13:28,760 >> At ako uusapang tungkol sa lahat ng ito dito. 198 00:13:28,760 --> 00:13:35,870 Muli, drawable, raw, layout, mga halaga. 199 00:13:35,870 --> 00:13:41,380 Ang mga default, kung pumunta kami sa Android Kumusta o Kamusta CS50 ngayon 200 00:13:41,380 --> 00:13:43,310 ito ay tumingin tulad lamang ito. 201 00:13:43,310 --> 00:13:45,800 Ito ay kamustahin mundo. 202 00:13:45,800 --> 00:13:58,430 Tulad ng iyong nakikita dito mismo may tekstong Android 203 00:13:58,430 --> 00:14:04,420 ang teksto para sa view na teksto, na kung saan ay isa lamang ng isang label, 204 00:14:04,420 --> 00:14:06,900 ay kung ano ang gusto naming tumawag ito sa iOS. 205 00:14:06,900 --> 00:14:11,580 Ito ay may mga ito nakakatawa pagtatanda @ string / hello_world. 206 00:14:11,580 --> 00:14:16,200 Ito ay upang maaari naming-namin magtangkang kunin ang lahat ng mga string, 207 00:14:16,200 --> 00:14:19,740 ang lahat ng mga hard-code na mga string sa Android sa isang hiwalay na folder, 208 00:14:19,740 --> 00:14:23,610 na kung saan ang mangyayari sa maging sa values.strings. 209 00:14:23,610 --> 00:14:29,300 Kung titingnan namin dito, maaari naming makita na mayroon kami ng isang hard-code na string na naka-save dito 210 00:14:29,300 --> 00:14:33,910 para sa halo mundo, at ito ay tinatawag na kumusta mundo, at ito ay isang uri ng isang 211 00:14:33,910 --> 00:14:39,230 karaniwang disenyo ng desisyon sa maraming mga platform na gusto mong- 212 00:14:39,230 --> 00:14:41,780 string ay ang mga uri ng mga bagay na gusto naming potensyal na magagawang baguhin. 213 00:14:41,780 --> 00:14:48,050 Hindi namin nais upang makontrol F sa aming mga file source code sa aming XML. 214 00:14:48,050 --> 00:14:50,760 Gusto naming magagawang baguhin ito kapag makuha namin ng pagkakataon. 215 00:14:50,760 --> 00:14:53,640 >> Ito XML file, strings.xml, ay isang paraan ng extracting 216 00:14:53,640 --> 00:14:56,710 hard-code na mga string na kung hindi man ay maging sa aming mga mapagkukunan ng layout 217 00:14:56,710 --> 00:15:03,530 o sa aming mga source code. 218 00:15:03,530 --> 00:15:08,190 Ang manifest ay kung saan namin panatilihin ang mahahalagang impormasyon tungkol sa application. 219 00:15:08,190 --> 00:15:11,050 Kabilang dito ang mga pangalan ng package. Iyon ay may na maging isang natatanging identifier. 220 00:15:11,050 --> 00:15:16,020 Hindi tulad ng App Store para sa iOS ang mga pangalan ng mga application 221 00:15:16,020 --> 00:15:19,980 hindi na kailangang maging natatangi, at maaari mong sa katunayan baguhin ang pangalan ng iyong application 222 00:15:19,980 --> 00:15:23,570 matapos mong isumite ito, kaya kung sisimulan ko ang out na may galit na mga ibon, 223 00:15:23,570 --> 00:15:26,840 at pagkatapos ay gumawa ako ng isang update, at hindi ko nais upang i-release ng isang bagong bersyon 224 00:15:26,840 --> 00:15:34,230 Hulaan ko ang maaari kong tumawag ito ng galit na mga ibon 2 habang Ako ay nasa parehong cycle release. 225 00:15:34,230 --> 00:15:36,780 Gusto Ito lamang ipakita ang up bilang isang update. 226 00:15:36,780 --> 00:15:39,790 Ang tanging bagay na may upang maging natatangi ay ang pangalan ng package, 227 00:15:39,790 --> 00:15:41,280 na hindi maraming tao ang makakakita. 228 00:15:41,280 --> 00:15:44,680 Well, gusto mo lamang makita kung ang iyong hinahanap sa source code o kung mayroong ilang mga uri ng mga error. 229 00:15:44,680 --> 00:15:47,580 Ang mga bahagi isama ang mga aktibidad, kaya kami ay may idedeklara 230 00:15:47,580 --> 00:15:49,070 anumang uri ng aktibidad na ginagamit namin. 231 00:15:49,070 --> 00:15:53,430 Ito ay isang pahintulot uri ng bagay. 232 00:15:53,460 --> 00:15:58,150 >> Dahil Android ay walang mahigpit na ito proseso ng application 233 00:15:58,150 --> 00:16:02,210 para sa pagsusumite ng apps sa halip sila lamang ang lahat ng bagay batay off ng mga pahintulot 234 00:16:02,210 --> 00:16:04,300 at deklarasyon bagay sa manifest. 235 00:16:04,300 --> 00:16:06,380 Ang SDK bersyon ay mahalaga din. 236 00:16:06,380 --> 00:16:10,330 Maaari naming itakda paggamit bilang isang bagay SDK minimum na bersyon. 237 00:16:10,330 --> 00:16:16,010 Malinaw, na nais mong lumikha ng code 238 00:16:16,010 --> 00:16:18,570 at disenyo para sa mga mas bagong mga operating system. 239 00:16:18,570 --> 00:16:20,840 Marahil hindi ang pinakabago, siguro hindi halaya Bean. 240 00:16:20,840 --> 00:16:23,610 Siguro gusto mo upang mag-disenyo lalo na para sa Ice Cream Sandwich, 241 00:16:23,610 --> 00:16:27,120 bagaman ang mga ito ay medyo magkano ang parehong sa mga tuntunin ng mga pagpapasya disenyo 242 00:16:27,120 --> 00:16:30,550 at ang aktwal na mga aklatan at mga API. 243 00:16:30,550 --> 00:16:36,250 Ngunit sa halip na magkaroon ng mga tao 244 00:16:36,250 --> 00:16:40,050 ng orihinal na bersyon ng Android-tulad ng Donut paraan pabalik kapag- 245 00:16:40,050 --> 00:16:43,420 sino pa rin ang nangyari mang gamit na subukan upang i-download ang iyong application at pagkatapos ay sabihin 246 00:16:43,420 --> 00:16:46,160 hindi ito gumana sa aking telepono maaari mong itakda ang minimum na bersyon 247 00:16:46,160 --> 00:16:48,620 at ito ay maging tinapay mula sa luya o Ice Cream Sandwich 248 00:16:48,620 --> 00:16:53,300 o kahit anong kumportable kang pagsusumite. 249 00:16:53,300 --> 00:16:57,170 At ito ay isang halimbawa ng manifest. Maaari naming tingnan ang aktwal na isa sa isang bit. 250 00:16:57,170 --> 00:17:00,900 >> Okay, kailangan lang namin pumunta pasulong na may demo ngayon. 251 00:17:00,900 --> 00:17:08,900 Ito ang demo kung mo ang Google Android bumuo ng iyong unang app o isang bagay tulad na. 252 00:17:08,900 --> 00:17:12,089 Susubukan naming dumaan sa lahat ng bagay na nangyayari sa doon, 253 00:17:12,089 --> 00:17:17,690 at paumanhin, para lamang sa isang reference na dito alam ng Java sa anumang lawak? 254 00:17:17,690 --> 00:17:28,310 Okay, sa gayon ay Java coding ng mga bagong wika para sa karamihan ng mga tao galing sa CS50. 255 00:17:28,310 --> 00:17:31,850 Sa madaling sabi, upang pumunta sa ibabaw muli kung ano ang nakasulat dito, 256 00:17:31,850 --> 00:17:35,580 kung ano ang gusto naming gawin ay sa halip na ayusin ito kumusta application mundo 257 00:17:35,580 --> 00:17:38,620 na ang lahat ng ginagawa nito ay inilunsad nito at sinasabi nito kumusta mundo 258 00:17:38,620 --> 00:17:43,580 at sinasabi nito kumusta CS50 sa tuktok dahil iyon ang aktibidad pangalan 259 00:17:43,580 --> 00:17:47,190 kami ay pagpunta sa subukan na gumawa ng isang patlang ng teksto at ng isang pindutan 260 00:17:47,190 --> 00:17:50,680 kaya na kapag kami pindutin ang pindutan na ito ay tumagal ng teksto 261 00:17:50,680 --> 00:17:53,660 mula sa mga patlang ng teksto at maglunsad ng isang bagong aktibidad, at ito ay sinasabi 262 00:17:53,660 --> 00:17:58,380 kahit anong teksto na sinabi sa mga aktibidad, at ito ay medyo simple. 263 00:17:58,380 --> 00:18:00,650 Ito ay hindi masyadong kawili-wili. Hindi mo gugustuhing upang ilabas ang anumang app na tulad nito. 264 00:18:00,650 --> 00:18:03,880 Ngunit ito ay nagpapakita ng ilang mga mahahalagang bagay na disenyo. 265 00:18:03,880 --> 00:18:07,030 >> Magkakaroon kami upang makipag-ugnay sa manifest, na may mga file na layout, 266 00:18:07,030 --> 00:18:12,440 kasama ang source code, at maaari mong makita kung paano ilunsad ang isang aktibidad mula sa isa pang. 267 00:18:19,740 --> 00:18:23,060 Sisimulan naming may mga layout para sa aming unang aktibidad, 268 00:18:23,060 --> 00:18:27,320 na alam ko ito uri ng maliit, 269 00:18:27,320 --> 00:18:32,660 ngunit bilang maaari mong makita sa ngayon, ang lahat ng mga ito ay mayroon itong aming logo na aming ginawa, 270 00:18:32,660 --> 00:18:36,310 ang aktibidad ng pangalan, at sinasabi nito kumusta mundo sa sentro. 271 00:18:36,310 --> 00:18:40,400 Sa halip, ang unang pupuntahan ko gawin ito sa isang linear layout, 272 00:18:40,400 --> 00:18:42,350 isang kamag-anak layout, at ang mga ito ay ang lahat ng bagay 273 00:18:42,350 --> 00:18:45,870 maaari kang tumingin up at ay nagkakahalaga ng pagpunta sa paglipas ng sa isang punto sa mga tuntunin ng layout. 274 00:18:45,870 --> 00:18:47,310 Ito ay isang maraming tulad ng HTML. 275 00:18:47,310 --> 00:18:52,640 Sinabi namin ito ay hindi talagang nagkakahalaga ng pag-alam sa mga tuntunin ng isang program pakiramdam, 276 00:18:52,640 --> 00:18:55,840 ngunit may mga kaya maraming iba't ibang mga layout maaari mong kontrolin, 277 00:18:55,840 --> 00:18:57,970 at ito ay katulad lamang ng CSS sa mga tuntunin ng estilo. 278 00:18:57,970 --> 00:19:01,590 >> Mayroong maraming nagaganap lamang sa mga tuntunin ng aesthetics dito, 279 00:19:01,590 --> 00:19:08,930 at oo, ito ay nagkakahalaga ng pag-aaral, ngunit ito ay ang uri ng mga bagay na dapat mong hanapin up 280 00:19:08,930 --> 00:19:11,810 bilang pumunta sa iyo at sa tingin mo tulad ng kailangan mo ng bagong bagay. 281 00:19:11,810 --> 00:19:17,030 Maaari ko bang samantalahin ang ilan sa mga tool sa ADT dito ng hindi bababa sa magsimula sa. 282 00:19:17,030 --> 00:19:21,930 Magtatagal ako gumawa ng isang patlang ng teksto, at ako ay gumawa ng isang pindutan. 283 00:19:21,930 --> 00:19:24,100 Ilagay ang mga ito sa tabi mismo ng isa't isa. 284 00:19:24,100 --> 00:19:28,200 Sila na baguhin ang laki nang naaangkop. 285 00:19:28,200 --> 00:19:31,320 Paumanhin, muli, babalik sa mga pagkakaiba sa pagitan ng linear layout at mga kamag-anak layout, 286 00:19:31,320 --> 00:19:34,830 isang linear layout ay nagbibigay ng kaunti pa sa pag-andar 287 00:19:34,830 --> 00:19:38,720 sa mga tuntunin ng pagpuno sa espasyo at tinitiyak 288 00:19:38,720 --> 00:19:42,790 kami posisyon bagay pahalang o patayo. 289 00:19:42,790 --> 00:19:46,130 Ang malaking pagkakaiba sa pagitan ng isang linear layout at isang kamag-anak layout 290 00:19:46,130 --> 00:19:50,250 ay ang kamag-anak layout posisyon ang lahat ng bagay na may kaugnayan sa iba pang mga tanawin, 291 00:19:50,250 --> 00:19:52,630 at ang magandang bagay tungkol dito ay na ito ay tumatagal ng mas kaunting oras upang gumuhit 292 00:19:52,630 --> 00:19:56,120 dahil ang mga operating system ay tumitingin sa lahat ng code at sabi ni ito napupunta 293 00:19:56,120 --> 00:19:58,270 kamag-anak upang ito dito, dito. 294 00:19:58,270 --> 00:20:03,170 Ito ay nangangahulugan na ito ay ginagawang mas kaunting mga sukat kaysa ang maramihang mga nested linear layout, 295 00:20:03,170 --> 00:20:06,840 kung saan Gusto ko na kailangang gawin kung Nais kong bagay upang pumunta patayo dito. 296 00:20:06,840 --> 00:20:10,510 >> Ako nai ilang mga bagay na pagpunta nang pahalang, kaya Gusto ko kailangan ng ibang linear layout 297 00:20:10,510 --> 00:20:14,560 i-nest ang mga ito nang patayo, ngunit kung ako ay paggawa ng isang kamag-anak layout maaari kong sabihin 298 00:20:14,560 --> 00:20:18,140 panatilihin ito sa kaliwa, ito sa kanan at ang mga bagay na ito sa ibaba. 299 00:20:18,140 --> 00:20:21,850 Pero dahil gusto ko ang mga ito upang punan sa ngayon ako pagpunta sa gumamit ng isang linear layout, 300 00:20:21,850 --> 00:20:24,510 at maaari mong makita ito na ginagawa ng maraming mga bagay na ito para sa amin. 301 00:20:24,510 --> 00:20:28,890 Lahat ng mga tanawin kailangan upang magkaroon ng isang ari-arian ng lapad at taas, 302 00:20:28,890 --> 00:20:33,410 at nangyari ito upang magkaroon ng isang bigat ng 1, at ito ay may timbang na 1 303 00:20:33,410 --> 00:20:36,050 upang ito ay pumupuno sa buong puwang. 304 00:20:36,050 --> 00:20:38,460 Ngunit ang lapad at taas ang pinakamahalaga. 305 00:20:38,460 --> 00:20:45,880 Ito ID field dito mismo ay hindi mahalaga sa loob ng aktwal na layout 306 00:20:45,880 --> 00:20:49,060 maliban na lamang kung ginagamit namin ang isang kamag-anak layout at sinasabi maaari naming sumangguni 307 00:20:49,060 --> 00:20:52,990 isang view posisyon sa reference sa isa pang. 308 00:20:52,990 --> 00:20:56,170 Kung kami ay nagkaroon ng isang kamag-anak layout kami maaaring sabihin posisyon na ito sa ibaba ang isang ito 309 00:20:56,170 --> 00:20:59,390 o itaas ang ID na ito, ngunit ID na ito ay magiging mahalaga 310 00:20:59,390 --> 00:21:01,660 kapag ginagamit namin ito sa aming mga code dahil maaari naming sumangguni 311 00:21:01,660 --> 00:21:05,610 ang mga indibidwal na mga view sa ganitong paraan. 312 00:21:05,610 --> 00:21:10,350 >> At pagkatapos ay maaari mong makita ang requestFocus tag, na kung saan ay isang bagay na ikaw marahil nakita sa pset 7. 313 00:21:10,350 --> 00:21:15,370 Nagkaroon ng auto tag focus o isang bagay kasama ang mga linya para sa isa sa mga patlang. 314 00:21:15,370 --> 00:21:22,100 At ang isang bagay, siyempre, maaari naming gawin tulad ng sa HTML, 315 00:21:22,100 --> 00:21:25,660 at notice ang isa sa mga magaling na mga bagay tungkol sa ADT ay na ito autocompletes dito. 316 00:21:25,660 --> 00:21:29,930 Siguro hindi bilang mabuti bilang ito ginawa sa XCode, ngunit ginagawa nito gayunman, 317 00:21:29,930 --> 00:21:32,860 at maaari naming sabihin pahiwatig at pagkatapos ay bigyan ito ng isang uri ng string 318 00:21:32,860 --> 00:21:37,070 gustong magsulat ng isang mensahe, 319 00:21:37,070 --> 00:21:41,300 at kung bibigyan ko ito ng sandali, mapapansin din na makakuha ako ng kaunti error dito 320 00:21:41,300 --> 00:21:44,610 na nagsasabi na dapat naming gamitin ang isang string mapagkukunan para sa, 321 00:21:44,610 --> 00:21:48,820 kaya kung hayaan kong gawin ito ang ilan sa mga mahirap na trabaho para sa akin 322 00:21:48,820 --> 00:21:57,320 Maaari ko bang piliin ang string na ito, gawin refractor Android at Extract Android string. 323 00:21:57,320 --> 00:22:00,570 Maaari ko bang bigyan ito ng pangalan na, magsulat ng isang mensahe, 324 00:22:00,570 --> 00:22:04,180 at kung ano ito ngayon ay ay pinalitan nito na hard-code na string 325 00:22:04,180 --> 00:22:07,980 na may isang reference sa mga string sa. ang string ng xml file, 326 00:22:07,980 --> 00:22:10,200 na nangangahulugan na ngayon ito ay dito. 327 00:22:10,200 --> 00:22:15,560 >> At alam ko na parang isang maliit na maliit at tulad ng dagdag na trabaho sa puntong ito, 328 00:22:15,560 --> 00:22:17,840 ngunit kapag mayroon kang isang buong grupo ng mga bagay, ang maramihang mga string, 329 00:22:17,840 --> 00:22:20,750 na talagang mahalaga, at lalo na para sa localization 330 00:22:20,750 --> 00:22:26,920 dahil ang bilang nabanggit ko mas maaga, Android ay isang napaka globally ginamit na operating system 331 00:22:26,920 --> 00:22:35,950 na maaari mo lamang gawin ang mga halaga-en o halaga-SP 332 00:22:35,950 --> 00:22:44,320 o isang bagay na para sa Ingles o Espanyol o iba pang mga wika. 333 00:22:44,320 --> 00:22:50,210 At pagkatapos mo marahil ay hindi nagkaroon ng karanasan na ito pa 334 00:22:50,210 --> 00:22:53,030 dahil hindi namin ginawa magkano ang JavaScript sa mga tuntunin ng web programming, 335 00:22:53,030 --> 00:22:56,850 ngunit maaari rin naming gawin ang field na ito na tinatawag na onClick para sa pindutan, 336 00:22:56,850 --> 00:23:02,350 at ito ay isang paraan ng tumutukoy sa loob ng aming layout 337 00:23:02,350 --> 00:23:06,570 na gusto namin sa isang tiyak na function na upang tawagin sa aming source code. 338 00:23:06,570 --> 00:23:09,420 Pupunta ako sa call na ito sendMessage, 339 00:23:09,420 --> 00:23:13,390 at upang gawin ito trabaho na nangangahulugan sa pangunahing aktibidad dito 340 00:23:13,390 --> 00:23:19,180 Ako kailangang lumikha ng isang function na ay pampubliko 341 00:23:19,180 --> 00:23:22,250 upang maaari itong ma-access sa pamamagitan ng mga layout. 342 00:23:22,250 --> 00:23:25,930 Ito ay walang bisa dahil ikaw lamang ang hindi nais ito upang bumalik kahit ano. 343 00:23:25,930 --> 00:23:37,760 Susubukan naming tumawag ito sendMessage, at ito ay tumatagal ng isang view, 344 00:23:37,760 --> 00:23:43,690 na kung saan ay isang uri ng konteksto na maaari naming anchor ang pamamaraan na ito 345 00:23:43,690 --> 00:23:47,160 sa indibidwal na view kapag kami ay tumatakbo ito. 346 00:23:47,160 --> 00:23:50,090 >> At hindi ko alam kung iyong napansin-maayos, hindi mo na nakapansin, 347 00:23:50,090 --> 00:24:02,370 ngunit sa puntong ito dito mismo 348 00:24:02,370 --> 00:24:06,930 tanaw na ito ay isang uri na hindi pa na kasama, 349 00:24:06,930 --> 00:24:10,630 at siyempre, mo ang lahat ng malaman mula sa CS50 tungkol sa hindi kabilang ang mga uri. 350 00:24:10,630 --> 00:24:13,120 Ang magaling na bagay tungkol sa IDE tulad ng Eclipse ay na 351 00:24:13,120 --> 00:24:17,520 kung nakalimutan mong isama ang isang uri ito ay salungguhit na may isang maliit na pulang squiggly 352 00:24:17,520 --> 00:24:19,680 at pagkatapos ay magbibigay sa iyo ng pagpipilian upang i-import ang view. 353 00:24:19,680 --> 00:24:23,130 Ang isang mabilis na paraan ng paggawa na ang control shift Oh, at ito ay i-import 354 00:24:23,130 --> 00:24:27,070 lahat ng mga file na ito ay kailangang. 355 00:24:27,070 --> 00:24:33,670 Ngayon na kami ay may function na ito sendMessage, 356 00:24:33,670 --> 00:24:46,560 na kung saan ay pagpunta upang magpadala ng mga mensahe mula sa MainActivity sa isang bagong aktibidad, 357 00:24:46,560 --> 00:24:55,230 kami ay pagpunta sa may upang gamitin ang isang layunin upang ilunsad ang bagong aktibidad mula sa isang ito, 358 00:24:55,230 --> 00:25:02,240 kaya namin marahil nais na lumikha ng isang pare-pareho ang global o din lalo na isang pampublikong pare-pareho 359 00:25:02,240 --> 00:25:06,240 na makakatulong sa amin kung paano namin ang pagpunta sa sumangguni sa string 360 00:25:06,240 --> 00:25:09,090 dahil kapag lumikha kami ng isang layunin hindi kami lamang ang pagtawag ng isang bagong aktibidad, 361 00:25:09,090 --> 00:25:11,520 ngunit maaari rin naming bigyan ito ng isang bundle ng mga impormasyon. 362 00:25:11,520 --> 00:25:14,720 Ang bundle ay talagang ang term na ginagamit ng Android, 363 00:25:14,720 --> 00:25:21,470 at ito ay isang paraan ng pagsabi bigyan ito ng dagdag na data, na kung saan hindi ito maaaring maging ng isang napaka-sopistikadong mga uri ng data, 364 00:25:21,470 --> 00:25:24,510 ngunit maaari naming tiyak isama booleans o mga string o ints. 365 00:25:24,510 --> 00:25:29,750 Iyon uri ng bagay. 366 00:25:29,750 --> 00:25:34,230 >> Huwag mag-atubiling magtanong tungkol sa anuman sa mga qualifiers dito, 367 00:25:34,230 --> 00:25:36,900 pampubliko, pangwakas, static. 368 00:25:36,900 --> 00:25:38,610 Pampublikong ay ang mahalagang isa. 369 00:25:38,610 --> 00:25:47,090 Ito ay nangangahulugan na maaari naming ma-access ang variable mula sa iba pang mga file source code 370 00:25:47,090 --> 00:25:49,590 tulad ng kapag lumikha kami ng isang bagong aktibidad. 371 00:25:49,590 --> 00:25:52,190 Maaari naming sumangguni sa string sa loob ng file na ito. 372 00:25:52,190 --> 00:25:57,160 Kung ito ay pribado, ito ay nangangahulugan na ito ay limitado sa mga indibidwal na ito na file dito. 373 00:25:57,160 --> 00:26:02,430 Ngunit kailangan naming tumawag ito ng isang bagay na tulad ng dagdag na mensahe. 374 00:26:16,260 --> 00:26:23,300 Ngayong nakagawa kami ng function na ito, at kung namin i-click ang pindutan, function na ito ay tinatawag na. 375 00:26:23,300 --> 00:26:27,970 Ngunit hindi pa namin tapos anumang bagay, nang walang alinlangan, may mga function. 376 00:26:27,970 --> 00:26:33,130 Ano ang gusto naming gawin ngayon ay lumikha ng isang bagong aktibidad, 377 00:26:33,130 --> 00:26:35,350 ang aktibidad na iyon ay aktwal na mailunsad. 378 00:26:35,350 --> 00:26:44,330 Sa Eclipse maaari naming sabihin bago, Android aktibidad, blangko aktibidad. 379 00:26:44,330 --> 00:26:46,530 Maaari naming bigyan ito ng isang pangalan. 380 00:26:46,530 --> 00:26:57,050 Sabihin tumawag ito sa aming mga resulta ng aktibidad. 381 00:26:57,050 --> 00:27:04,430 At pagkatapos na ito hierarchical patlang magulang ay isang paraan ng pagtukoy 382 00:27:04,430 --> 00:27:08,180 kung paano ang mga aktibidad na may kaugnayan sa bawat isa. 383 00:27:08,180 --> 00:27:11,020 Dahil isa ito ay ilulunsad mula sa iba pang mga aktibidad 384 00:27:11,020 --> 00:27:27,520 dapat naming tiyakin na ito ay may mga magulang pangunahing aktibidad. 385 00:27:27,520 --> 00:27:31,220 >> At maaari kong nag-click sa susunod na field doon, na sana ay sinabi sa amin 386 00:27:31,220 --> 00:27:33,830 ang ilang mga opsyonal na field din ito ay kabilang ang, 387 00:27:33,830 --> 00:27:38,800 pero ang gandang bagay tungkol sa ADT, muli, ay kung mag-scroll down na ako dito 388 00:27:38,800 --> 00:27:45,740 sa manifest tandaan na ang lahat ng mga ito ay talagang kasama sa pamamagitan ng default 389 00:27:45,740 --> 00:27:48,930 kapag kami orihinal na nilikha ang proyekto, 390 00:27:48,930 --> 00:27:53,090 at ngayon dahil ginamit namin ito lumikha ng isang bagong aktibidad sa halip na lamang 391 00:27:53,090 --> 00:27:58,610 pagdaragdag ng aming sariling mga klase file dahil nagpunta kami sa pamamagitan ng kanilang GUI para sa paggawa na ito 392 00:27:58,610 --> 00:28:01,930 ito ay idinagdag sa lahat ng ito sa manifest para sa atin, 393 00:28:01,930 --> 00:28:06,020 na kung saan ay nangangahulugan lamang na ngayon ang operating system ay hindi magreklamo 394 00:28:06,020 --> 00:28:09,400 kapag sinusubukan naming ilunsad ang aktibidad na ito. 395 00:28:09,400 --> 00:28:14,620 At ito rin, siyempre, nagbigay ito ng isang label, na kung saan din ay nagpapakita up sa mga string. 396 00:28:14,620 --> 00:28:17,340 Ginagawa ng maraming mga bagay sa likod ng pagtatapos para sa amin. 397 00:28:17,340 --> 00:28:20,140 Pa Rin, ngayon na mayroon kami sa resultang ito aktibidad pati na rin, 398 00:28:20,140 --> 00:28:23,810 ang aktwal na source code file sa folder ng pinagmulan, 399 00:28:23,810 --> 00:28:33,540 at maaari mong makita-sa panandaliang pindutin ito sa- 400 00:28:33,540 --> 00:28:37,790 sapagkat hindi namin sinabi ito tungkol ito hierarchical magulang 401 00:28:37,790 --> 00:28:46,640 Ibinigay ito sa field na ito android.r.ide.home sa bagay na ito onOption napiling. 402 00:28:46,640 --> 00:28:49,020 >> Ano ito ay isa lamang sinasabi ay mayroong isang menu button ngayon 403 00:28:49,020 --> 00:28:53,110 na sa tuktok na kaliwang sulok ng screen 404 00:28:53,110 --> 00:29:02,220 kung pumunta ako pabalik sa PowerPoint kung saan kami unang uusapang tungkol sa pagkilos bar 405 00:29:02,220 --> 00:29:05,380 dahil sa hierarchical magulang ngayon ay may isang maliit na arrow pabalik dito 406 00:29:05,380 --> 00:29:10,610 at ito ay naki-click kaya dapat namin magagawang-matapos naming talaga tumakbo ang app na ito- 407 00:29:10,610 --> 00:29:15,360 bumalik, at ito ay isang paraan ng pag-save sa amin ng kaunting code doon. 408 00:29:26,220 --> 00:29:40,180 Ngayon na ito sa loob-na rin, tila na nagrereklamo tungkol na para sa isang sandali. 409 00:29:40,180 --> 00:29:43,910 Sabihin na magkomento out. 410 00:29:43,910 --> 00:29:48,260 Ngayon, upang aktwal na nakikipag-ugnayan sa mga aktibidad 2, 411 00:29:48,260 --> 00:29:55,020 mayroon kaming upang lumikha ng isang layunin na kung saan ay kasama ang lahat ng data na ito. 412 00:29:55,020 --> 00:29:58,950 Sa ngayon sendMessage Pupunta ako sa cruise sa pamamagitan ng ilang mga piraso ng code 413 00:29:58,950 --> 00:30:00,700 at ipaliwanag na bilang pumunta ko. 414 00:30:00,700 --> 00:30:06,280 Ang isang layunin, bilang ko sinabi, ay isang paraan upang ilunsad ang isang aktibidad mula sa isa pang. 415 00:30:06,280 --> 00:30:10,000 Layunin ay ang uri. Kami ay ang paglikha ng isang variable myIntent. 416 00:30:10,000 --> 00:30:13,980 >> At ito ay talagang isang bagay, na kung saan ay kung bakit mayroon kaming tawagan sa bagong. 417 00:30:13,980 --> 00:30:18,500 Ito ay karaniwang Java paggamit doon, na maaaring tumagal ng kaunting nagsisimula ginamit upang. 418 00:30:18,500 --> 00:30:23,900 Ang ibig sabihin nito na aming ginagamit sa aktibidad o mga klase MainActivity, 419 00:30:23,900 --> 00:30:28,630 at layunin sa paraan na tumatagal ang aktibidad ito ng pagpunta mula sa 420 00:30:28,630 --> 00:30:36,060 at ang aktibidad na ito ay pagpunta sa, na tinatawag naming ResultActivity, 421 00:30:36,060 --> 00:30:38,170 at iyon ay ang sarili nitong class. 422 00:30:38,170 --> 00:30:41,720 Isama na. 423 00:30:41,720 --> 00:30:47,370 At pagkatapos ay bilang ko nabanggit bago, aming ibinigay na ID sa field na pag-edit ng teksto 424 00:30:47,370 --> 00:30:53,710 at ang view ng teksto, kaya upang makuha ang programming 425 00:30:53,710 --> 00:31:01,860 ang teksto na umiiral sa editText 426 00:31:01,860 --> 00:31:06,710 ginagamit namin ito function na tinatawag na findViewByID, 427 00:31:06,710 --> 00:31:13,660 na kung saan ay katulad sa isang bagay na kailangan mong gamitin kapag sinusubukan upang makakuha ng mga patlang mula sa DOM. 428 00:31:13,660 --> 00:31:17,560 Marahil David uusap tungkol dito sa panayam. 429 00:31:17,560 --> 00:31:26,600 Ngunit ito lamang ay isang paraan ng pagkuha ng mga na-ang dahilan kung bakit namin ita-tag ang mga bagay na ito sa mga patlang. 430 00:31:26,600 --> 00:31:31,110 Id.editText1. 431 00:31:31,110 --> 00:31:35,220 Mayroon itong autocompleting para sa akin doon. 432 00:31:35,220 --> 00:31:42,010 >> At pagkatapos ay gagamitin din namin magsama-editText ito ngayon na mayroon kami sa field 433 00:31:42,010 --> 00:31:47,640 sa loob ng aming programa, ang lahat ng findViewByID na ginawa noon ay isa lamang 434 00:31:47,640 --> 00:31:50,870 maaari mong isipin ito bilang magbibigay sa amin ng isang reference sa na editText. 435 00:31:50,870 --> 00:31:54,570 Ngayon gusto naming makuha ang string o ang mensahe 436 00:31:54,570 --> 00:32:00,670 sa loob na editText kung saan maaari naming gawin sa pamamagitan ng paggamit ng- 437 00:32:00,670 --> 00:32:03,360 maaari mong isipin editText bilang isang struct- 438 00:32:03,360 --> 00:32:07,600 tinatawag naming ito ang isang bagay sa Java na may isang buong grupo ng mga iba't ibang mga paraan 439 00:32:07,600 --> 00:32:10,650 o mga patlang at mga katangian na nakalakip sa ito. 440 00:32:10,650 --> 00:32:15,510 Kapag sinasabi ko editText. ito ay nagbibigay sa akin ng pagkakataon na ma-access 441 00:32:15,510 --> 00:32:19,770 isang paraan tulad ng getText, na kung saan ay makakakuha ng kasalukuyang teksto 442 00:32:19,770 --> 00:32:23,990 sa na editText at pagkatapos ay i-convert na tahasan 443 00:32:23,990 --> 00:32:26,520 sa isang string, at hindi na namin nai-save ang mensahe. 444 00:32:26,520 --> 00:32:32,730 Ngayon namin talagang nais na gawin ang isang bagay na may layunin na aming ginawa lang sandali ang nakalipas. 445 00:32:32,730 --> 00:32:40,250 Ay ko bang ilagay ang dagdag na bilang ito ay tinatawag na sa ang layunin, 446 00:32:40,250 --> 00:32:43,330 kung saan, muli, tulad ng sinabi ko bago, ito ay isang paraan ng paglikha ng bundle 447 00:32:43,330 --> 00:32:45,980 kasama ang maramihang mga data. 448 00:32:45,980 --> 00:32:50,920 Dagdag na mensahe ay ang aming tag upang malaman namin kung ano ang aming sine-save ito sa ilalim, 449 00:32:50,920 --> 00:32:56,700 at pagkatapos ay ako kabilang ang mensahe. 450 00:32:56,700 --> 00:33:04,870 >> At pagkatapos ay maaari naming talagang simulan ang aktibidad sa pamamagitan ng pagbibigay ito ang parameter myIntent. 451 00:33:04,870 --> 00:33:10,630 At ito ay tunay na ilunsad ang aktibidad, kaya ngayon dahil ako upgrade sa Windows 8 452 00:33:10,630 --> 00:33:15,870 maaaring magkaroon ng ilang mga error na lalabas sa madaling sabi, ngunit subukan na huwag pansinin ang mga ito. 453 00:33:28,010 --> 00:33:30,310 At ito ay ang Android emulator. 454 00:33:30,310 --> 00:33:33,540 Sana ang code ay talagang pop up sa ilang sandali. 455 00:33:33,540 --> 00:33:36,680 Muli, hindi papansin ang lahat ng mga maliit na bagay. 456 00:33:36,680 --> 00:33:42,290 Ngunit ang Android emulator maaari mong tularan ang anumang bersyon ng operating system 457 00:33:42,290 --> 00:33:45,180 mula sa mga pinakabagong mga bago, Donut, tinapay mula sa luya. 458 00:33:45,180 --> 00:33:49,640 Ito ay halaya Bean 4.1. 459 00:33:49,640 --> 00:33:53,150 Ngunit bilang maaari mong makita sa ngayon, ito ay isang bagay na aming ginawa. 460 00:33:53,150 --> 00:33:55,780 Ito ay ang MainActivity, ang editText, ang pindutan. 461 00:33:55,780 --> 00:34:01,550 Maaari ba akong mag-type ng isang bagay dito, ngunit kung ano kami ay kulang sa puntong ito? 462 00:34:01,550 --> 00:34:05,190 Ginawa namin ang mga patlang sa MainActivity na pupuntahan ipadala ang mensahe 463 00:34:05,190 --> 00:34:08,570 upang ang iba pang mga aktibidad, ngunit sa puntong ito 464 00:34:08,570 --> 00:34:12,330 hindi pa namin tapos anumang bagay sa iba pang mga aktibidad, kaya hindi ito ay pagpunta sa makatanggap ng kahit ano. 465 00:34:12,330 --> 00:34:18,800 Sabihin tapusin na ng bahaging iyon bago namin ilipat sa. 466 00:34:18,800 --> 00:34:25,760 >> Ito resulta ng aktibidad, kung ano ang kailangan nating gawin ay kailangan nating gawin ay kailangan nating- 467 00:34:25,760 --> 00:34:30,070 maaari naming ring sumangguni sa ang layunin sa loob ng aktibidad na ito, 468 00:34:30,070 --> 00:34:33,580 kaya kami ay may upang makuha ang layunin, na kung saan ay talagang simple. 469 00:34:33,580 --> 00:34:40,780 Ito ay isang function na kasama sa class na aktibidad, 470 00:34:40,780 --> 00:34:47,610 upang maaari naming sabihin lamang ang "Kumuha ng mga mensahe mula sa mga layunin." 471 00:34:47,610 --> 00:34:56,260 "Layunin myIntent = getIntent." 472 00:34:56,260 --> 00:35:00,030 At ito ay magbibigay sa amin-myIntent ngayon ay isang bagay, 473 00:35:00,030 --> 00:35:05,380 na kung saan ay isang reference sa mga layunin na humantong sa amin na ang aktibidad na ito. 474 00:35:05,380 --> 00:35:10,130 MainActivity tawag at nagbibigay ng dagdag na impormasyon upang magresulta aktibidad. 475 00:35:10,130 --> 00:35:14,070 Resulta ng aktibidad ngayon ay tumitingin sa layunin na humantong ito dito, 476 00:35:14,070 --> 00:35:23,540 at maaari naming ma-access ang mensahe na aming nilikha sa iba pang isa, 477 00:35:23,540 --> 00:35:26,370 getStringExtra, at ang kalooban autocomplete para sa akin. 478 00:35:26,370 --> 00:35:31,190 At pagkatapos ay matandaan, ang paraan namin na-tag na bit ng data 479 00:35:31,190 --> 00:35:38,400 ay sa pamamagitan ng pagbibigay ito sa field na ito dito mismo, ang pampublikong string, 480 00:35:38,400 --> 00:35:42,080 kung saan ay ang tag para sa mga string kami talaga kasama. 481 00:35:42,080 --> 00:35:48,450 >> Kung sinasabi ko MainActivity.Extra_Message 482 00:35:48,450 --> 00:35:52,200 ito ay doon, at ito ay isang uri ng tulad ng pangalan ng parameter 483 00:35:52,200 --> 00:35:55,330 kapag ipinasa namin ang code mula sa controller sa template, 484 00:35:55,330 --> 00:35:57,680 kapag gusto naming sabihin pamagat arrow isang bagay. 485 00:35:57,680 --> 00:36:01,140 Ito ay ang parehong uri ng mga ideya doon. 486 00:36:01,140 --> 00:36:07,130 Ngayon, tandaan na ito. 487 00:36:07,130 --> 00:36:12,230 Kami rin ay auto ito nilikha o awtomatikong nakabuo ng code 488 00:36:12,230 --> 00:36:16,410 para sa mga resulta ng aktibidad, kung saan kasama ang view ng teksto sa gitna 489 00:36:16,410 --> 00:36:19,690 na nagsasabing kumusta mundo. 490 00:36:19,690 --> 00:36:27,510 Maaari naming potensyal na gumawa ng mas malaki. 491 00:36:27,510 --> 00:36:33,980 Natin na gawin muna. 492 00:36:33,980 --> 00:36:39,550 Maaari naming gawin itong 40 density independiyenteng pixels. 493 00:36:39,550 --> 00:36:42,670 Tayo'y makita, na sobrang malaking. Iyon ay magiging okay. 494 00:36:42,670 --> 00:36:48,180 At pagkatapos ay sa pagkakasunud-sunod na banggitin ang mga ito indibidwal na view ng teksto sa loob ng aming code 495 00:36:48,180 --> 00:36:53,890 kailangan nating bigyan ito ng isang ID, 496 00:36:53,890 --> 00:36:58,350 at upang gawin iyon sinasabi namin @ + id, na nangangahulugan na namin italaga ito ID. 497 00:36:58,350 --> 00:37:02,480 Kung lang namin sinabi @ id Gusto ito ay ipinapalagay namin na tumutukoy ng isang ID na ay umiiral na, 498 00:37:02,480 --> 00:37:07,760 at sabihin itawag sa aming resultTextView. 499 00:37:07,760 --> 00:37:10,570 At mapansin na sa XML walang pangangailangan para sa semicolons o kahit ano. 500 00:37:10,570 --> 00:37:12,380 Lahat ng bagay ay sa loob ng mga tag na ito. 501 00:37:12,380 --> 00:37:15,530 Ito ay halos kapareho sa HTML ng maraming Senses. 502 00:37:15,530 --> 00:37:22,760 >> Tatagal ng kaunting nagsisimula ginagamit upang, ngunit kalaunan makikita mo pakiramdam medyo kumportable ito. 503 00:37:22,760 --> 00:37:31,320 Sabihin-update ang teksto para sa aming tingnan ang resulta ng teksto, 504 00:37:31,320 --> 00:37:35,650 at tulad ng ginawa namin kapag kami ay nakakakuha na patlang ng teksto ng pag-edit sa aming iba pang mga aktibidad 505 00:37:35,650 --> 00:37:46,630 sa MainActivity dito kami ay din naman- 506 00:37:46,630 --> 00:37:54,890 ipapakita namin mahanap ang view sa pamamagitan ng ID. 507 00:37:54,890 --> 00:37:59,640 At R, kung sakaling hindi ko banggitin ang bago, ay ang reference sa aming mga mapagkukunan folder, 508 00:37:59,640 --> 00:38:05,350 at pagkatapos ay ang ID ng isang reference sa lahat ng bagay sa folder ng mga mapagkukunan, ang lahat ng mga ID, 509 00:38:05,350 --> 00:38:10,060 at resultTextView. 510 00:38:10,060 --> 00:38:13,010 At tulad ng dati, resultTextView ay isang bagay, 511 00:38:13,010 --> 00:38:15,780 na nangangahulugan na ito ay may lahat ng mga katangian na nauugnay dito. 512 00:38:15,780 --> 00:38:20,610 Kapag ginagamit namin getText para sa teksto ng pag-edit para sa patlang ng teksto o ang view ng teksto 513 00:38:20,610 --> 00:38:23,980 maaari naming talagang gamitin setText, 514 00:38:23,980 --> 00:38:26,960 at pagkatapos namin na natagpuan ang mensahe mula sa mga layunin, 515 00:38:26,960 --> 00:38:35,760 sa gayon ay maaari kong sabihin na mensahe, at ito ay talagang itakda ang mensahe. 516 00:38:35,760 --> 00:38:41,820 >> Tumagal ng ilang sandali upang ilunsad, at pagkatapos ay maaari naming makita kung o hindi ito nagka-crash, 517 00:38:41,820 --> 00:38:48,670 subalit ang anumang mga katanungan tungkol sa prosesong iyon doon, na isang uri ng pakikipag-ugnayan? 518 00:38:48,670 --> 00:38:51,490 Sa maraming mga paraan ito ay tuwiran. 519 00:38:51,490 --> 00:38:53,960 Ang dahilan kung bakit ako pupunta sa pamamagitan ng isang bagay na medyo simple 520 00:38:53,960 --> 00:38:57,330 ay, muli, dahil makakakuha ka upang makita ang mga pakikipag-ugnayan sa pagitan ng mga layout, 521 00:38:57,330 --> 00:38:59,520 ang source code, kung paano mo reference bagay 522 00:38:59,520 --> 00:39:07,680 at marahil makakuha ng isang maliit na pagkakalantad sa kung paano gumagana ang Java doon. 523 00:39:07,680 --> 00:39:16,500 Kung ako talaga mag-type ng isang bagay in dito, tulad ng ohai, at pagkatapos ko i-click ang pindutan, 524 00:39:16,500 --> 00:39:22,260 ito inilunsad ang isang bagong aktibidad, at na view ng teksto sabi ohai. 525 00:39:22,260 --> 00:39:27,640 Iyon ay napaka-simple, ngunit sana ay matapos na halimbawa 526 00:39:27,640 --> 00:39:32,310 ka uri ng mga makita kung paano pakikipag-ugnayang ito ang gumagana, at ngayon na ang gulo ng mga file 527 00:39:32,310 --> 00:39:36,870 sa kaliwang bahagi para sa lahat ng mga folder na proyekto, sana alam mo kung saan upang tumingin ngayon. 528 00:39:36,870 --> 00:39:38,700 Ito ay ang iyong lugar sa source code. 529 00:39:38,700 --> 00:39:41,760 >> Layout talaga ang tanging bagay na kailangan mong harapin ang hanggang sa isinama mo ang mga imahe 530 00:39:41,760 --> 00:39:46,370 at ang drawables o anumang, at ang mga halaga, na isasama ang mga string, 531 00:39:46,370 --> 00:39:51,960 bilang aming nabanggit, at pagkatapos ay estilo ay isang bagay na uri ng tulad ng CSS. 532 00:39:51,960 --> 00:39:56,410 Tugunan ito kapag nais mo, ngunit hanggang sa tingin mo ay kumportable sa pagdaragdag ng dagdag na likas na talino 533 00:39:56,410 --> 00:40:02,520 sa iyong application hindi na kailangang mag-alala tungkol dito masyadong maraming. 534 00:40:02,520 --> 00:40:07,410 Lamang upang tapusin ang isa iba pang mga bagay na makikita mo talagang nais na isama- 535 00:40:07,410 --> 00:40:13,010 ipagpalagay na nais mong i-integrate ang cool na tampok at i-save ang iyong sarili ng ilang dagdag na coding- 536 00:40:13,010 --> 00:40:16,460 ay magiging upang isama ang 3rd party na mga aklatan. 537 00:40:16,460 --> 00:40:19,840 Narito ang maliit na tao Android na may Sherlock Holmes sumbrero. 538 00:40:19,840 --> 00:40:23,040 Ito ay isang aksyon bar Sherlock library, 539 00:40:23,040 --> 00:40:25,390 kung saan talaga ay nangangahulugan na ang pagkilos na bar na nakita mo nang mas maaga, 540 00:40:25,390 --> 00:40:29,590 na ngayon ay standard sa Ice Cream Sandwich at halaya Bean, 541 00:40:29,590 --> 00:40:33,100 kung gusto mong dalhin na uri ng mga karanasan ng gumagamit sa mga gumagamit ng mas lumang bersyon 542 00:40:33,100 --> 00:40:39,290 at i-save ang iyong sarili mula sa hindi nababahala tungkol sa kung paano ang user ay pagpunta upang mag-navigate 543 00:40:39,290 --> 00:40:42,490 sa mas lumang mga bersyon kapag ang bagay na iyon ay hindi doon maaari mong isama ito library 544 00:40:42,490 --> 00:40:46,770 at pagkatapos mo na lang ay i-sanggunian sa halip na ang default na Android 545 00:40:46,770 --> 00:40:50,250 aklatan para sa bar ng pagkilos, isangguni mo ito support library. 546 00:40:50,250 --> 00:40:53,090 >> Mga bagay tulad ng Scoreloop, ito ay mahusay na kung ikaw ay pagpunta sa may kasamang laro. 547 00:40:53,090 --> 00:40:57,280 Ito ay nagbibigay-daan sa iyo magdagdag ng mga board lider at mga nakamit sa laro. 548 00:40:57,280 --> 00:41:00,900 AdMob ay isang paraan ng paglalagay ng mga ad sa iyong mga application 549 00:41:00,900 --> 00:41:02,900 kung sakaling nais mong gumawa ng kaunting pera off ng mga ito. 550 00:41:02,900 --> 00:41:05,730 Siyempre, may Facebook at Twitter para sa pagsasama ng doon 551 00:41:05,730 --> 00:41:08,170 kung nais mong ibahagi ang mga bagay na madali, at iba pa. 552 00:41:08,170 --> 00:41:15,120 Dropbox, gayon din naman, at ang Google Analytics ay tsart na naghahanap ng isa doon. 553 00:41:15,120 --> 00:41:19,070 Iyon ay magiging napakahalaga sa iyo kung talagang nais na makita kung sino ang nakikipag-ugnayan 554 00:41:19,070 --> 00:41:25,800 sa iyong app o kung sino ito ay, kung paano sila nakikipag-ugnay, at iba pa. 555 00:41:25,800 --> 00:41:30,650 Google, sa pamamagitan ng default, ay nagsasabi sa iyo ng maraming mga istatistika tungkol sa kung sino na-install na ang iyong app 556 00:41:30,650 --> 00:41:35,020 at kung ano ang mga teleponong mayroon sila, kung ano ang operating system bersyon mayroon sila. 557 00:41:35,020 --> 00:41:38,080 Ngunit kung gusto mong makita kung sino ang gumagamit nito sa araw-araw at kung paano ginagamit nila ito 558 00:41:38,080 --> 00:41:42,860 pagkatapos ay makikita mo nais na isama ang ilang mga uri ng mga sistema ng pagsubaybay na tulad ng. 559 00:41:42,860 --> 00:41:44,990 >> Kapag handa ka na upang ipamahagi ang iyong mga app 560 00:41:44,990 --> 00:41:46,930 Hindi ko na kailangang pumunta sa na sa sobrang lalim. 561 00:41:46,930 --> 00:41:49,090 Mag-click sa link dito, Google Play. 562 00:41:49,090 --> 00:41:51,080 Ito ay ginamit upang maging sa Android market. 563 00:41:51,080 --> 00:41:53,470 Sila rebranded lahat ng bagay sa Google Play, 564 00:41:53,470 --> 00:41:55,230 kaya ngayon iyong isinumite sa na. 565 00:41:55,230 --> 00:41:57,140 Ito ay napaka-tuwiran. 566 00:41:57,140 --> 00:42:01,070 Kailangan mong magsama ng isang paglalarawan, ang ilang mga screenshot. 567 00:42:01,070 --> 00:42:05,660 Tulad ng sinabi ko, walang pag-apruba ng proseso tulad ng iOS. 568 00:42:05,660 --> 00:42:07,270 At kung saan upang pumunta mula dito? 569 00:42:07,270 --> 00:42:09,450 Ako ay nagpakita sa iyo ng isang talagang simpleng halimbawa. 570 00:42:09,450 --> 00:42:13,270 Sana kung ito ay tila masyado simple 571 00:42:13,270 --> 00:42:15,740 pagkatapos na ay marahil isang magandang sign. 572 00:42:15,740 --> 00:42:20,080 Kung sa lahat ng nadama Medyo lito o hindi sigurado tungkol sa kung ano mismo ang ako ay nagta-type 573 00:42:20,080 --> 00:42:26,160 na rin fine, ngunit mula dito pumunta sa Mga Gabay sa Google. 574 00:42:26,160 --> 00:42:28,330 Ito ay isang mahusay na lugar upang magsimula. 575 00:42:28,330 --> 00:42:31,460 Ito ay makipag-usap sa iyo sa pamamagitan ng kung ano ang inaasahan nila sa mga tuntunin ng disenyo ng application, 576 00:42:31,460 --> 00:42:33,380 kung paano ang mga gumagamit ng normal na nakikipag-ugnayan sa mga ito. 577 00:42:33,380 --> 00:42:36,450 Ito ay mas libreng form kaysa iOS, nais kong sabihin, 578 00:42:36,450 --> 00:42:41,330 kung saan ito ay tila tulad ng tanawin ang mga talahanayan-hindi ko alam, na ang kanilang mga tinapay at mantikilya. 579 00:42:41,330 --> 00:42:44,690 Ang lahat ay isang pagtingin ng talahanayan dumudulas pataas at pababa. 580 00:42:44,690 --> 00:42:48,160 Sa Android nila siguradong hikayatin ang mga tao upang tumingin sa ito mula sa 581 00:42:48,160 --> 00:42:51,720 ang maramihang mga iba't ibang pananaw. 582 00:42:51,720 --> 00:42:56,000 >> Kapag isinama mo ang software na pag-unlad kit na ito sa ADT 583 00:42:56,000 --> 00:43:03,010 sa pamamagitan ng default na mayroon kang ang maramihang mga proyekto ng sample sa Android. 584 00:43:03,010 --> 00:43:05,470 Kanan dito, Android, Android Halimbawang Project. 585 00:43:05,470 --> 00:43:11,870 Kung ako mag-click sa na, pagkatapos ay maaari kong pumili ng isang bersyon para sa kung alin sa mga halimbawang proyekto apply. 586 00:43:11,870 --> 00:43:13,300 Mayroong isang buong grupo ng mga iba't ibang bagay dito. 587 00:43:13,300 --> 00:43:16,690 Nagsisimula ito off na may aksyon bar compatibility, 588 00:43:16,690 --> 00:43:24,610 accelerometer play, backup at ibalik, Bluetooth, kilos ang tagabuo. 589 00:43:24,610 --> 00:43:28,930 JetBoy ay isang sample ng laro bigyan ka nila, bilang ay LunarLander. 590 00:43:28,930 --> 00:43:31,250 Mayroong ang maramihang mga aplikasyon ng sample dito, 591 00:43:31,250 --> 00:43:35,290 at lahat sila ay naka-target sa iba't ibang mga aspeto ng Android API, 592 00:43:35,290 --> 00:43:41,520 at ang ideya ay na habang isinasagawa mo ang iyong application 593 00:43:41,520 --> 00:43:44,110 Hindi mo kailangang malaman ang lahat ng bagay tungkol sa Android upang gumawa ng Android app. 594 00:43:44,110 --> 00:43:47,300 Ka lamang magkaroon upang malaman ang tungkol sa mga bahagi na aktwal na pagpunta sa gamitin. 595 00:43:47,300 --> 00:43:49,340 Tumingin sa mga halimbawang library. 596 00:43:49,340 --> 00:43:51,510 Huwag mag-atubiling i-copy at i-paste ang code at muling ipatupad ang mga ito. 597 00:43:51,510 --> 00:43:53,850 Ito ay isang mahusay na bagay upang tumingin sa mas mahirap code 598 00:43:53,850 --> 00:43:57,060 at subukan upang maunawaan ito, na siyempre kung bakit sa CS50 599 00:43:57,060 --> 00:44:01,510 madalas naming magbibigay sa iyo ng malaking halaga ng source code. 600 00:44:01,510 --> 00:44:04,620 Tingnan ang ilan sa mga ito kung ikaw ay pagpunta sa gamitin ang katulad na mga library 601 00:44:04,620 --> 00:44:08,630 at pagkatapos ay ilapat ito sa iyong sariling code. 602 00:44:08,630 --> 00:44:10,430 At syempre, may mga tutorial. 603 00:44:10,430 --> 00:44:12,690 Maghanap para sa mga tutorial. 604 00:44:12,690 --> 00:44:17,020 Nakakita ako ng maraming magandang mga online na maaaring dalhin sa iyo up upang mapabilis 605 00:44:17,020 --> 00:44:20,080 may kung ano talaga ang mga fragment ay at kung paano maaari mong gamitin ang mga ito. 606 00:44:20,080 --> 00:44:22,240 >> Ang ilan sa mga bagong disenyo ng mga bagay-bagay, tulad ng mga fragment, 607 00:44:22,240 --> 00:44:26,840 mo ba talagang hindi ay kailangang nag-aalala tungkol sa maliban kung nagsasagawa ka ng isang 608 00:44:26,840 --> 00:44:30,560 medyo malaki sa saklaw ng proyekto. 609 00:44:30,560 --> 00:44:32,510 Ang mga ito ay mga bagay na ang Google ay sinusubukan upang alisin in 610 00:44:32,510 --> 00:44:35,570 Stackoverflow ay siyempre iyong mga kaibigan. 611 00:44:35,570 --> 00:44:37,930 Sana ako nabenta mo ng kaunti sa Android, 612 00:44:37,930 --> 00:44:41,640 napagtatanto ito ay mas madaling lapitan sa mga tuntunin ng lamang ang coding wika. 613 00:44:41,640 --> 00:44:45,970 Java ay Gusto ko sabihin lubhang mas madaling maunawaan kaysa sa Layunin-C. 614 00:44:45,970 --> 00:44:50,780 Android ay lumalaki sa tingin ko higit pa sa iOS. 615 00:44:50,780 --> 00:44:54,890 Ibig kong sabihin, ang data ay doon din, bukod sa kung ano ang tingin ko. 616 00:44:54,890 --> 00:44:56,920 Ito ay pagpunta sa maging sa paligid para sa isang habang, 617 00:44:56,920 --> 00:45:00,880 at ang mga ito ay ilang taon na sa likod sa mga tuntunin ng kanilang cycle disenyo, 618 00:45:00,880 --> 00:45:04,690 kaya uri ng naiintindihan na nila pa rin nagsusumikap sa pamamagitan ng ilan sa mga 619 00:45:04,690 --> 00:45:09,080 pagkakapare-pareho mga tanong, ganito ang bar pagkilos ay isang bagong bagay para sa kanila pa rin, 620 00:45:09,080 --> 00:45:16,010 uri ng paglikha ng magkatulad na karanasan ng user sa lahat ng kanilang apps. 621 00:45:16,010 --> 00:45:20,650 Sana maaari kang pumunta pasulong ngayon at buksan up Eclipse 622 00:45:20,650 --> 00:45:22,870 at gawin ang iyong sariling mga apps Android. 623 00:45:22,870 --> 00:45:30,240 >> Ba ang sinuman may anumang mga katanungan bago namin balutin tungkol sa anumang bagay? 624 00:45:30,240 --> 00:45:34,410 Maaari ko bang sabihin sa iyo ang sagot ay 42. 625 00:45:34,410 --> 00:45:41,990 Well, masaya coding sa lahat, at good luck. 626 00:45:41,990 --> 00:45:44,990 [CS50.TV]