[Powered by Google Translate] [Semina] [Android Apps (Sasa na Jelly Maharage!)] [Jordan Jozwiak] [Chuo Kikuu cha Harvard] [Hii ni CS50.] [CS50.TV] Hello kila mtu, na kuwakaribisha kwa Programu Android (Sasa na Jelly Maharage!) Semina. Ni wito Sasa na maharagwe jelly, bila shaka, kwa sababu toleo la karibuni la OS inaitwa Jelly Bean. Wakati mimi aliongea kuhusu Android mwaka jana na walifanya semina hii kimsingi sawa Mimi nilikuwa kuwasilisha mwelekeo wa kubuni na uchaguzi Stylistic kwa Gingerbread, hata kama Ice cream Sandwich alikuwa ametoka kwa wakati, na hii ni kitu tutaweza kuzungumzia kwenda mbele kidogo. Admin, bila shaka, ina baadhi ya masuala na kugawanyika, hivyo karibuni Google mfumo wa uendeshaji ni kawaida si kweli kwenda kuwa ya kawaida kati ya watumiaji kwa uwezekano hadi mwaka, kwa bahati mbaya. Lakini kutokuzingatia kwamba, tutaweza kuzungumzia mengi ya sababu kwa nini Admin ni bora zaidi kuliko iOS. Sawa, tutaweza kuzungumzia Android dhidi ya iOS, mitizamo ya kubuni baadhi, jinsi utasikia kupata kuanzisha katika tu slide moja, na tofauti kubwa kati ya hii na mwaka jana ni mimi nataka tu zoom kupitia baadhi ya mambo ya dhana kufanya kazi na mfumo wa uendeshaji na kisha kwenda katika mfano kweli ya msingi. Kwa kweli, mfano tu kwamba Google inaeleza kwa ajili ya kujenga programu yako ya kwanza, na tutaweza kwenda kwa njia hiyo pamoja na tu kuelezea. Najua wengi wenu tu coded katika C, hivyo Java ni tayari kwenda kuwa mtazamo tofauti, na kwa njia hii utasikia kupata miguu yako mvua na kujisikia kidogo vizuri zaidi na hivyo hopefully. muhtasari wa haraka, free dhidi ya iOS. Katika Android kuna hii moja wakati developer ada ya $ 25, hakuna wa hii kitu $ 100 kwa mwaka. Hakuna vikwazo, ambayo ina maana kwamba kama nataka kuwasilisha programu, Mimi tu kuwasilisha, na hakuna idhini ya mchakato kama kuna kwa iOS. Kupata na kuendeleza na kutumia Java Eclipse, ambayo ni msalaba jukwaa, hivyo haijalishi kama una Mac, Madirisha, au baadhi ya mashine ya Linux. Bila shaka, na iOS una kutumia XCode ya Mac, na Android hutumiwa na watu wengi zaidi, hivyo kama unataka programu yako ya kuwa na aina fulani ya kujulikana au labda pesa kidogo kutoka kwa matangazo wewe pengine zaidi uwezekano wa kunufaika na free. Na jambo moja kwamba daima imekuwa inajulikana kuhusu Android ni kiasi uliokithiri wa customization, ambapo iOS sana fasta katika njia zao ili waweze kudumisha usalama na udhibiti juu ya kila kipengele kidogo ya kubuni ndani ya OS yao na programu ya mtu binafsi. Admin ni fomu bure, na kuna wengi zaidi uwezekano. Sawa, mitizamo ya kubuni baadhi. Taarifa hapa tu kama iOS ina vidonge iphone na kumgusa na iPod wana wa kusaidia, kusema, kama vifaa kadhaa kama unataka kusaidia kihistoria mambo kama vile. Na Android una kusaidia mamia ya vifaa, hivyo kuna baadhi ya mambo ambayo Google imekuwa kujaribu kutekeleza kufanya mtumiaji uzoefu zaidi kidogo thabiti, lakini tutaweza pia majadiliano kuhusu jinsi hii ina maana kwamba kuna masuala ya kugawanyika kwamba wewe daima kuwa na ufahamu wa kusaidia. Kugawanyika ina maana kwamba kuna tofauti ya mifumo ya uendeshaji, nyingi tofauti za pamoja na vifaa mbalimbali mbio Android wote kwa wakati mmoja, hivyo graph hii hapa inakwenda nyuma kwa miezi 6. Yeah, miezi 6, na unaweza kuona jinsi bendi ya giza juu ya chini ni Jelly Bean, ambayo akatoka juu ya jua, na unaweza kuona sasa hivi pengine juu ya 2% ya simu za kuwa nayo. Ice cream Sandwich akatoka zaidi ya mwaka mmoja uliopita, na robo ya simu za kuwa nayo. Bado kuna mengi ya simu za kwamba ni kwa kutumia OS version kutoka miaka iliyopita. Jambo moja kwamba Google amejaribu kufanya ili kufanya uzoefu wa mtumiaji mengi zaidi thabiti katika programu ni kwa kuanzia na asali, ambayo ni toleo kibao, kisha Ice cream Sandwich na Jelly Bean, wao ni kweli kujaribu kusisitiza matumizi ya bar hatua hii, ambayo ni nini unaweza kuona kwa juu hapa, haki ya kila kitu hapa, ikiwa ni pamoja na kifungo hiki kidogo mazingira. Ni uchaguzi design. Sasa, wakati wowote unaweza kuona dots 3 maana bonyeza hii, na kutakuwa na drop-down menu, ambayo ina baadhi ya aina ya vipimo. Hii inaonyesha tu juu kwa sababu mimi clicked juu ya kifungo hiki. Hii ni kitu ambacho wao ni kujaribu kutumia kufanya programu zaidi kidogo thabiti katika bodi na hivyo mtumiaji ina hali nzuri zaidi ya uzoefu wa sare. Sawa, hivyo katika kesi hujafanya hili tayari au kama wewe ni kuangalia nyumbani basi unaweza kufuata hatua hizi kuanzisha mazingira yako coding. Itakuwa kuhusisha kwenda tovuti hapa. Unaweza kufunga Google Android SDK na kufuata maelezo ya baadhi ya huko. Wao kukuambia kila kitu. Wana wa kufunga SDK, Shusha Eclipse Classic toleo, hata ingawa, bila shaka, sisi ni coding katika Java. Wao kupendekeza hii moja, na kisha hii ADT, Maendeleo ya Android Tools, ni Plugin kwamba kufunga katika Eclipse ambayo inaruhusu kuwa na uzoefu zaidi harmoniserad na Android ndani Eclipse. Ni nitakupa baadhi interfaces user grafiki kwa kubuni maoni, na itakuwa kukupa zaidi sana msaada na uwezo wa uzinduzi na emulator na kwamba kila aina ya kitu. Maombi ya mfumo. Nataka kuzungumza kuhusu jinsi miradi ya ndani ya Android ni muundo, na kisha tutaweza kwenda katika mfano wa haraka, na hopefully unaweza kuuliza maswali katika hatua yoyote na kujisikia vizuri na mwisho wa hayo. Tuna baadhi ya jargon ya kwanza. shughuli ni kama screen unaweza kuona wakati kuzindua programu. uzoefu nzima ni shughuli yenyewe, hivyo unaweza kufikiria kama screen au maoni, lakini ni kweli kanuni chanzo upande wa hayo. Sisi bado wito halisi interface sehemu yake maoni. Ni aina ya kama jinsi katika pset 7 tulikuwa na mtawala na kisha maoni. shughuli ni zaidi au chini ya mtawala, na maoni ni nini sisi ni kufanya katika suala la XML kwamba ni kuhusishwa na shughuli hiyo. Vipande ni kitu ambacho kutekelezwa katika Ice cream Sandwich kwenda mbele. Ni wazo tu ya kuchukua sehemu ya maoni au shughuli na kugawa yao katika maeneo tofauti ili tuweze kufanya kanuni zetu zaidi inatumika kwa ajili ya vifaa hizi nyingi tofauti kwamba tuna kusaidia, na ni njia tu ya kujaribu pia sababu nje zaidi ya kanuni. Huduma ni mambo ya historia kama kucheza muziki au maelekezo urambazaji uwezekano. Watoa bidhaa, haya ni API ndani ya mfumo wa uendeshaji kwamba kuruhusu kupata data ya pamoja kama vile mawasiliano ya habari, na kisha dhamira ni kitu tutaweza kutumia wakati tunataka kuzindua shughuli mpya kutoka shughuli yetu ya sasa. Hujambo Android, hii ni kwenda kuwa mradi kwamba tutaweza kuzungumzia. Mimi itabidi kweli kufanya hivyo kwa ajili yenu, na kisha tutaweza kufanya kitu ambapo sisi bonyeza kifungo pamoja na baadhi ya maandishi na kuzindua shughuli mpya. Rahisi sana, lakini nataka kwenda kwa njia ya nini kwenda katika mradi kama huu. Wakati wa kufanya mradi mpya utaona ndani ya kupatwa kuna mradi huu iitwayo Jambo free. Kisha kuna rundo zima la folders hapa. ndio wewe ni kweli wasiwasi na ni folda chanzo, folder rasilimali, res, na kwa kiasi fulani folder libs kwa ajili ya maktaba. Na hivyo tu sisi ni juu ya ukurasa huo na kwamba kama ungekuwa na kujenga mradi mpya, unaweza kufanya hivyo hapa hapa, hivyo kama nataka kuiita HelloAndroid, na kisha ni moja kwa moja anafanya rundo zima la habari kwa ajili yetu. jina mfuko zinatakiwa kuwa kitambulisho kipekee kwamba ingekuwa kawaida kuhusishwa na tovuti, kama wewe alikuwa mmoja. Kwa mfano, mimi wito huu net.cs50.helloandroid. Na mimi tayari wamefanya mradi huu mara moja. Sawa, pole. Hebu simu yake HelloCS50. Na kisha itakuwa kuuliza mambo kama aina gani ya icon nini tunataka kufanya. Hii yote ni kwa sababu ya interface Android Developer Tools, Plugin kwamba sisi aliongeza kwa Eclipse, hivyo tunaweza kuchagua mambo kama nini icon tunataka, na kwamba ingekuwa kwenda katika kina kwamba kama tunataka. Lakini mwisho, tu kufanya mradi, na kila kitu inaonyesha juu hapa hapa. Kama mimi ilionyesha juu ya screen nyingine, tuna chanzo folder, na mimi itabidi kuzungumza kuhusu nini hii yote ina maana hivi karibuni, lakini unaweza kuona kwamba mara moja inachukua sisi screen HelloCS50. Kuna baadhi ya kifungo zaidi ya hapa kwa ajili ya kuongeza Layouts shamba maandishi na maandishi. Ni aina ya kama XCode lakini kwa bahati mbaya kabisa kama harmoniserad. Lakini video utakuwa rafiki yako na ADT hasa kwa kufanya hivyo. Sawa, folder chanzo ni wapi Files Java ni uliofanyika, na hii ni kweli uzinduzi wa programu yako. Ni kimsingi kama controllers. folder rasilimali au res ni ambapo tutaweza kuweka Layouts screen, picha, sauti, maandishi, uhuishaji na kila kitu kingine, libs, ni wazi, maktaba. Na Dhihirisha, ni njia kwamba mfumo Android anajua jinsi ya kushirikiana na programu yako. Ni anasema ni kuhusu ruhusa na nini shughuli kweli kuwa na kukimbia. Ni taarifa zote muhimu kwamba ni muhimu katika kuendesha programu yako. folder chanzo ni-kama sisi kupanua kama unaweza kuona hapa hapa. Na mfano kwamba kanuni bila kuangalia-hii ni kanuni ya msingi. Kama sisi kuitwa hivyo, MainActivity. By default, sisi kupata onCreate, ambayo ni kazi hiyo inaitwa wakati shughuli hii mizigo, hivyo unataka simu onCreate (savedInstanceState). Hii itakuwa kurejesha bits yoyote ya habari katika kesi programu ulisitishwa. Kuna shughuli nzima ya duru ya maisha chati ambayo unaweza kuangalia wakati kupata zaidi kidogo kwa kina ndani yake, lakini line muhimu ya maadili kuna kazi huu setContentView ambayo itakuwa mzigo faili rasilimali kwa ajili ya mpangilio. Kisha nini onCreate hapa ni kimsingi ni kufanya ni kusema wakati mimi kuunda shughuli hii nataka kupakia hii layout. Na tutaweza majadiliano juu ya kile layout kuwa ni katika pili. Kama tulikuwa na uzinduzi kwamba hapa inaonekana hasa kama hii, na kwa default kwa sababu tuna kupatwa kufanya hili na ADT kufanya hivyo kwa ajili yetu hii yote ni kanuni boilerplate kwamba ni umba kwa ajili yetu, na tunaweza kuendelea na kubadili mambo kama sisi kama. folder rasilimali, kama nilivyosema, hii ni mahali ambapo sisi kushikilia Layouts wote, drawables katika suala la aina yoyote ya picha- wao ni kuitwa drawables-na kisha sauti files, menus. Ni njia ya rundo zima la XML katika mtindo mzuri Iliyopangwa. Kama unaweza kuona, kuna hdpi, ldpi, MDPI na folders xhdpi kwa drawables.. Hizi ni tofauti screen msongamano, hivyo high wiani pixel kwa kila inchi, Asili wiani, kati wiani, ziada high wiani. Hii ni mara ya pili, ili tuweze kusaidia haya vifaa mbalimbali, na walau, utakuwa na picha tofauti kwa azimio kila tofauti. Layouts ni ambapo sisi ni pamoja na Layouts yote tofauti ambazo zitatumika katika shughuli mbalimbali. Wangeweza pia ni pamoja na Layouts kwa nguvu, ambayo ina maana ya shughuli za sehemu ya kimsingi. Kama unataka kufanya kitu baridi kama wakati wowote mzunguko simu unataka kuwa na mpangilio tofauti unaweza kufanya layout-mazingira kama folda tofauti, na Android moja kwa moja ina rundo zima la sheria hizi ndani ya folda rasilimali, hivyo itakuwa kujua kuangalia folders tofauti ya msingi ya kuanzisha ya sasa ya simu, aina gani ya vifaa wewe ni kutumia. Vile vile, hii maadili-v11 hapa na maadili-v14 na maadili default folder hii ni kwa ajili ya- vizuri, maadili na yenyewe, hii itakuwa maadili default katika matoleo yote ya mfumo wa uendeshaji. Kwa upande mwingine, na v11 v14 yanahusiana na asali na Ice cream Sandwich, kwa mtiririko huo. Tena, hizi ni njia ambazo-ndani ya hizi folders ni tofauti masharti na mitindo, hivyo unaweza Customize ya kuonekana ya programu yako au uwezekano hata utendaji wake, ingawa pengine ingekuwa wazo mbaya, msingi toleo la mfumo wa uendeshaji. Na mimi aliyesema kuhusu yote hii hapa. Tena, drawable, mbichi, kwa mpangilio, maadili. defaults, tukienda kwenye Wapendwa Android au Wapendwa CS50 sasa hivi itakuwa kuangalia tu kama hii. Itakuwa kusema hello dunia. Kama unaweza kuona hapa hapa na maandishi Android Nakala kwa mtazamo huu wa maandishi, ambayo kimsingi ni tu studio, ni nini tunataka kuwaita kuwa ni katika iOS. Ina nukuu hii funny @ kamba / hello_world. Hii ni ili tuweze-sisi kujaribu dondoo zote za masharti, yote ya masharti ngumu-coded katika Android katika folder tofauti, ambayo hutokea kwa kuwa katika values.strings. Kama sisi kuangalia hapa, tunaweza kuona kwamba tuna kamba ngumu-coded kuokolewa hapa kwa ajili ya dunia hello, na ni kuitwa hujambo dunia, na hii ni aina ya kawaida kubuni uamuzi katika majukwaa wengi kwamba unataka- masharti ni aina ya mambo ya kwamba tunataka uwezekano wa kuwa na uwezo wa kubadilika. Hatutaki kudhibiti F katika faili chanzo chetu kanuni katika XML yetu. Tunataka kuwa na uwezo wa kubadili hali hii wakati sisi kupata nafasi. Hii faili XML, strings.xml, ni njia ya kuchimba ngumu-coded masharti ambayo vinginevyo kuwa katika rasilimali zetu mpangilio au katika chanzo kanuni zetu. Dhihirisha ni mahali ambapo sisi kuweka hii taarifa muhimu kuhusu maombi. Ni pamoja na jina mfuko. Kwamba ina kuwa kitambulisho kipekee. Tofauti na Hifadhi App kwa iOS majina ya maombi hawana kwa kuwa ya kipekee, na unaweza kwa kweli mabadiliko ya jina la maombi yako baada ya kuwasilisha yake, hivyo kama mimi kuanza nje na ndege hasira, na kisha mimi kufanya update, na sitaki kutolewa toleo jipya Mimi nadhani kuuita Angry Ndege 2 wakati mimi niko kwenye mzunguko huo kutolewa. Ingekuwa tu show up kama update. Kitu tu kwamba ina kuwa ya kipekee ni jina hili mfuko, ambayo si watu wengi kuona. Naam, utaweza kuona tu kama wewe walikuwa kuangalia chanzo kanuni au kama kuna baadhi ya aina ya makosa. vipengele ni pamoja na shughuli, hivyo tuna kutangaza aina yoyote ya shughuli sisi kutumia. Hii ni aina ruhusa ya kitu. Sababu Android hana hii ukali mchakato wa maombi ya kwa ajili ya kuwasilisha programu badala yake tu wala kila kitu msingi mbali ya ruhusa na kutangaza mambo katika Wazi. Toleo SDK ni muhimu pia. Tunaweza kuweka matumizi kama kitu SDK kima cha chini cha version. Ni wazi, unataka kujenga kanuni na kubuni kwa mifumo ya karibu zaidi uendeshaji. Pengine si newest, labda si Jelly Bean. Labda unataka kubuni hasa kwa ajili ya Ice Cream Sandwich, ingawa ni pretty kiasi sawa katika suala la maamuzi ya kubuni na maktaba halisi na APIs. Lakini badala ya kuwa na watu ya awali Android toleo-kama donut nyuma njia wakati- ambao bado kutokea kwa kutumia kwamba kujaribu kushusha maombi yako na kisha kusema haifanyi kazi kwenye simu yangu unaweza kuweka toleo kima cha chini cha na kuwa ni kuwa Gingerbread au Ice cream Sandwich au chochote kujisikia kuwasilisha starehe. Na hii ni mfano wa Wazi. Tunaweza kuangalia moja halisi katika kidogo. Sawa, tutaweza tu kwenda mbele na demo sasa. Hii ni demo kama wewe Google Android kujenga programu yako ya kwanza au kitu kama hicho. Tutaweza kwenda kupitia kila kitu kinaendelea huko, na pole, tu kwa ajili ya kumbukumbu ambao hapa anajua Java kwa kiasi yoyote? Sawa, hivyo Java ni mpya coding lugha kwa ajili ya watu wengi kuja nje ya CS50. Kwa ufupi, na kwenda juu tena inasema nini hapa, nini tunataka kufanya ni badala ya kurekebisha hii hujambo dunia maombi kwamba wote yake ni kuwa yazindua na inasema dunia hujambo na anasema hello CS50 saa ya juu kwa sababu hiyo ni jina shughuli tunakwenda kujaribu kufanya shamba maandishi na kifungo hivyo kwamba wakati sisi waandishi wa habari kifungo hii itachukua Nakala kutoka shamba maandishi na kuzindua shughuli mpya, na kusema chochote Nakala kwamba alisema katika shughuli, na hii ni rahisi. Ni si ya kuvutia sana. Wewe si unataka kutolewa programu yoyote kama hii. Lakini inaonyesha baadhi ya mambo ya kubuni muhimu. Tutaweza kuwa na kuingiliana na Dhihirisha, na files layout, kwa kificho chanzo, na unaweza kuona jinsi ya kuzindua shughuli moja kutoka nyingine. Tutaweza kuanza na layout kwa ajili ya shughuli yetu ya kwanza, ambayo najua ni aina ya ndogo, lakini kama unaweza kuona sasa hivi, yote ni ni ina alama yetu kwamba sisi umba, jina shughuli, na inasema dunia hodi katika kituo hicho. Badala yake, mimi nina kwanza kwenda kufanya hii katika mpangilio linear, mpangilio jamaa, na haya yote ni mambo unaweza kuangalia juu na ni thamani ya kwenda juu wakati fulani katika suala la Layouts. Ni mengi kama HTML. Sisi alisema ni kweli thamani ya kujua katika suala la maana ya programu, lakini kuna watu wengi tofauti Layouts unaweza kudhibiti, na ni tu kama CSS katika suala la mitindo. Kuna mengi ya kwenda juu tu katika suala la aesthetics hapa, na yeah, ni thamani ya kujifunza, lakini ni aina ya kitu unapaswa kuangalia juu kama wewe kwenda na kujisikia kama unahitaji kitu kipya. Siwezi kuchukua faida ya baadhi ya zana ADT hapa angalau kuanza mbali na. Mimi itabidi kufanya shamba maandishi, na nitafanya kifungo. Kuziweka haki ya karibu na kila mmoja. Wao tayari resize ipasavyo. Pole, tena, kuja nyuma ya tofauti kati ya mpangilio linear na mpangilio jamaa, mpangilio linear anatoa kidogo zaidi ya utendaji katika suala la kujaza nafasi na kuhakikisha sisi nafasi ya mambo ya usawa au wima. tofauti kubwa kati ya mpangilio linear na mpangilio jamaa ni jamaa mpangilio nafasi kila kitu jamaa na maoni mengine, na jambo zuri juu yake ni kwamba inachukua muda kidogo kuteka kwa sababu mfumo wa uendeshaji inaonekana katika kanuni zote na anasema hii inakwenda jamaa na hii hapa, hapa. Ina maana inafanya vipimo wachache kuliko rundo zima la Layouts Furushi linear, ambayo mimi bila kufanya mambo kama nilitaka kwenda wima hapa. Mimi tayari kuwa baadhi ya mambo kwenda usawa, hivyo napenda haja mbalimbali linear mpangilio kwa kiota yao wima, lakini kama mimi walikuwa kufanya mpangilio jamaa mimi naweza kusema kuweka hii kwa upande wa kushoto, hii kwa haki na mambo haya hapa chini. Lakini kwa sababu Mimi nataka wao kujaza hivi sasa mimi naenda kutumia mpangilio linear, na unaweza kuona ni tayari anafanya mengi ya mambo haya kwa ajili yetu. Kila maoni haja ya kuwa na mali ya upana na urefu, na hii hutokea kwa kuwa na uzito wa 1, na hii ina uzito wa 1 hivyo kwamba inajaza nafasi nzima. Lakini upana na urefu ni muhimu zaidi. Uwanja huu ID haki hapa si muhimu ndani ya mpangilio halisi isipokuwa sisi ni kutumia mpangilio jamaa na kusema tunaweza rejea mtazamo mmoja nafasi katika kumbukumbu ya mwingine. Kama tungekuwa na mpangilio jamaa tunaweza kusema nafasi hii chini ya hii moja au juu ya ID hii, lakini ID hii itakuwa muhimu wakati sisi ni kutumia katika kanuni zetu kwa sababu tunaweza rejea maoni hayo ya mtu binafsi kwa njia hii. Na kisha unaweza kuona requestFocus tag, ambayo ni kitu pengine aliona katika pset 7. Kulikuwa na lengo auto tag au kitu pamoja na wale mistari kwa moja ya mashamba. Na jambo moja, bila shaka, tunaweza kufanya tu kama katika HTML, na tangazo moja ya mambo mazuri kuhusu ADT ni kwamba autocompletes hapa. Labda si kama nicely kama ilivyokuwa katika XCode, lakini haina hata hivyo, na tunaweza kusema ladha na kisha kuwapa baadhi ya aina ya kamba kama kuandika ujumbe, na kama kuwapa muda, pia taarifa kwamba mimi kupata kosa kidogo hapa kusema kwamba tunapaswa kutumia rasilimali kamba kwa ajili hii, hivyo kama mimi basi ni kufanya baadhi ya kazi ngumu kwa ajili yangu Naweza kuchagua hii kamba, kufanya refractor Android na dondoo Android kamba. Naweza kutoa ni kwamba jina, kuandika ujumbe, na nini ni nini sasa ni nafasi ya ile kamba ngumu-coded akiwa na kamba katika faili xml. kamba ya, ambayo ina maana sasa hii ni hapa. Na najua kwamba inaonekana kidogo dogo na kama kazi ya ziada katika hatua hii, lakini wakati una rundo zima ya mambo, rundo zima la masharti, kwamba kweli ni muhimu, na hasa kwa ajili ya ujanibishaji kwa sababu kama nilivyoeleza awali, Android ni sana kutumika kimataifa ya mfumo wa uendeshaji kwamba unaweza tu kufanya maadili-sw au maadili-sp au kitu kwa ajili ya lugha ya Kiingereza au Kihispania au nyingine. Na basi pengine si alikuwa na uzoefu huu bado tangu sisi hakufanya JavaScript sana katika suala la programu ya mtandao, lakini pia tunaweza kufanya hili shamba iitwayo onClick kwa kifungo, na hii ni njia ya referencing ndani ya layout wetu kwamba tunataka kazi fulani kuitwa katika chanzo kanuni zetu. Mimi naenda kuwaita hii sendMessage, na ili kufanya kazi hii ina maana kwamba katika shughuli kuu hapa Nataka kujenga kazi ambayo ni ya umma hivyo kwamba inaweza kupatikana kwa mpangilio. Ni batili kwa sababu wewe tu hawataki kurudi kitu. Tutaweza kuiita sendMessage, na inachukua mtazamo, ambayo ni aina ya mazingira kwamba tunaweza nanga njia hii na kwamba maoni ya mtu binafsi wakati sisi ni mbio. Na mimi sijui kama wewe niliona-vizuri, bila kuwa niliona, lakini katika hatua hii hapa hapa mtazamo huu ni aina ya kwamba bado ni pamoja na, na bila shaka, wote tunajua kutoka CS50 kuhusu si ikiwa ni pamoja na aina. Jambo zuri Eclipse IDE ya kama ni kwamba kama wewe kusahau ni pamoja na aina itakuwa kusisitiza na nyekundu kidogo squiggly na kisha kuwapa fursa ya kuagiza maoni. njia ya haraka ya kufanya hivyo ni kudhibiti mabadiliko ya O, na itakuwa kuagiza mafaili yote kwamba inahitaji. Sasa kwa kuwa tuna hii sendMessage kazi, ambayo ni kwenda kutuma ujumbe kutoka MainActivity kwa shughuli mpya, tunakwenda kuwa na matumizi ya dhamira ya kuzindua shughuli mpya kutoka hii moja, hivyo tutaweza pengine wanataka kujenga mara kwa mara kimataifa au pia hasa mara kwa mara kwa umma kwamba itatusaidia kujua jinsi sisi ni kwenda rejea kamba sababu wakati sisi kujenga dhamira sisi siyo tu wito shughuli mpya, lakini pia tunaweza kuwapa mzigo wa habari. kifungu ni kweli mfupi kwamba Android anatumia, na ni njia ya kusema kuwapa data za ziada, ambayo haiwezi kuwa ya aina ya kisasa sana data, lakini tunaweza dhahiri ni pamoja booleans masharti au au ints. Kwamba aina ya kitu. Jisikie huru kuuliza kuhusu yoyote ya kufuzu hawa hapa umma, mwisho, tuli. Umma ni moja muhimu. Ina maana kwamba tunaweza kupata hii kutofautiana kutoka nyingine files chanzo kanuni kama vile wakati sisi kujenga shughuli mpya. Tunaweza rejea kamba ndani ya faili hili. Kama ni binafsi, ina maana ni mdogo na faili hii ya mtu binafsi hapa. Lakini tutaweza kuita hii kitu kama ujumbe wa ziada. Sasa tumefanya kazi hii, na kama sisi bonyeza kifungo, kazi hii itakuwa ya kuitwa. Lakini hatujafanya kitu, ni wazi, na kazi ya. Nini tunataka kufanya sasa ni kujenga shughuli mpya, shughuli ambayo itakuwa kweli kuzinduliwa. Katika Eclipse tunaweza kusema mpya, free shughuli, tupu shughuli. Tunaweza kuwapa jina. Hebu kuiita matokeo yetu ya shughuli. Na kisha hii kihierarkia mzazi shamba ni njia ya kubainisha jinsi shughuli ni kuhusiana na kila mmoja. Kwa sababu moja hii itakuwa ilizindua kutoka shughuli nyingine tunapaswa bayana kwamba ina mzazi shughuli kuu. Na mimi naweza kuwa clicked kwenye uwanja ijayo huko, ambayo ingekuwa alituambia baadhi ya mashamba ya hiari kwamba pia ikiwa ni pamoja na, lakini jambo zuri ADT, tena, ni kwamba kama mimi kitabu hapa chini Dhihirisha katika kukumbuka kwamba wote wa kweli hii ilikuwa ni pamoja na default wakati sisi awali iliundwa mradi, na sasa kwa sababu sisi kutumika hii kuunda shughuli mpya badala ya akiongeza darasa yetu mwenyewe faili sababu sisi akaenda kwa njia ya GUI yao kwa ajili ya kufanya hii tayari aliongeza yote haya kwa Wazi kwa ajili yetu, ambayo ina maana kwamba sasa mfumo wa uendeshaji itakuwa si kulalamika wakati sisi kujaribu kuzindua shughuli hii. Na pia, bila shaka, akampa studio, ambayo pia inaonyesha juu katika masharti. Ni gani mambo mengi juu ya mwisho ya nyuma kwa ajili yetu. Anyway, sasa kwamba tuna shughuli hii matokeo kama vile, halisi chanzo kanuni faili kwenye folda chanzo, na unaweza kuona-kwa ufupi juu ya kugusa hii- kwa sababu sisi habari kuhusu mzazi hii kihierarkia alitoa hii android.r.ide.home shamba katika jambo hili onOption kuchaguliwa. Nini hii ni kimsingi akisema ni kuna kifungo cha orodha sasa kwamba katika kona ya kushoto ya juu ya screen kama mimi kwenda nyuma ya PowerPoint ambapo sisi kwanza aliyesema kuhusu bar hatua sababu ya mzazi kihierarkia sasa kuna mshale kidogo nyuma hapa na hii ni clickable hivyo tunapaswa kuwa na uwezo wa-baada ya sisi kweli kuendesha programu hii- kurudi nyuma, na ni njia ya kutuokoa kidogo ya kanuni ya huko. Sasa ndani ya hii-vizuri, inaonekana kuwa kulalamika kuhusu kwamba kwa sasa. Hebu maoni kwamba nje. Sasa, ili kweli kuingiliana na shughuli hizi 2, inatubidi kujenga dhamira ambayo ni pamoja na yote ya takwimu hii. Katika sendMessage sasa mimi naenda cruise kupitia bits baadhi ya kanuni na kueleza kuwa kama mimi kwenda. dhamira, kama nilivyosema, ni njia ya kuzindua shughuli moja kutoka nyingine. Nia ni aina. Sisi ni kujenga myIntent kutofautiana. Na hii ni kweli ni kitu, ambayo ni kwa nini tuna kuwaita mpya. Ni kawaida Java matumizi ya huko, ambayo inaweza kuchukua kidogo kidogo ya kupata kutumika. Hii ina maana sisi ni kutumia shughuli au MainActivity darasa, na dhamira katika njia ambayo inachukua shughuli itakuja kutoka na shughuli ni kwenda, ambayo tunaita ResultActivity, na kwamba ni darasa yake mwenyewe. Ni pamoja na kwamba. Na kisha kama nilivyoeleza hapo awali, sisi alitoa kwamba ID kwa shamba Nakala hariri na mtazamo wa maandishi, hivyo ili programmatically kukamata Nakala kwamba ipo katika editText sisi kutumia kazi kuitwa findViewByID, ambayo ni sawa na kitu ambacho utasikia kutumia wakati akijaribu kupata mashamba kutoka DOM. Labda Daudi mazungumzo kuhusu hili katika hotuba. Lakini ni njia tu ya kupata wale-kwamba ni kwa nini sisi tag mambo haya pamoja na mashamba hayo. Id.editText1. Ni tayari autocompleting kwa ajili yangu huko. Na kisha tutaweza pia ni pamoja na-hii editText sasa kwamba tuna shamba ndani ya mpango wetu, kwamba findViewByID wote alifanya alikuwa kimsingi unaweza kufikiria kama kutupa kumbukumbu editText kwamba. Sasa tunataka kupata kamba au ujumbe ndani kwamba editText ambayo tunaweza kufanya kwa kutumia- unaweza kufikiria editText kama struct- sisi kuiita kitu katika Java-na rundo zima la mbinu mbalimbali au mashamba na sifa masharti hayo. Wakati mimi kusema editText. ni inatoa nafasi yangu ya kupata Njia kama vile getText, ambayo kupata Nakala sasa katika editText kuwa na kisha kubadili kwamba waziwazi kwa kamba, na sisi kuokolewa ujumbe. Sasa sisi kweli unataka kufanya kitu na kwamba nia ya sisi aliumba tu wakati iliyopita. Nitaweka ziada kama ni kuitwa katika dhamira, ambayo, tena, kama nilivyosema kabla, hii ni njia ya kujenga kifungu pamoja na kundi zima la data. Ujumbe wa ziada ni tag yetu ili sisi kujua sisi ni kuokoa hii chini, na basi mimi nina ikiwa ni pamoja na ujumbe. Na kisha tunaweza kweli kuanza shughuli kwa kutoa ni myIntent parameter. Na hii itakuwa kweli kuzindua shughuli, hivyo sasa tangu mimi uppdaterade Windows 8 huenda kuna baadhi ya makosa ambayo show up kwa ufupi, lakini jaribu kupuuza yao. Na hii ni emulator free. Hopefully kanuni kweli pop up katika wakati huu. Tena, na kupuuza mambo hayo yote kidogo. Lakini emulator Android unaweza kuiga toleo yoyote ya mfumo wa uendeshaji kutoka ndio mwanzo, donut, Gingerbread. Hii ni Jelly Bean 4.1. Lakini kama unaweza kuona hivi sasa, hii ni kitu sisi alifanya. Hii ina MainActivity, editText, kifungo. Siwezi aina kitu hapa, lakini ni sisi kukosa katika hatua hii? Tukiwa na shamba katika MainActivity kwamba kinaendelea kutuma ujumbe na shughuli nyingine, lakini katika hatua hii hatujafanya kitu katika shughuli nyingine, hivyo si kwenda kupokea kitu chochote. Hebu kumaliza up kwamba sehemu kabla ya sisi kuondoka. Shughuli hii matokeo, nini tutaweza haja ya kufanya ni tutaweza haja ya kufanya ni tutaweza haja ya- tunaweza pia rejea dhamira ndani ya shughuli hii, hivyo tuna kukamata dhamira, ambayo ni kweli rahisi. Ni kazi pamoja katika darasa shughuli, hivyo tunaweza tu kusema "Kupata ujumbe kutoka kwa dhamira." "Dhamira myIntent = getIntent." Na hii itatupa-sasa myIntent ni kitu, ambayo ni kumbukumbu ya dhamira ya kwamba imesababisha sisi shughuli hii. MainActivity wito na anatoa maelezo ya ziada na kusababisha shughuli. Matokeo ya shughuli sasa inaonekana katika dhamira ambayo imesababisha hapa, na tunaweza kupata ujumbe kwamba sisi aliumba katika moja nyingine, getStringExtra, na hii mapenzi autocomplete kwa ajili yangu. Na kisha kumbuka, njia ya sisi tagged kwamba kidogo ya data mara kwa kutoa ni uwanja huu haki hapa, hii kamba ya umma, ambayo ni tag kwa kamba sisi kweli pamoja. Kama mimi kusema MainActivity.Extra_Message ni haki pale, na hii ni aina ya kama jina parameter wakati sisi kupita kanuni kutoka mtawala template, wakati tunatarajia kusema cheo mshale kitu. Ni aina moja ya wazo huko. Sasa, kumbuka hii. Sisi pia alikuwa auto hii kuundwa au auto yanayotokana kanuni kwa ajili ya shughuli matokeo, ambayo ni pamoja na maoni ya maandishi katikati kwamba anasema dunia hello. Sisi inaweza uwezekano wa kufanya kubwa. Hebu kufanya hivyo kwanza. Tunaweza kufanya hivyo 40 wiani huru saizi. Hebu angalia, kwamba ni super kubwa. Kwamba itakuwa sawa. Na kisha ili kumbukumbu hii ya mtu binafsi Nakala maoni ndani ya kanuni zetu tutaweza haja ya kuwapa kitambulisho, na ili kufanya hivyo tunasema @ + id, ambayo ina maana sisi hawawajui ID. Kama sisi tu alisema @ id ingekuwa kudhani sisi ni referencing ID kwamba tayari ipo, na hebu simu hii resultTextView yetu. Na taarifa kwamba katika XML hakuna haja kwa semicolons au kitu chochote. Kila kitu ni ndani ya vitambulisho hivi. Ni sawa na HTML katika mengi ya akili. Inachukua kidogo ya kupata kutumika, lakini hatimaye utasikia kujisikia pretty vizuri na hayo. Hebu update Nakala kwa mtazamo matokeo yetu ya maandishi, na kama tulivyofanya tulipokuwa kupata kwamba Nakala hariri shamba katika shughuli zetu nyingine katika MainActivity hapa sisi pia vivyo hivyo- tutaweza kupata maoni na ID. Na R, katika kesi Mimi si kutaja hili kabla, ni kumbukumbu folder rasilimali zetu, na kisha ID ni kumbukumbu ya kila kitu katika folder rasilimali, Vitambulisho vya wote, na resultTextView. Na tu kama kabla, resultTextView ni kitu, maana yake ina hizi mali yote yanayohusiana na hayo. Wakati sisi kutumia getText kwa ajili ya maandishi hariri kwa ajili ya hii shamba maandishi au mtazamo Nakala tunaweza kweli kutumia setText, na kisha sisi tayari kupatikana ujumbe kutoka kwa dhamira, hivyo naweza kusema ujumbe, na hii itakuwa kweli kuweka ujumbe. Ni kuchukua wakati wa uzinduzi, na kisha tunaweza kuona kama au ni shambulio, lakini maswali yoyote kuhusu mchakato kwamba haki pale, kwamba aina ya mahusiano? Kwa njia nyingi ni moja kwa moja. sababu mimi naenda kwa njia ya kitu rahisi kiasi ni, tena, kwa sababu wewe kupata kuona mwingiliano kati ya layout, kanuni ya chanzo, jinsi rejea mambo na labda kupata mfiduo kidogo jinsi Java kazi huko. Kama mimi kwa kweli aina kitu katika hapa, kama ohai, na kisha mimi bonyeza kifungo, ni lanserar shughuli mpya, na kwamba mtazamo Nakala anasema ohai. Hiyo ni rahisi sana, lakini hopefully baada ya mfano kwamba wewe aina ya kuona jinsi mwingiliano hii kazi, na sasa kwamba fujo ya mafaili upande wa kushoto kwa ajili ya haya folders kila mradi, hopefully unajua ambapo kuangalia sasa. Hii ni chanzo yako ya eneo. Layout ni kweli jambo tu utasikia kuhusika na hata wewe ni pamoja na picha na drawables au chochote, na maadili, ambayo ni pamoja na masharti, kama sisi zilizotajwa, na kisha mitindo ni kitu ambacho aina ya kama CSS. Kulishughulikia wakati unataka, lakini mpaka kujisikia vizuri na kuongeza Flair ziada kwa maombi yako hakuna haja ya kuwa na wasiwasi juu sana. Tu wa kufuta jambo moja nyingine utakuwa dhahiri wanataka ni pamoja na- kuchukua unataka kuunganisha makala ya baridi na kujiokoa baadhi ya ziada coding- itakuwa ni maktaba chama 3. Hapa ni kidogo Android guy na Sherlock Holmes kofia. Hii ni hatua bar Sherlock maktaba, ambayo kimsingi ina maana kwamba bar hatua wewe aliona mapema, ambayo sasa ni ya kiwango katika Sandwich Ice cream na Jelly Bean, kama unataka kuleta kwamba aina ya uzoefu wa mtumiaji kwa watumiaji juu ya matoleo ya zamani na kujiokoa kutoka hofu juu ya jinsi ya mtumiaji ni kwenda navigate juu ya matoleo ya zamani wakati kitu ambacho si huko unaweza ni pamoja na hii maktaba na kisha wewe tu na kumbukumbu-badala ya Android default maktaba kwa ajili ya bar hatua, wewe rejea hii maktaba ya msaada. Mambo kama Scoreloop, ni kubwa kama wewe ni kwenda kwa pamoja na mchezo. Ni inakuwezesha kuongeza bodi kiongozi na mafanikio ya michezo. Admob ni njia ya kuweka matangazo katika maombi yako katika kesi unataka kufanya pesa kidogo mbali ya hilo. Bila shaka, kuna kuungana na Twitter kwa kuunganisha huko kama unataka kushiriki mambo kwa urahisi, nakadhalika. Dropbox, vivyo hivyo, na taaluma ya Google ni kwamba chati kuangalia moja huko. Kwamba itakuwa muhimu sana kama kweli wanataka kuona ambaye ni mazungumzo na programu yako au ni nani, jinsi wao kiutendaji, nakadhalika. Google, na msingi, anakwambia mengi ya takwimu kuhusu ambaye imewekwa programu yako na kile Simu za wana, nini mfumo wa uendeshaji matoleo wao. Lakini kama unataka kuona ambaye ni kutumia juu ya kila siku na jinsi ya kuitumia basi utasikia wanataka ni pamoja na baadhi ya aina ya mfumo wa kufuatilia kama hiyo. Wakati uko tayari kusambaza programu yako Sina haja ya kwenda katika kwamba kwa kina sana. Bonyeza kiungo hapa, Google kucheza. Ni kutumika kuwa soko free. Wao rebranded kila kitu pamoja na michezo ya Google, hivyo sasa kuwasilisha kwamba. Ni rahisi sana. Una pamoja na maelezo, baadhi ya viwambo. Kama nilivyosema, hakuna mchakato wa kupitishwa kama iOS. Na wapi kwenda kutoka hapa? Mimi ilionyesha mfano wewe kweli rahisi. Hopefully kama inaonekana sana rahisi basi kwamba pengine dalili nzuri. Kama wewe wakati wote waliona kidogo kuchanganyikiwa au uhakika kuhusu hasa ni nini nilikuwa kuandika hilo pia ni mzuri, lakini kutoka hapa kwenda Guides Google. Hii ni sehemu kubwa ya kuanza. Itakuwa majadiliano yenu kupitia kile wanatarajia katika suala la kubuni maombi, jinsi watumiaji kawaida kiutendaji na hivyo. Ni zaidi fomu bure kuliko iOS, ningependa kusema, ambayo inaonekana kama meza maoni ni-sijui, kwamba ni mkate wao na siagi. Kila kitu ni maoni meza sliding juu na chini. Na Android wao dhahiri kuhamasisha watu kuangalia ni kutoka kundi zima la mitazamo tofauti. Wakati wewe ni pamoja na programu ya maendeleo kit katika ADT hii na default una rundo zima la miradi katika sampuli free. Haki hapa, Android, free Mfano wa Mradi. Kama mimi bonyeza kwamba, naweza kuchagua toleo kwa ajili ya ambayo ya sampuli miradi kuomba. Kuna rundo zima ya mambo mbalimbali hapa. Ni kuanza mbali na hatua utangamano bar, accelerometer kucheza, Backup na kurejesha, Bluetooth, wajenzi ishara. JetBoy ni mchezo sampuli wao kukupa, kama ni LunarLander. Kuna rundo zima la maombi ya sampuli hapa, na wao ni wote walengwa katika masuala mbalimbali ya API Android, na wazo ni kwamba kama wewe kufanya maombi yako huna haja ya kujifunza kila kitu kuhusu Android kufanya programu free. Wewe tu na kujifunza kuhusu sehemu kwamba wewe ni kweli kwenda kutumia. Angalia katika maktaba hizi sampuli. Kujisikia huru na nakala na kuweka kanuni na reapply yake. Ni jambo kubwa kwa kuangalia kanuni ngumu zaidi na kujaribu kuelewa, ambayo ni ya kweli kwa nini katika CS50 sisi mara nyingi kutoa kiasi kikubwa cha kanuni ya chanzo. Angalia katika baadhi ya hizi kama wewe ni kwenda kutumia maktaba sawa na kisha kuyatumia katika kanuni yako mwenyewe. Na bila shaka, kuna tutorials. Kutafuta tutorials. Nimeona mengi ya watu wema online ambayo unaweza kuleta hadi kasi na kile vipande kweli ni na jinsi unavyoweza kuzitumia. Baadhi ya mambo haya mpya kubuni, kama vipande, wewe kweli hawana kuwa na wasiwasi kuhusu isipokuwa wewe ni kufanya pretty kubwa katika mradi wa upeo. Wao ni mambo ambayo Google ni kujaribu awamu in Stackoverflow ni mwendo wa rafiki yako. Hopefully mimi kuuzwa wewe kidogo juu ya Android, kutambua ni zaidi rahisi mbinu katika suala la lugha tu coding. Java ni ningesema rahisi kuelewa kuliko Lengo-C. Admin ni kuongezeka nadhani zaidi ya iOS. I mean, data ni huko pia, mbali na nini nadhani. Ni kwenda kuwa karibu kwa muda, na wao ni miaka michache nyuma katika suala la mizunguko yao ya kubuni, hivyo ni aina ya kueleweka kwamba wao bado uko kufanya kazi kupitia baadhi ya haya uthabiti maswali, kama bar hatua hii ni kitu kipya kwa ajili yao bado, aina ya kujenga sawa user uzoefu katika programu zao zote. Hopefully unaweza kwenda mbele sasa na kufungua Eclipse na kufanya programu yako mwenyewe free. Je, mtu yeyote kuwa na maswali yoyote kabla ya sisi wrap up juu ya kitu chochote? Naweza kukuambia jibu ni 42. Naam, furaha coding kila mtu, na bahati nzuri. [CS50.TV]