Как да създадете приложение за Android: Всичко, което трябва да знаете

Как да създадете приложение за Android: Всичко, което трябва да знаете
Това ръководство е достъпно за изтегляне като безплатен PDF файл. Изтеглете този файл сега . Чувствайте се свободни да копирате и споделите това с приятелите и семейството си.

Добре дошли в ръководството на MakeUseOf за създаване на собствено приложение за Android. В това ръководство ще разгледаме защо бихте искали да създадете свое собствено приложение за Android, някои опции, които имате за изграждането му, и как да го направите достъпен за други.





Въведение в разработката на Android

Има два основни начина за разработване на приложение за Android. Първият е да го напишете от нулата, най -вероятно в Java. Но това, разбира се, вече ви предполага зная Java или имате търпение да го научите, преди да се потопите. Но какво, ако ви сърби, за да започнете веднага?





Другата опция е един от създателите на приложения за щракване и щракване на пазара. Много от тези целеви корпоративни потребители (и идват с корпоративна цена). Но MIT предлага своя „App Inventor“, онлайн инструмент, който ви позволява да изграждате приложението си визуално. Можете да постигнете някои чисти неща с App Inventor, което ще ви държи заети, докато не поразровите Java и нямате достъп до всички мощни функции на платформата Android.





В долните раздели ще изградим прототипна версия на просто приложение „скречпад“, което ще съхранява текста, който въвеждате в него. Първо ще направим това в App Inventor и ще визуализираме резултатите в емулатор на Android. След това ще разширим това приложение с възможност за избор от множество файлове, превръщайки го по -скоро в „бележник“. За този вид подобрение ще трябва да се потопим в Java и Android Studio.

Готов? Нека да стигнем до него.



Защо да се разработва за Android?

Има няколко причини, поради които бихте искали да създадете свое собствено приложение за Android, включително:

  • Необходимост : В крайна сметка това е майката на изобретението. Може би след като потърсите в Play Store за мечтаното си приложение, осъзнавате, че това е нещо, което ще трябва да изградите сами, защото никой друг все още не го е направил.
  • Общност : Разработването на нещо полезно и предоставянето му безплатно (особено като отворен код) е отличен начин за участие в общността на Android и/или FOSS. Без приноса с отворен код няма да има Linux и без Linux нямаше да има Android (или поне няма Android, какъвто го познаваме). Затова помислете за връщане!
  • Изучаване на : Има няколко по -добри начина да разберете платформата, отколкото да я разработите. Може да е за училище или за ваше любопитство. И хей, ако можете да спечелите няколко долара в крайна сметка, още по -добре.
  • Монетизация : От друга страна, може би ще направите това, за да печелите пари от самото начало. Докато Android някога се смяташе за „ниско наемния“ район на приходите от приложения, това бавно се обърна. Business Insider съобщава през март че приходите от Android се очаква да изпреварят iOS за първи път през 2017 г.
  • Добавка : Разработчиците често създават приложения като начин за популяризиране, достъп или по друг начин да допълват съществуващ продукт или услуга - като придружаващи конзолни приложения и собствено приложение на MakeUseOf (вече не е налично).

Каквато и да е вашата причина, разработването на приложения ще предизвика вашите дизайнерски, технически и логически умения. И резултатът от това упражнение (работещо и полезно приложение за Android) е голямо постижение, което може да служи като портфолио.





Има много начини за създаване на вашето приложение, включително различни инструментариуми, езици за програмиране и издателски обекти . На високо ниво те се разделят на следните две категории.

Насочете и щракнете върху Приложения

Ако сте нов начинаещ в разработката, има среди, които ви позволяват да създадете приложение за Android по същия начин, по който бихте създали презентация на Powerpoint. Можете да изберете контроли, като бутони или текстови полета, да ги пуснете на екран (както е показано на изображението по -долу) и да предоставите някои параметри за това как трябва да се държат. Всичко без писане на код.





Тези видове приложения имат предимството на плитка крива на обучение. Обикновено можете да скочите директно и поне да започнете да излагате екрана си. Те също така отнемат много сложност от приложението, тъй като са проектирани да обработват технически подробности (като типове обекти или обработка на грешки) зад кулисите. От друга страна, тази простота означава, че сте на милостта на създателя на инструмента за това кои функции се поддържат. В допълнение, много от тези инструменти са насочени към големи компании и могат да бъдат скъпи.

Изключение прави уеб приложението на MIT App Inventor, което е функционално и безплатно. След като влезете с акаунт в Google, можете да щракнете заедно за приложение за няколко минути и да го визуализирате или на телефона си, или чрез емулатор на Android.

Пишете от Scratch

Другият вариант е да напишете молбата си от нулата. Това вероятно е различно от това, което си представяте - не е като филмите да го изобразяват.

Той въвежда код по един ред в изходни файлове, след което ги компилира в изпълними приложения. Макар да звучи скучно, в действителност много повече от времето ви в програмирането се изразходва в дизайн или обмисляйки как трябва да работят нещата. Попитайте повечето разработчици и те ще кажат, че харчат само 10-15% от времето си за въвеждане на код. Така че ще прекарвате по -голямата част от времето си в мечти (продуктивно) за това какво трябва да прави приложението ви.

