Uzi maalumu kwa ajili ya kujifunza namna ya kutengeneza Android Apps

mwaminifuhalisi

JF-Expert Member
Joined
Feb 26, 2017
Messages
329
Points
500

mwaminifuhalisi

JF-Expert Member
Joined Feb 26, 2017
329 500

Katika thread hii tutajifunza namna ya kutengeneza application za Android "from the scratch", Japokuwa kuna "platforms" mbalimbali mtandaoni ambazo zinaweza kumsaidia mtu yoyote kuunda apps hata pasipo kuwa na ujuzi wowote kuhusu programming, hapa itakuwa ni tofauti.

Imani yangu wale wote ambao watakuwa na mwamko wa kujifunza kuunda apps za Android ni kwamba wana ufahamu wa kufanya programming kwa kutumia JAVA ama OOP language yoyote na pia wana uelewa hata kidogo kuhusu xml (Extensible Markup Language).

Mtindo ambao tutajifunza ni kwa namna ya ku-develop projects (apps) mwanzo mwisho, na tutakopofika ukingoni mwa mafunzo haya ningeomba tushirikiane kwa pamoja kuunda app ambayo itakuwa nzuri na kisha tuunde hata team ambayo tutaweza kuunda apps mbalimbali.

Zifuatazo ni projects ambazo tutazifanya kupitia uzi huu:

1. Welcome App
2. Android Media Player
3. Tip Calculator App
4. Music Event App
5. Uber Clone
6. Messaging App (Whatsapp Clone)
7. Flag Quiz App
9. Cannon Game App
10. Weather App
11. Media, Videos and Sound Apps
12. Instagram Clone

Karibuni nyote.
 

mwaminifuhalisi

JF-Expert Member
Joined
Feb 26, 2017
Messages
329
Points
500

mwaminifuhalisi

JF-Expert Member
Joined Feb 26, 2017
329 500
SEHEMU YA KWANZA: MAHITAJI(TOOLS) YA KUWEZA KUFANIKISHA UUNDWAJI WA ANDROID APPS
Kuna programu kadhaa ambazo zinahitajika ili kuweza kuunda hizi apps, programu hizo ni kama zifuatazo.

1. kompyuta inapaswa iwe na JAVA Development kit (JDK),
Apps za android kwa asilimia kubwa huundwa kwa kutumia java hivyo ni vizuri ukapata SDK ya javaa ambayo ni latest kabisa, unaweza kuipata kwa kutumia link ifuatayo,
Java SE Development Kit 8 - Downloads

2. Android SDK ambayo imeambatanishwa na Android Studio IDE
Hizi tooks zipo kwa ajili ya platform(OS) tofauti tofauti, kwangu mimi nitakuwa natumia windows na si linux lakini ukitaka kwa upande wa linux pia zipo.
Android Studio ndio ambayo tutaitumia katika kuandika codes, hii ni IDE rasmi ya android kwani zamani Eclipse IDE ndio iliyokuwa inatumika.
links.
kwa ajili ya windows,
Download Android Studio and SDK Tools | Android Studio
 

mwaminifuhalisi

JF-Expert Member
Joined
Feb 26, 2017
Messages
329
Points
500

mwaminifuhalisi

JF-Expert Member
Joined Feb 26, 2017
329 500
TUJARIBU KAMA TOOLS ZINAFANYA KAZI IPASAVYO.
Natumai umeweza kuinstall hizo tools pasina na tatizo lolote, fungua Android studio hiyo android na kwa mara ya kwanza utakutana na inteface ya namna hii,
1.PNG


Chagua "Start a new Android Studio project", Baada ya hapo itakuja muonekano ufuatao
2.PNG

Hiyo sehemu ya application name unaweza kuipa jina lolote ambalo unalolita, badala ya hapo utabonyeza next, na itakuja interface ifuatayo,
3.PNG

Na baada ya hapo bonyeza next na itakuja interface ambayo itakutaka kuchagua muonekano wa jumla wa app yako jinsi itakavyoonekana kwenye simu ama tablet na utachagua "empty activity". na utabonyeza next na kisha finish.
4.PNG
 

mwaminifuhalisi

JF-Expert Member
Joined
Feb 26, 2017
Messages
329
Points
500

mwaminifuhalisi

JF-Expert Member
Joined Feb 26, 2017
329 500
Badala ya kumaliza hayo yote, ufuatao ndio general environment ya Android studio IDE, tutaendelea kujua tools zote ambazo zinapatikana kwenye hizo ide,

5.PNG


Kwenye title bar kuna "activity_main.xml" na "MainActivity.java",

"MainActivity.java" ndilo java file ambalo source code za java na maswala yote ya logic huandikwa, na hiyo picha ya juu unayoiona ni java sourcecode.

"activity_main.xml" hili ndilo file la xml ambalo hufafanua muonekano wa jumla wa app. kwenye android studio activity_main.xml file zipo kwenye miundo miwili, 1. muundo wa maandishi(xml source codes) 2. mundo wa kimuonekano wa simu design. Angalia picha hapa chini.

Muundo wa kwanza wa xml source codes(Text),

6.PNG

Muundo wa pili wa kimuonekano wa simu (Design)
7.PNG

Kwa hiyo unaweza kuchagua muundo gani ni rahisi ili kuunda interface unayoitaka kama ni "Text" au "Desin", ukiangalia picha ya muundo wa kwanza kwa chini kushoto kuna Text Design hapo ndipo unapofanya uchaguzi wa muundo.

Line 1 ambayo ya blue inawakilisha sehemu ya kubuild na ku-run app project , lakini kama ya ku-run app unatakiwa uweze kutengeneza android virtual device (AVD), hii ni emulator (mfano wa simu za android) ambao upo kwenye muundo wa software kwa kila ukimaliza project na kuirun basi result za hiyo app zitakuwa zinatokea kwenye hiyo emulator, bonyeza AVD manager ambayo imewakilishwa na line 2 nyekundu kuunda emulator. pia unaweza kutumia simu halisi ku-run apps.

Baada ya kutengengeneza AVD basi run project hakikisha emulator imetokea na kukuonyesha result ya "hello World!", kama imekubali basi kila kitu kipo sawa na tuwe tayari kwa ajili ya kujifunza zaidi.
 

mwaminifuhalisi

JF-Expert Member
Joined
Feb 26, 2017
Messages
329
Points
500

mwaminifuhalisi

JF-Expert Member
Joined Feb 26, 2017
329 500
Tuko pamoja mkuu lakini nina swali, je sisi tunaotuma C language hatuwezi kutengeneza app
Inawezekana kabisa kuunda app, lakini unaufahamu kuhusu QT framework ambayo hii pia hutumika kutengeneza app za android na inatumia c/c++?, lakini nakushauri chukua muda wako kujifunza JAVA kama unajua programming haitakushinda kujifunza JAVA ndani ya muda mfupi.

Lakini kama hutopenda kujifunza JAVA android wana kitu kinaitwa Native Development Kit ambayo utaweza kuunda app kwa kutumia c/c++, link ya sdk kwa ajili ya NDK hii hapa chini

NDK Downloads | Android Developers
 

Isack Michael

Senior Member
Joined
Jan 12, 2017
Messages
121
Points
225

Isack Michael

Senior Member
Joined Jan 12, 2017
121 225
Inawezekana kabisa kuunda app, lakini unaufahamu kuhusu QT framework ambayo hii pia hutumika kutengeneza app za android na inatumia c/c++?, lakini nakushauri chukua muda wako kujifunza JAVA kama unajua programming haitakushinda kujifunza JAVA ndani ya muda mfupi.

Lakini kama hutopenda kujifunza JAVA android wana kitu kinaitwa Native Development Kit ambayo utaweza kuunda app kwa kutumia c/c++, link ya sdk kwa ajili ya NDK hii hapa chini

NDK Downloads | Android Developers
Na je ukitaka pia hiyo Android app iwe pia desktop app unafanyaje?
 

mwaminifuhalisi

JF-Expert Member
Joined
Feb 26, 2017
Messages
329
Points
500

mwaminifuhalisi

JF-Expert Member
Joined Feb 26, 2017
329 500
Kama unataka kutengeneza desktop app unafanyaje kwa kutumia C
Kumbe unataka kutengeneza desktop application, binafsi napenda kutumia hiyo QT framework kwa kutumia C/C++, tukimaliza hii kozi, tutahamia huko au kama una haraka nikupe vitabu na videos tutorials na source codes za software mbalimbali kama utahitaji.
 

Isack Michael

Senior Member
Joined
Jan 12, 2017
Messages
121
Points
225

Isack Michael

Senior Member
Joined Jan 12, 2017
121 225
Kumbe unataka kutengeneza desktop application, binafsi napenda kutumia hiyo QT framework kwa kutumia C/C++, tukimaliza hii kozi, tutahamia huko au kama una haraka nikupe vitabu na videos tutorials na source codes za software mbalimbali kama utahitaji.
Naomba unipe vitabu video tutorial na source code
 

mwaminifuhalisi

JF-Expert Member
Joined
Feb 26, 2017
Messages
329
Points
500