Можете да кодирате приложения за Android по няколко различни начина. „Стандартният“ начин е да се пишат приложения на Java, последователно един от най -популярните езици в света, въпреки че Google добавя Kotlin като друга опция. За приложения с интензивна производителност, като игри, имате възможност да пишете на „роден“ език като C ++. Тези приложения работят директно върху хардуера на вашето Android устройство, за разлика от „обикновените“ Java базирани приложения, които работят на виртуалната машина Dalvik. И накрая, има начини за „опаковане“ на уеб приложения (използвайки инструментариуми като Xamarin на Microsoft или Native React на Facebook) за разпространение като мобилни приложения, които изглеждат „родни“.

Докато интегрираните среди за разработка (IDE) наистина се справят с някои от рутинните елементи на програмирането, разберете, че кривата на обучение за този метод е стръмна. Какъвто и език да изберете, ще трябва да сте запознати с неговите основи. Инвестирането на това време предварително е недостатък на този метод, в смисъл, че няма да можете да влезете в разработката на приложението си веднага. Но това е предимство в дългосрочен план, тъй като уменията, които научавате, могат да бъдат приложени другаде. Научете Java и можете да разработвате приложения за настолни компютри и сървъри (включително уеб базирани) в допълнение към приложенията за Android.

Кой вариант е най -подходящ за вашия проект?

И така, кой път е най -добрият? Това е твърде субективно, за да отговаря на всички, но можем да го обобщим по следния начин. Ако сте любопитни, но просто „играете наоколо“, се придържайте към създателите на приложения „насочи и кликни“. Те ще ви помогнат да надраскате този творчески сърбеж, без да се нуждаете от „курсова работа“. Но ако идеята за тази курсова работа не ви плаши, помислете за по -дългия път и изучаването на език за програмиране. Инвестицията ще се изплати по много други начини.

В допълнение, помислете за използването и на двете! Конструкторите с насочване и щракване са отличен начин бързо да съберете прототип или „доказателство за концепция“. Използвайте ги, за да преработите някои от детайлите (като оформление и потока на екрана) такива, каквито са много по-бързо разбъркване в среда, управлявана от мишка. След това ги въведете отново в Java, ако е необходимо, за да се възползвате от нейната гъвкавост.

Ние ще използваме точно този подход в това ръководство. Ние ще:

  1. Прототип нашето приложение, „скречпад“, който ще съхранява част от текста във файл за вас, използвайки App Inventor на MIT.
  2. Повторно внедряване това в Java (с малко помощ от Android Studio IDE на Google), след това преминете към разшири приложението, което ви позволява да избирате измежду множество файлове, което го прави по -скоро „бележник“.

Добре, достатъчно приказки. В следващия раздел ще се подготвим за кодиране.

Подготовка за създаване на вашето приложение

Все още не се гмуркайте - първо се нуждаете от знания и софтуер.

Знания, от които се нуждаете

Преди да започнем да инсталираме софтуер, трябва да имате някои знания, преди да започнете. На първо място е, 'Какво трябва да направи?' Изчакването, докато имате ясна концепция за приложението си, преди да започнете разработката, може да изглежда като даденост - но ще бъдете изненадани. Така че отделете малко време, за да разработите тази концепция, дори да отбележите някои бележки за поведението и да скицирате някои екрани. Първо имайте относително пълна представа за приложението си.

След това разгледайте какво е възможно. Например, представете си, че идеалната картина на вашето приложение е нещо, което ви позволява да записвате видео през целия си живот за потомство. Вие мога създайте приложение, което ще заснема видео. Вие не може създайте такъв, който ще съхранява всеки момент от живота ви на вашето устройство (недостатъчно място за съхранение). Вие обаче мога опитайте се да разтоварите част от това хранилище в облака, въпреки че ще отнеме време за разработване и това идва със свои собствени ограничения (какво се случва, когато нямате достъп до мрежата?). Тук ще разгледате някои технически подробности и можете да информирате решения като например дали ще кодирате от нулата или не.

И накрая, струва си да се знае какво има там вече. Ако просто искате да научите или да допринесете за общността, има ли съществуващ проект с отворен код като вашия? Можете ли да разклоните този проект като отправна точка? Или още по -добре, да развиете подобрението си и да го допринесете? Ако искате да печелите пари, каква е вашата конкуренция? Ако напишете просто приложение за будилник и очаквате да спечелите милион долара от него, по -добре донесете нещо специално на масата.

Както бе обсъдено, ще изградим обикновен скречпад, който събира и съхранява текст, който сте вложили в него. По този начин ще нарушим горните правила, тъй като вече има много приложения за водене на бележки за Android, както отворени, така и затворен източник . Но нека се преструваме, че това ще стане много по -сложно приложение по -късно. Трябва да започнеш отнякъде.

Сега ще получим част от софтуера, от който се нуждаете.

Подготовка за разработка с App Inventor

Не е необходимо да инсталирате нищо, за да използвате инструмента App Inventor. Това е уеб приложение и имате достъп до него изцяло чрез браузъра. Когато посетите сайта, в горния десен ъгъл ще видите бутон за Създавайте приложения! Ако в момента не сте влезли в акаунт в Google, щракването върху това ще ви отведе до страница за вход.