mwaminifuhalisi

JF-Expert Member
Joined Feb 26, 2017
329 500
1. First App: WELCOME APP
Sasa tunaenda kuunda app ya kwanza ambayo ina hatua chache tu za kufuata, kabla ya kuunda hii app kwanza tuelewe baadhi ya sehemu za Android Studio ili iwe rahisi huko tuendapo.

8.png

Box namba moja, ni sehemu ambayo ina onyesha mipangilio ya contents zitakavyotokea katika screen ya simu, kwa mfano kwenye hiyo screen hapo ni Relative Rayout ambayo ni muonekano ambao child elements zinaonekana katika relative position na mtangulizi wake.

Pia kuna layout mbalimbali kama unavyoona kwenye box 1, tutajua kadri tunavyoendelea kujifunza. Layout unaweza kuzibadili kwa kuandika katika xml file au unadrag na kudrop.

Box namba 2: Hii ni sehemu ambayo ina vitu ambavyo vinaweza kuwekwa katika screen, kwa mfano unataka kwenye app yako ionekane maandishi(Text) basi utachagua aina ya widget unayohusiana na maandishi kwa hapo utachagua aidha smal, medium au large text , na kisha una drag na kuidrop kwenye position ya screen unayoitaka, hivyo hivyo kwenye widgets zingine kama image, buttons, checkbox na zingine kama zinavyoonekana kwenye box.

Box namba 3: Hii ni sehemu ambayo inaonyesha components ambazo zinapatikana katika screen ya simu. kwa mfano hapo tulichagua relative layout na yenyewe itatokea hii sehemu, baaada ya hapo tukachagua button na kuiweka kwenye basi na yenyewe itaonekana hii sehemu.

Box namba 4: Hii ni sehemu ambayo inahusisha vitu ambavyo vitaweza kumodify components za kwenye screen, kwa mfano ukiwa umedrop (umeachagua) widget ya small text neno ambalo litakalotokea ni "hello world"! kubadilisha hili utaenda kwenye device screen (part 3) na kuchagua TextView na kisha unarudi sehemu hii ya property na kushuka mpaka sehemu imeandikwa text na kisha kuandika neno unalolitaka.

Box namba 5: Hii ni sehemu inayohusisha sourcecodes ambazo ni za java, images ambazo utazozitumia kwenye app, resource files nk, tutajua kadri tunavooenda mbele.
 

mwaminifuhalisi

JF-Expert Member
Joined
Feb 26, 2017
Messages
329
Points
500

mwaminifuhalisi

JF-Expert Member
Joined Feb 26, 2017
329 500
WELCOME APP cont....​
1. Nenda sehemu ya widget kama zinavyoonekana hapa juu , Chagua Medium Text(ama yoyote uipendayo) halafu idrag na kuidrop katika ama popote kwenye screen,

2. Neno ambalo ni default huwa ni "Hellow world", bonyeza "right click" na kisha uli-delete hilo neno, kuandika neno lako itabidi uende kwenye upande wa box namba 3 (components tree), utaona "relative layout" kisha "TextView" chagua hiyo "TextView" na kisha nenda upande wa property (box namba 4) ushuke mpaka sehemu ya text na uandike neno unalotaka.

11.PNG


Lakini ukitazama hayo maandishi text ni madogo na pia unaeza usipendezwe na rangi ya text zako unaweza ukabadili kwa kuandika hexadecimal values kwenye hiyo sehemu ya "textColor".
Pia unaweza kuongeza size ya maandishi, Tazama hiyo picha hapo chini

12.png


Hii ni sehemu ya kuchagua rangi ya text unayoitaka, hii ina kuja kwa kubonyeza sehemu ilizungushiwa na box la blue itakuja hiyo dialog na utachagua rangi uitakayo.

13.PNG


Hii ni picha ya kuongeza size ya text, hapo tumeongeza size 50dp, kwenye android kipimo kimojawapo ni dp au dip kirefu chake density independent pixel ni kipimo ambacho kimebase na density ya screen, vipimo vingine vinavyotumika kwenye android ni pixel (px), inch (in), millimeter (mm), point (pt), Scale Independent Pixel (sp).

Hapo tutakuwa tumeshamiliza kuunda app yetu, hivyo unatakuwa urun na kwenye console (emulator) au simu yako itokee output kama inayoonekana kwenye hiyo picha,

Kwa app hii bado hutujaanza kufanya coding, ila tu tulikuwa tunadeal na interface (UI)
 

Forum statistics

Threads 1,381,648
Members 526,151
Posts 33,807,387
Top