В противен случай трябва да отидете директно при App Inventor Моите проекти страница.

В този момент помислете къде искате да тествате приложението си. Ако сте авантюристи, можете да го изпробвате на телефона или таблета си, като го инсталирате приложението Companion от Play Store . Тогава сте готови за сега - ще ви е необходим работещ проект, за да видите каквото и да е на вашето устройство, но ще стигнем до това по -късно.

Като алтернатива можете да използвате емулатора, за да тествате приложението си на компютъра. Изтеглете и инсталирайте емулатора за вашата операционна система от тази страница . Изображението по -долу показва приложението, инсталирано на Linux, но подходящата версия трябва да се инсталира без проблеми и на Windows или Mac.

Можете да стартирате емулатора, като изпълните командата 'aiStarter'. Това започва фонов процес който свързва вашия (локален) емулатор с (базиран на облак) App Inventor. Системите на Windows ще предоставят пряк път за него, докато той ще стартира автоматично за потребителите на Mac при влизане. Потребителите на Linux ще трябва да изпълнят следното в терминал:

как да извадите данни от стар твърд диск
/usr/google/appinventor/commands-for-appinventor/aiStarter &

След като стартира, можете да тествате връзката, като щракнете върху Съперник елемент в Свържете се меню. Ако видите, че емулаторът се завъртя (както е показано на изображението по -долу), можете да започнете.

Инсталиране на Android Studio

Ако планирате да разработите някои прости програми, App Inventor може да е всичко, от което някога ще се нуждаете. Но след като си поиграете с него известно време, може да ударите стена или да знаете, че ще използвате някои функции, които App Inventor не поддържа (като таксуване в приложението). За целта ще трябва да имате инсталиран Android Studio.

Сега официалната среда за разработка, одобрена от Google, Android Studio е версия на IntelliJ ИДЕЯ Java IDE от JetBrains. Можете да изтеглите копие за вашата операционна система от Страницата на Google за програмисти за Android тук . Потребителите на Windows и Mac могат да стартират инсталатора с помощта на EXE файл или DMG изображение съответно.

Потребителите на Linux могат да използват ZIP файла, да го разопаковат където пожелаете и да стартират Android Studio от там (потребителите на Windows/Mac също могат да направят това). В противен случай можете да използвате Ubuntu Make да изтеглите и инсталирате пакета вместо вас. Ако използвате най -новата версия на LTS (16.04 към момента на писане), ще трябва да добавите Ubuntu Make PPA към вашата система, за да получите достъп до Android Studio:

sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make

След това актуализирайте системата си със следното.

sudo apt update

И накрая, инсталирайте Ubuntu Make с тази команда:

sudo apt install umake

След като бъде инсталиран, можете да насочите Ubuntu Make да инсталира Android Studio вместо вас със следната команда:

umake android android-studio

След като покаже лицензионното споразумение, то ще започне да изтегля и инсталира основното приложение. След като приключи и стартирате Android Studio, съветникът ще ви преведе през още няколко стъпки.

Първо, вие ще имате избор дали искате „Стандартна“ инсталация или нещо по поръчка. Изберете стандартната инсталация тук, това ще ви позволи да започнете по -бързо.

След това ще получите съобщение, че трябва да изтеглите някои допълнителни компоненти и това вероятно ще отнеме известно време.

След като всичко е инсталирано, ще получите малък начален екран, който ви позволява да създадете нов проект, да отворите съществуващ или да получите достъп до настройките си.

Знам, че си готов да си изцапаш ръцете. Без повече шум, нека изградим нещо.

Изграждане на прост Android Notepad

Тъй като ние (разбира се) се замислихме и обмислихме това, преди просто да влезем, знаем, че нашето приложение за Android ще се състои от два екрана.

Единият ще позволи на потребителя да „редактира сега“ или да излезе, а другият ще извърши действителното редактиране. Първият екран може да изглежда безполезен, но може да е полезен по -късно, когато добавим функции. Текстът, уловен на екрана за редактиране, ще бъде скрит в обикновен текстов файл, тъй като обикновеният текст прави. Следните телени рамки ни дават добра отправна точка (и отне само 5 минути, за да се развихри):

В следващия раздел ще го изградим с App Inventor на MIT.

Първи стъпки с MIT App Inventor

Първата стъпка е да създадете нов проект. Влезте в App Inventor, след което щракнете върху Започнете нов проект бутон вляво (наличен и в Проекти меню).

Ще получите диалогов прозорец, за да му дадете име.

Но сега сте попаднали в изгледа на App Inventor's Designer и има какво да се вземе. Нека отделим малко време, за да разгледаме всеки раздел.

  1. Заглавната лента в горната част показва името на вашия проект ( muoScratchpad ); ви позволява да добавяте, премахвате и превключвате между екраните на приложението си (напр. Екран 1 ); и превключва между App Inventor Дизайнер и Блокове възгледи в най -дясната страна.
  2. The Палитра вляво съдържа всички контроли и джаджи, които ще използвате. Те са разделени на раздели като Потребителски интерфейс и Съхранение ; ще използваме и двете в нашето приложение. Ще видим как Палитра съдържа различни предмети в Блокове изглед.
  3. The Viewer ви показва какво изграждате по WYSIWYG мода.
  4. Компоненти е списък с елементи, които са част от текущия екран. Докато добавяте бутони, текстови полета и т.н., те ще се показват тук. Някои „скрити“ елементи, като препратки към файлове, ще се показват и тук, въпреки че всъщност не са част от потребителския интерфейс.
  5. The Половината раздел ви позволява да качвате активи, които ще използвате в проекта си, като изображения или звукови клипове. (Това няма да ни трябва.)
  6. Накрая, Имоти панелът ви позволява да конфигурирате избраната в момента джаджа. Например, ако избирате джаджа за изображение, можете да промените нейната височина и ширина.

Оформяне на първия ви екран: „Основен екран“

Нека съберем оформлението за „главния“ екран в Designer, преди да продължим. Разглеждайки скицата, ще се нуждаем от етикет за името на приложението, ред с помощен текст, бутон за преминаване към екрана „редактиране“ и бутон за излизане. Можете да видите Потребителски интерфейс палитрата съдържа всички необходими елементи: два Етикети , и две Бутони . Плъзнете ги във вертикална колона в горната част на екрана.

След това ще конфигурираме всеки от тях. За етикетите можете да зададете елементи като какъв трябва да бъде текстът, цвета на фона и подравняването. Ще центрираме двата ни етикета, но ще зададем фона на името на приложението на черно с бял текст.

Време е да видим как всъщност изглежда на устройство. Когато изграждате неща, правете го на бебешки стъпки. Не мога да подчертая това достатъчно.

Не изграждайте голям списък с неща в приложението си наведнъж, защото ако нещо се счупи, е необходимо a дълго време е да разбера защо. Ако искате да тествате на истински телефон, можете да стартирате приложението AI2 Companion и да се свържете с App Inventor с QR кода или предоставения код от шест знака.

За да визуализирате с помощта на емулатора, уверете се, че сте стартирали описаната по -горе програма aiStarter, след което изберете Съперник елемент отново от Свържете се меню. Така или иначе, след кратка пауза, трябва да видите вашето приложение, което изглежда като нещо, което имате във Viewer (действителното оформление може да зависи от размерите на вашето устройство и емулатора).

Тъй като заглавието изглежда добре, нека променим текста и върху останалите и ги подравним в центъра (това е свойство на екрана, AlignHorizontal , а не текстът/бутоните). Сега можете да видите един от наистина страхотните аспекти на App Inventor - всичките ви промени се извършват в реално време! Можете да видите промяната на текста, бутоните регулират подравняването им и т.н.

Правейки го функционален

Сега, когато оформлението е готово, нека добавим някои функционалности. Щракнете върху Блокове бутон в горния ляв ъгъл. Ще видите подобно оформление като изгледа Designer, но ще имате няколко различни избора, подредени в категории. Това са концепции за програмиране, а не интерфейсни контроли, но като другия изглед, ще използвате плъзгане и пускане, за да ги съберете като част от приложението си.

Палитрата отляво съдържа категории като Контрол , Текст , и Променливи в категорията „Вградени“. Блоковете в тази категория представляват функции, които ще се случват до голяма степен зад кулисите, като например Математика елементи, които могат да извършват изчисления. По -долу е даден списък на елементите на вашия екран (и) и наличните тук блокове ще повлияят на тези елементи. Например, щракването върху един от нашите етикети показва блокове, които могат да променят текста на този етикет, докато бутоните имат блокове, за да определят какво се случва, когато щракнете върху тях.

В допълнение към категорията си (представена с цвят), всеки блок има и форма, която представлява неговото предназначение. Те могат да бъдат грубо разделени, както следва:

  • Можете да мислите за елементи с голяма празнина в средата, като например блока „ако-след“, показан по-горе, като за такива, които се справят събития . Когато нещо се случи в приложението, другите неща в тази празнина ще се изпълнят.
  • Плоските блокове с конектори са едно от двете неща. Първите са изявления , които са еквивалент на команди, елементите, които ще се поберат в потоците по -горе. В горния пример, направи списък блок е изявление, както е затваряне на приложението .
  • Другият вариант е изрази , които се различават само малко от твърденията. Когато едно изявление може да каже „задайте това на„ 42 “, изразът би бил нещо като„ добавете 22 към 20 и ми върнете резултата “. В горното, е в списъка е израз, който ще оцени или вярно, или невярно. Изразите също са плоски блокове, но те вероятно имат раздел от лявата страна и прорез отдясно.
  • И накрая, стойности включва числа ('17' и '42' по -горе), текстови низове ('Thing 1' и 'Thing 2') или true/false. Те обикновено имат раздел само вляво, тъй като те са нещо, което предоставяте на изявление или израз.

Със сигурност можете да преминете през всичко ръководства и уроци на App Inventor. Той обаче е създаден, за да можете просто да започнете да щракате наоколо и (буквално) да видите какво е подходящо. На нашата начална страница имаме два елемента, които се нуждаят от внимание (бутоните), така че нека видим какво можем да измислим. Един от тях (Button2) ще затвори приложението, когато се кликне върху него. Тъй като това е взаимодействие с бутона. Можем да проверим за бутонови блокове и да открием, че има такъв, който започва с когато Button2.click (или когато се натисне бутон 1). Точно това искаме, затова ще плъзнем това върху Viewer.

Сега, когато се кликне, искаме приложението да се затвори, което звучи като цялостна функция на потока на приложения. Като надникнем в Вграден> Контрол раздел, ние наистина виждаме a затваряне на приложението Блокиране. И като го плъзнете до празнината в първия блок, той щраква на място. Успех!

Сега, когато щракнете върху бутона, приложението ще се затвори. Нека опитаме в емулатора. Това ни показва грешка, че затварянето на приложението не се поддържа в средата за разработка, но виждането на това означава, че работи!

Изграждане на втория екран: Редакторски екран

Сега нека насочим вниманието си към Button1.

Това трябва да отвори нашия редактор, така че по -добре да се уверим, че редакторът съществува! Нека да се върнем към Designer и да създадем нов екран със същия етикет като първия екран, a Текстово поле (зададено на „fill parent“ за Ширина, 50% за Височина , и със Многоредови активиран) за задържане на съдържанието ни и друг бутон (с етикет „<< Save'). Now check that layout in the emulator!

пиши на войник без семейство

Преди да продължим напред, знаем, че ще искаме да скрием съдържанието от TextBox, което звучи като Съхранение . Разбира се, има няколко опции там.

От тях, Файл е най -простият и тъй като искаме обикновен текст, всичко ще бъде наред. Когато поставите това във Viewer, ще забележите, че не се появява. Файл е не се вижда компонент, тъй като работи във фонов режим, за да запише съдържанието във файл на устройството. Помощният текст ви дава представа как работи това, но ако искате тези елементи да се виждат, просто проверете Показване на скрити компоненти във Viewer квадратче за отметка.

Преминете към изгледа Блокове сега - време е за програмиране. Единственото поведение, от което се нуждаем, е когато „<< Save' button is clicked, so we'll grab our когато Button1.click Блокиране. Ето къде App Inventor наистина започва да блести.

Първо, ще запазим съдържанието на TextBox, като вземем извикайте File1.saveFile блок и му предоставяме желания от нас текст (използвайки TextBox1's TextBox1.text , който извлича съдържанието му) и файл, който да го съхранява (просто посочете път и име на файл с текстов блок - приложението ще създаде файла вместо вас, ако не съществува).

Нека също така настроим екрана да зарежда съдържанието на този файл, когато се отвори ( Редактор> когато Editor.initialize Блок). Би трябвало извикайте File1.ReadFrom което сочи нашето име на файл. Можем да уловим резултата от четенето на текстовия файл с помощта File> когато File1.GotText , присвойте това съдържание на TextBox с помощта на TextBox> задайте TextBox.Text на блок и го подайте вземете текст стойност. И накрая, след запазването, искаме едно щракване на Button1, за да ни изпрати обратно към главния екран (a затворен екран Блок).

Последната стъпка е да се върнете към главния екран и да програмирате първия бутон. Искаме да ни изпрати на екрана на редактора, който е парче торта с Контрол> отворете друг екран блок, посочващ „Редактор“.

Какво идва след това?

След като имате нещо, което работи, какво следва? За да го подобрите, разбира се! App Inventor ви дава достъп до широк спектър от функции на Android. Освен простите екрани, които току -що създадохме, можете да добавите възможности, включително възпроизвеждане на медии, изпращане на текстове или дори уеб изглед на живо към приложението си.

Едно от първите подобрения, които идват на ум, е възможността да избирате измежду множество файлове. Но бързо търсене в интернет разкрива, че това изисква изключителен хакерство в App Inventor. Ако искаме тази функция, ще трябва да се задълбочим в Java и средата на Android Studio.

Разработка в Java с Android Studio

Разделите по-долу ще опишат-на много високо ниво-развитието на нашето скречпад приложение в Java. Струва си да се повтори отново: макар че може да изплати големи дивиденти по пътя, изучаването на Java и Android Studio изисква значителна инвестиция на време.

Така че няма да има толкова много обяснения какво означава кодът по -долу, нито трябва да се притеснявате много за това. Преподаването на Java е извън обхвата на тази статия. Какво ние ще го направя изследва колко близо е Java кодът към нещата, които вече сме изградили в App Inventor.

Започнете, като стартирате Android Studio и изберете Стартирайте нов проект за Android Studio вещ. Ще бъдете преведени през магьосник, който ще зададе няколко неща. Първият екран пита за име на вашето приложение, вашия домейн (това е важно, ако изпращате в магазина за приложения, но не, ако просто разработвате за себе си), и директория за проекта.

На следващия екран ще настроите версията на Android за насочване. Избирането на по -нова версия ще ви позволи да включите по -новите функции на платформата, но може да изключи някои потребители, чиито устройства не са актуални. Това е просто приложение, така че можем да се придържаме към Ice Cream Sandwich.

След това ще изберем по подразбиране Дейност за нашето приложение. Дейностите са основна концепция в разработката на Android, но за нашите цели можем да ги определим като екрани. Android Studio има номер, от който можете да избирате, но ние просто ще започнем с празен и ще го изградим сами. Екранът след това ви позволява да му дадете име.

След като стартира новият проект, отделете малко време, за да се запознаете с Android Studio.

  1. Горната лента с инструменти има бутони за голямо разнообразие от функции. Най -важното за нас е Бягай бутон, който ще изгради приложението и ще го стартира в емулатора. (Продължете и опитайте, ще се изгради добре.) Има и други като напр Запазване и намирам , но те работят чрез клавишните комбинации, с които всички сме свикнали (Ctrl+S и Ctrl+F, съответно).
  2. Лявата ръка Проект панел показва съдържанието на вашия проект. Можете да щракнете двукратно върху тях, за да ги отворите за редактиране.
  3. Централният регион е вашият редактор. В зависимост от това какво точно редактирате, това може да е текстово или графично, както ще видим след малко. Това може да показва и други прозорци, като например дясната област Свойства (отново, като App Inventor).
  4. Дясната и долната граница имат селекция от други инструменти, които ще се появят като прозорци, когато бъдат избрани. Има неща като терминал за изпълнение на програми от командния ред и контрол на версиите, но повечето от тях не са важни за проста програма.

Пренасяне на основния екран към Java

Ще започнем с възстановяването на скречпада в Java. Разглеждайки предишното ни приложение, можем да видим, че за първия екран се нуждаем от етикет и два бутона.

В миналото създаването на потребителски интерфейс на Android беше труден процес, включващ ръчно изработен XML. В днешно време го правите графично, точно както в App Inventor. Всяка от нашите дейности ще има файл с оформление (направен в XML) и файл с код (JAVA).

Кликнете върху раздела „main_activity.xml“ и ще видите екрана по-долу (много подобен на дизайнер). Можем да го използваме за плъзгане и пускане на нашите контроли: a TextView (като етикет) и две Бутони .

Нека свържем Изход бутон. Трябва да създадем Бутон в кода, както и графично, за разлика от App Inventor, който управлява тази счетоводна отчетност вместо нас.

Но като AI, Java API на Android използва концепцията за „onClickListner“. Той реагира, когато потребител натисне бутон, точно като нашия стар приятел, блокът „when Button1.click“. Ще използваме метода „finish ()“, така че когато потребителят кликне, приложението ще излезе (не забравяйте, опитайте това в емулатора, когато сте готови).

Добавяне на екрана на редактора

Сега, когато можем да затворим приложението, ще проследим отново стъпките си. Преди да свържем бутона „Редактиране“, нека направим редакторска дейност (екран). Щракнете с десния бутон в Проект панел и изберете Ново> Дейност> Празна дейност и го наречете „EditorActivity“, за да създадете новия екран.

След това създаваме оформлението на редактора с EditTextBox (къде ще отиде текстът) и Бутон. Регулирайте Имоти на всеки по ваш вкус.

Сега преминете към файла EditorActivity.java. Ще кодираме някои подобни функции на това, което направихме в App Inventor.

Човек ще създаде файла, за да съхранява нашия текст, ако той не съществува, или ще прочете съдържанието му, ако съществува. Няколко реда ще създадат EditTextBox и заредете нашия текст в него. И накрая, малко повече код ще създаде бутона и неговия onClickListener (който ще запише текста във файла, след което ще затвори Activity).

Сега, когато го стартираме в емулатора, ще видим следното:

  1. Преди стартирането няма папка в „/storage/emulated/0/Android/data/[your domain and project name]/files“, която е стандартната директория за специфични за приложението данни.
  2. При първото стартиране основният екран ще се появи според очакванията. Все още няма директория, както по -горе, нито нашия скречпад файл.
  3. При щракване върху редактиране бутон, директорията е създадена, както и файлът.
  4. При щракване Запазване , всеки въведен текст ще бъде записан във файла. Можете да потвърдите, като отворите файла в текстов редактор.
  5. При щракване редактиране отново ще видите предишното съдържание. Промяна и щракване Запазване ще го съхранява и щракване редактиране пак ще си го припомня. И така нататък.
  6. При щракване Изход , приложението ще завърши.

Подобряване на приложението: Изберете вашия файл за съхранение

Сега имаме работеща версия на нашия оригинален скречпад за App Inventor. Но го пренесохме на Java, за да го подобрим. Нека включим възможността за избор между множество файлове в тази стандартна директория. След като направим това, наистина ще направим това повече а бележник отколкото просто скречпад, така че ще създадем копие на текущия проект като използвате инструкциите тук .

Използвахме намерение за Android, за да извикаме нашата редакторска дейност от основната, но те също са удобен начин за извикване на други приложения. Като добавим няколко реда код, нашето намерение ще изпрати заявка за приложения за управление на файлове да отговоря. Това означава, че можем да премахнем голяма част от кода, проверяващ за създаване на файла, тъй като намерението ще ни позволи само да преглеждаме/избираме този, който действително съществува. В крайна сметка нашата редакторска дейност остава същата.

Получаването на нашето намерение да ни върне низ (текстов обект на Java), което можем да опаковаме в нашето намерение, беше предизвикателство. За щастие, когато става въпрос за програмиране, интернет е ваш приятел. А бързо търсене ни дава няколко опции, включително код, който можем да поставим в нашето приложение.

Код с любезното съдействие на StackOverflow

И с тази малка промяна и малко заимстван код, можем да използваме файлов браузър/приложение за мениджър на устройството, за да изберем файла за съхраняване на нашето съдържание. Сега, когато сме в „режим на подобрение“, е лесно да измислим още няколко полезни подобрения:

  • Ние можем избирам от съществуващите файлове, но за момента премахнахме нашето съоръжение в създавам тях. Ще се нуждаем от функция, за да може потребителят да предостави име на файл, след което да създаде и избере този файл.
  • Може да е полезно да накараме нашето приложение да отговори на заявки „Споделяне“, така че да можете да споделите URL от браузъра и да го добавите към един от вашите файлове с бележки.
  • Тук имаме работа с обикновен текст, но по -богатото съдържание с изображения и/или форматиране е доста стандартно в тези типове приложения.

С възможността да се включите в Java, възможностите са безкрайни!

Разпространение на вашето приложение

След като приложението ви е завършено, първият въпрос, който трябва да си зададете, е дали изобщо искате да го разпространявате! Може би сте създали нещо толкова лично и персонализирано, че изглежда не би било подходящо за никой друг. Но бих ви призовал да не мислите по този начин. Вероятно ще се изненадате колко е полезно за другите; ако не друго, това е поне учебен опит, показващ какво може да направи един нов кодер.

Но дори и да решите да запазите новото си творение за себе си, пак ще имате нужда от някои от стъпките по -долу, за да го инсталирате на вашето устройство. Така че нека научим как да опаковаме приложението си, за да го споделим във формата на изходния код, както и инсталиращ пакет.

Разпространение на изходния код

Независимо кой метод сте използвали до този момент, вие сте променяли кода на soure по пътя.

Докато App Inventor върши добра работа, скривайки действителния код зад кулисите, блоковете и джаджите на потребителския интерфейс, по които се движите, представляват код. И изходният код е напълно валиден начин за разпространение на софтуер, както общността с отворен код може да потвърди. Това също е чудесен начин да включите другите във вашето приложение, тъй като те могат да вземат това, което сте направили, и да надграждат върху него.

Ще получим изходния код от двете среди в структуриран формат. Тогава или някой (включително и ние) може лесно да го импортира обратно в същата програма и да започне бързо да работи.

Експортиране на източник от App Inventor

За да експортирате от App Inventor, е просто да отворите проекта си, след това от Проекти меню, изберете Експортирайте избрания проект (.aia) на моя компютър .

Това ще изтегли гореспоменатия .AIA файл (вероятно „Архив на App Inventor“). Но това всъщност е ZIP файл; опитайте да го отворите в любимия си архивен мениджър, за да проверите съдържанието му.

най -добрата безжична комбинация от мишка и клавиатура

Забележете, че съдържанието на appinventor/ai_ [вашият потребителски идентификатор]/[име на проект] папка са SCM и BKY файл. Това не е източникът на JAVA, който видяхме в Android Studio, така че няма да можете да ги отваряте в някоя стара среда за разработка и да ги компилирате. Вие (или някой друг) обаче можете да ги импортирате отново в App Inventor.

Архивиране на източник от Android Studio

Изтеглянето на вашия проект за Android Studio във формат на архив е толкова лесно, колкото компресирането на папката на проекта. След това го преместете на ново място и го отворете от обичайното Файл> Отваряне елемент в главното меню.

Android Studio ще прочете настройките на вашия проект ( workspace.xml ) и всичко трябва да бъде както преди.

Заслужава да се отбележи, че архивирането на цялата тази папка ще включват някои крафт, по -специално файловете от последната компилация на вашата програма.

Те ще бъдат изчистени и регенерирани по време на следващото изграждане, така че не са необходими, за да се запази целостта на вашия проект. Но те също не го нараняват и е по -лесно (особено за начинаещи разработчици) да не започнат да се занимават с това кои папки трябва да се появят и кои не. По -добре да вземете цялото нещо, отколкото да пропуснете нещо, от което се нуждаете по -късно.

Разпространение на пакети за Android

Ако искате да дадете копие от приложението си на някого, само за да го изпробвате, APK файлът е най -добрият ви залог. Стандартният формат на пакета за Android трябва да е познат на тези, които са излезли извън Play Store, за да получат софтуер.

Получаването им е също толкова лесно, колкото архивирането на източника в двете програми. След това можете да го публикувате на уебсайт (например F-Droid) или да го предадете на някои приятелски настроени хора, за да получат отзивите им. Това прави страхотен бета тест за приложения, които искате да продавате по -късно.

Изграждане на APK файл в App Inventor

Насочете се към Изграждане меню и изберете Приложение (запишете .apk на моя компютър) вещ. Приложението ще започне да се изгражда (доказано с лента за напредък) и след като приключи, ще получите диалогов прозорец, в който се записва APK файла. Сега можете да копирате и изпращате до насита.

За да инсталират приложението, потребителите ще трябва да разрешат инсталиране на софтуер на трети страни в настройките на устройството както е описано тук .

Изграждане на APK в Android Studio

Създаването на пакет за Android е също толкова лесно в Android Studio. Под Изграждане меню, изберете Изградете APK . След като изграждането завърши, съобщение за известие ще ви даде връзка към папката на вашия компютър, съдържаща приложението.

Google Play дистрибуция

Настройването като разработчик на Google е малко процес. Въпреки че по всякакъв начин трябва да го обмислите, след като имате опит под колана, това не е нещо, с което трябва да се справите веднага.

Първо, тя има такса за регистрация от $ 25. Той също така има редица технически подробности, които е малко трудно да се променят по -късно. Например, ще трябва да генерирате криптографски ключ, за да подпишете приложенията си, и ако някога го загубите, няма да можете да актуализирате приложението.

Но на високо ниво има три основни процеса, които трябва да направите, за да получите приложението си в Play Store:

  1. Регистрирайте се като разработчик: Можете да настроите потребителския си профил на програмист (въз основа на акаунт в Google) на тази страница . Съветникът ви води през доста лесен процес на регистрация, който включва гореспоменатата такса от $ 25.
  2. Подгответе приложението за магазина: Версиите на емулатора на приложението, което сте тествали, също са отстраняване на грешки версии. Това означава, че те имат много допълнителен код, свързан с отстраняване на неизправности и регистриране, който не е необходим и дори може да представлява проблем за поверителност. Преди да публикувате в магазина, ще трябва да създадете издание версия като следвате тези стъпки . Това включва подписване на приложението ви с крипто-ключа, който споменахме по-рано.
  3. Настройте вашата инфраструктура: Също така ще трябва да настроите страницата в магазина за приложението си. Google предоставя списък със съвети за създаване на списък, който ще ви осигури инсталирания (и продажби!). Вашата инфраструктура може също да включва сървъри, с които приложението ви ще се синхронизира.
  4. И накрая, ако искате да ви плащат, ще ви е необходим профил за плащане. Това е един от тези веднъж и готово подробности, така че се уверете, че знаете как всичко ще съвпадне, преди да продължите напред.

Резюме и извлечени поуки

Стигнахме до края на ръководството. Надяваме се, че това предизвика интереса ви към разработката на Android и ви даде известна мотивация да приемете идеята си и да я развиете. Но преди да наведете глава и да започнете да изграждате, нека да погледнем назад към някои от ключовите уроци, които научихме в горните раздели.

  • Разгледахме два пътя за да направите вашето приложение: конструктори с насочване и щракване и кодиране от нулата в Java. Първият има по -ниска крива на обучение и предлага справедлив (но все още ограничен) асортимент от функционалности. Вторият ви позволява да изградите почти всичко, за което се сетите и предлага предимства извън развитието на Android, но това отнема повече време за учене.
  • Въпреки че всеки има своите плюсове и минуси, можете да използвате и двата пътя! Средите с насочване и щракване предлагат бърз обрат за създаване на прототип на вашето приложение, докато вторият ви позволява да го изградите отново за дългосрочно подобрение.
  • Въпреки че е изкушаващо да започнете работа по самото приложение, ще се радвате много по -късно, ако отделите малко време проектирайте приложението си , включително скици на интерфейса и/или неофициална документация за неговите функции. Това също може да ви помогне да определите дали един или и двата метода по -горе са добри варианти.
  • Лесен начин да започнете да разработвате е да разположите елементи на потребителския интерфейс, след което да ги 'свържете' чрез програмиране на тяхната функционалност. Докато опитни разработчици могат да започнат да кодират „фонови“ компоненти, за начинаещите това помага да се визуализира всичко.
  • Когато се гмурнете в кода, не се страхувайте да търсите отговори в мрежата. Изпълнението на търсене в Google с няколко ключови думи и „пример за код“ в края ще ви даде добри резултати.
  • Докато строите, тествайте работата си малко по малко. В противен случай ще бъде много трудно да се определи кои действия от последните два часа са счупили приложението ви.

Имайки това предвид, влезте там и започнете да осъществявате мечтите си за разработка на приложения. И ако все пак решите да си изцапате ръцете, уведомете ни как става в коментарите (между другото, обичаме връзки към екранни снимки). Честита сграда!

Дял Дял Туит електронна поща Как да получите достъп до вграденото ниво на балон на Google в Android

Ако някога сте имали нужда да се уверите, че нещо е на ниво, сега можете да получите ниво на балончета на телефона си за секунди.

Прочетете Напред
Свързани теми
  • Android
  • Java
  • Програмиране
  • Разработка на приложения
  • Дълга форма
  • Ръководство за дълги форми
  • Android
За автора Арън Питърс(31 статии са публикувани)

Аарон е познат с технологиите като бизнес анализатор и ръководител на проекти в продължение на петнадесет години и е лоялен потребител на Ubuntu почти толкова дълго (от Breezy Badger). Интересите му включват отворен код, приложения за малък бизнес, интеграция на Linux и Android и работа с компютър в обикновен текстов режим.

Още от Арън Питърс

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и изключителни оферти!

Щракнете тук, за да се абонирате