реклама
Добре дошли в ръководството на MakeUseOf за създаване на собствено приложение за Android. В това ръководство ще разгледаме защо бихте искали да създадете свое собствено приложение за Android, някои опции за изграждането му и как да го направите достъпно за други.
Въведение в Android Development
Има два основни начина за разработване на приложение за Android. Първият е да го напишете от нулата, най-вероятно в Java. Но това, разбира се, вече ви предполага зная Java или имайте търпение да го научите И така, искате да разработите приложения за Android? Ето как да научитеСлед толкова години човек би си помислил, че мобилният пазар вече е наситен с всяко приложение, което може да се представи на човека - но това не е така. Има много ниши, които все още трябва да ... Прочетете още
преди да се потопите вътре. Но какво ще стане, ако сърбите, за да започнете веднага?Другата опция е един от създателите на приложения с точка и щракване на пазара. Много от тези целеви корпоративни потребители (и идват с ценови дялове на предприятието). Но MIT предлага своя „App Inventor“ - онлайн инструмент, който ви позволява да изграждате приложението си визуално. Можете да постигнете някои спретнати неща с App Inventor, което ще ви държи заети, докато не можете да ровите в Java и да получите достъп до всички мощни функции на Android платформата.
В секциите по-долу ще изградим прототипна версия на обикновено приложение за надраскване, което ще съхранява текста, който въвеждате в него. Първо ще направим това в App Inventor и ще визуализираме резултатите в Android емулатор. Тогава ще разширим това приложение с възможността да избираме измежду няколко файла, като го правим по-скоро „бележник“. За този тип подобрения ще трябва да се потопим в Java и Android Studio.
Готов? Нека да стигнем до него
Защо да разработвате за Android?
Има различни причини да искате да създадете собствено приложение за Android, включително:
- необходимост: В крайна сметка това е майката на изобретението. Може би след като потърсите в магазина на Play за мечтаното приложение, разберете, че това е нещо, което ще бъдете трябва да се изградиш 4 въпроса, които да си зададете, преди да се научите как да кодиратеИзучаването на език за програмиране е популярно. Но дали е за всеки? Преди да се ангажирате с него, задайте си следните въпроси и бъдете честни. Прочетете още защото никой друг все още не е имал.
- общност: Разработването на нещо полезно и предоставянето му безплатно (особено като отворен код) е отличен начин участва в общността на Android и / или FOSS Защо хората участват в проекти с отворен код?Развитието на отворен код е бъдещето на софтуера. Той е чудесен за потребителите, тъй като софтуерът с отворен код обикновено се предлага безплатно и често е по-безопасен за използване. Но какво принуждава разработчиците да предоставят код безплатно? Прочетете още . Без принос на отворен код няма да има Linux и без Linux нямаше да има Android Наистина ли отворен код на Android? И има ли дори значение?Тук проучваме дали Android наистина е отворен код. В крайна сметка, той е базиран на Linux! Прочетете още (или поне няма Android, както го познаваме). Затова помислете за връщане!
- Изучаване на: Има няколко по-добри начина за разбиране на платформата, отколкото да се развиват за нея. Може да е за училище или за ваше любопитство. И ей, ако успеете да направите няколко долара в крайна сметка, още по-добре.
- Осигуряването: От друга страна, може би ще продължите да правите пари от самото начало. Докато Android някога се смяташе за район с ниски наемни приходи от приложения, това бавно се върти. Business Insider отчетени през март че се очаква приходите от Android да изпреварят iOS за първи път през 2017 г.
- Добавката: Разработчиците често създават приложения като начин за популяризиране, достъп или допълване по друг начин на съществуващ продукт или услуга конзолни придружителни приложения Изтеглете повече от конзолата си с придружаващите мобилни приложенияИгралният контролер не е ужасно дистанционно, но и не е страхотен. Таблет или в някои случаи смартфон предоставя по-добър начин за достъп до функциите на конзолата. Прочетете още и Приложението на MakeUseOf.

Каквато и да е причината ви, разработката на приложения ще предизвика вашите дизайнерски, технически и логически умения. И резултатът от това упражнение (работещо и полезно приложение за Android) е страхотно постижение, което може да служи като портфолио.
Има много начини за създаване на приложението ви, включително различни набори от инструменти, програмни езици Най-добрите езици за разработка на мобилни приложения през 2016 г.Светът на разработката на мобилни приложения все още върви толкова силно, колкото винаги. Ако искате да започнете, не е късно! Ето езиците, на които трябва да помислите за изучаването. Прочетете още , и издаване на търговски обекти Google Play vs. Amazon Appstore: Кое е по-добро?Google Play Store не е единствената ви опция, когато става дума за изтегляне на приложения - трябва ли да опитате Amazon Appstore? Прочетете още . На високо ниво те се разделят на следните две категории.
Посочете и кликнете върху Приложения
Ако сте напълно начинаещ в развитието, има среди, които ви позволяват да изградите приложение за Android по същия начин, по който бихте създали Powerpoint презентация. Можете да изберете контроли като бутони или текстови полета, да ги пуснете на екран (както е показано на изображението по-долу) и да предоставите някои параметри за това как трябва да се държат. Всичко без да пишете никакъв код.

Този тип приложения имат предимството на плитка крива на обучение. Обикновено можете да скочите право и поне да започнете да поставяте екрана си. Освен това те отнемат много сложност от приложението, тъй като са създадени да обработват технически детайли (като типове обекти или обработка на грешки) зад кулисите. От друга страна, тази простота означава, че сте на милостта на създателя на инструмента по отношение на това, кои функции се поддържат. Освен това голяма част от тези инструменти са насочени към големи компании и могат да струват скъпо.
Изключение е уеб приложението на Inventor на MIT, което е функционално и безплатно. След като влезете с акаунт в Google, можете да щракнете върху приложение за няколко минути и да го прегледате или на телефона си или чрез Android емулатор.
Пишете от Scratch
Другият вариант е да напишете кандидатурата си от нулата. Това вероятно е различно от това, което си представяте - това е не като филмите го изобразяват Холивудски хакове: най-доброто и най-лошото хакерство във филмитеХоливуд и хакерството не се разбират. Въпреки че хакването в реалния живот е трудно, хакерството на филми често включва просто избиване по клавиатура, като пръстите ви излизат от стил. Прочетете още .
Тогава той въвежда код по един ред в изходните файлове компилирането им Как да компилирате собственото си Linux ядроСъставянето на вашето собствено Linux ядро е едно от онези страхотни, технически неща, нали? Вече разгледахме няколко причини, поради които може да искате да направите това - сега е моментът да опитате сами! Прочетете още в изпълним приложение. Въпреки че може да ви звучи скучно, в действителност много повече от времето ви за програмиране се прекарва дизайнили да мислите как трябва да работят нещата. Попитайте повечето разработчици и те ще кажат, че отделят само 10-15% от времето си за въвеждане на код. Така че ще прекарате по-голямата част от времето си, мечтаейки (продуктивно) за това, което трябва да прави приложението ви.

Можеш кодирайте приложенията за Android по няколко различни начина Най-добрите езици за разработка на мобилни приложения през 2016 г.Светът на разработката на мобилни приложения все още върви толкова силно, колкото винаги. Ако искате да започнете, не е късно! Ето езиците, на които трябва да помислите за изучаването. Прочетете още . „Стандартният“ начин е да пишете приложения на Java, последователно един от най-популярните езици в света, въпреки че Google добавя Kotlin като друга опция. За приложения с интензивна производителност, като например игри, имате възможност да пишете на „роден“ език като C ++. Тези приложения работят директно на хардуера на вашето Android устройство, за разлика от „обикновените“ приложения, базирани на Java, които се изпълняват на Dalvik Виртуална машина Какво представлява виртуалната машина на Java и как работи?Въпреки че не е строго необходимо да знаете, че работи, за да програмирате в Java, все пак е добре да знаете, защото това може да ви помогне да станете по-добър програмист. Прочетете още . И накрая, има начини за „опаковане“ на уеб приложенията (с помощта на инструментариуми като Xamarin или Microsoft на Microsoft) Native React на Facebook 7 най-добри безплатни уроци за обучение за реагиране и правене на уеб приложенияБезплатните курсове рядко са толкова изчерпателни и полезни - но ние открихме няколко курса React, които са отлични и ще ви накарат да започнете на десния крак. Прочетете още ) за разпространение като мобилни приложения, които изглеждат „местни“.
Докато интегрирани среди за разработка (IDE) Текстови редактори vs. IDE: кой е по-добър за програмисти?Изборът между усъвършенстван IDE и по-опростен текстов редактор може да бъде труден. Предлагаме ви известна информация, която да ви помогне да вземете това решение. Прочетете още справете се с някои от рутинните елементи на програмирането, разберете, че кривата на обучение за този метод е стръмна. Какъвто и език да изберете, ще трябва да се запознаете с неговите основи. Инвестирането на това време напред е недостатък на този метод, в смисъл, че няма да можете да влезете в развитието на приложението си веднага. Но това е предимство в дългосрочен план, тъй като уменията, които научите, могат да бъдат приложени на друго място. Научете Java И така, искате да разработите приложения за Android? Ето как да научитеСлед толкова години човек би си помислил, че мобилният пазар вече е наситен с всяко приложение, което може да се представи на човека - но това не е така. Има много ниши, които все още трябва да ... Прочетете още и можете да разработвате за настолни и сървърни приложения (включително уеб базирани) в допълнение към приложения за Android.
Коя опция е най-добра за вашия проект?
И така, кой авеню е „най-добрият?“ Това е твърде субективно, за да отговори на всички, но можем да го обобщим по следния начин. Ако сте любопитни, но просто „играете наоколо“, се придържайте към създателите на приложението „кликнете и щракнете“. Те ще ви помогнат да надраскате този творчески сърбеж, без да изисквате никаква „курсова работа“. Но ако идеята за тази курсова работа не ви плаши, помислете за по-дългия път и научаването на програмиране език. Инвестицията ще се изплати по много други начини надолу по линията.
Освен това помислете дали да използвате и двете! Строителите с точки и щракване са отличен начин за бързо съставяне на прототип или „доказателство за концепцията“. Използвайте ги за работа с някои от детайлите (като оформление и поток на екрана), каквито са много по-бързо да се разбърквате в среда, управлявана от мишка. След това ги приложите отново в Java, ако е необходимо, за да се възползвате от нейната гъвкавост.
Ще използваме точно този подход в това ръководство. Ние ще:
- прототип нашето приложение, „скречпад“, който ще съхранява някакъв текст във файл за вас, използвайки приложението на MIT App Inventor.
- Повторно изпълнение това в Java (с малко помощ от Android Studio IDE на Google Studio), след което преминете към разшири приложението, което ви позволява да избирате измежду няколко файла, което го прави по-скоро „бележник“.
Добре, достатъчно говорене. В следващия раздел ще се подготвим за кодиране.
Подготовка за създаване на приложението ви
Не се гмуркайте точно още - първо се нуждаете от известни знания и софтуер.
Знания, от които ще се нуждаете
Преди да започнем да инсталираме някакъв софтуер, трябва да имате някои знания, преди да започнете. На първо място е, "Какво трябва да прави?" Изчакването, докато имате ясна концепция за приложението си, преди да започнете разработването, може да изглежда като даденост - но ще се изненадате. Затова отделете малко време, за да разгледате тази концепция, дори да запишете някои бележки за поведението и скициране на някои екрани Какво представлява каркаса на уебсайта и как може да ви помогне да развиете своя уебсайт?На техническо ниво съвременният уебсайт не е само едно. Това е сложна супа от взаимодействащи технологии, като HTML (маркирането, което виждате на страницата), JavaScript (езикът, който работи във вашия браузър, ... Прочетете още . Първо имайте сравнително пълна картина на приложението си.
След това погледнете какво е възможно Например, представете си, че идеалната картина на приложението ви е нещо, което ви позволява да записвате видео в целия си живот за потомство. Вие мога създайте приложение, което ще заснеме видео. Вие не мога създайте такъв, който ще съхранява всеки момент от живота ви на вашето устройство (недостатъчно място за съхранение). Обаче ти мога опитайте да разтоварите част от това хранилище в облака, въпреки че ще отнеме време, за да се развие, и това идва със собствени ограничения (какво се случва, когато нямате достъп до мрежата?). Тук ще разгледате някои от техническите подробности и можете да информирате решения, като това дали ще кода от нулата или не.
И накрая, струва си да знаете какво има там вече. Ако просто искате да научите или да допринесете за общността, съществува ли съществуващ проект с отворен код като вашия? Бихте ли могли да отклоните този проект като отправна точка? Или още по-добре, да развиете своето подобрение и да го допринесете? Ако търсите да печелите пари, каква е вашата конкуренция? Ако напишете обикновено приложение за будилник и очаквате да спечелите милион долара от него, по-добре да внесете нещо специално на масата.
Както беше обсъдено, ние ще изградим обикновен скречпад, който събира и съхранява някои текст, който сте поставили в него. И по този начин ще нарушим правилата по-горе, тъй като там вече има много приложения за бележки на Android, и двете отворен 5 най-добри приложения с отворен код за бележки за AndroidОбичате софтуера с отворен код и искате да си правите бележки? Покриваме те. Прочетете още и затворен източник Какво е най-доброто безплатно приложение за бележки за Android?Искате да си правите бележки на телефона или таблета си с Android? Ето най-добрите безплатни приложения за записване на бележки за Android. Прочетете още . Но нека се преструваме, че това ще стане много по-сложно приложение по-късно. Трябва да започнете някъде.
Сега ще вземем част от софтуера, който ще ви трябва.
Подготовка за разработване с App Inventor
Не е необходимо да инсталирате нищо, за да използвате инструмента за инвентар на приложението. Това е уеб приложение и имате достъп до него изцяло чрез браузъра. Когато посетите сайта, в горния десен ъгъл ще видите бутон за Създавайте приложения! Ако в момента не сте влезли в акаунт в Google, щракването върху това ще ви насочи към страница за вход.

В противен случай трябва да отидете директно към приложението на изобретателя Моите проекти страница.

На този етап помислете къде искате да тествате приложението си. Ако сте приключенски, можете да го изпробвате на телефона или таблета си, като инсталирате приложението Companion от Play Store. Тогава вече сте готови - ще ви е необходим работещ проект, за да видите каквото и да е на устройството си, но ще се свържем по-късно.
Освен това можете да използвате емулатора, за да тествате приложението си на вашия компютър. Изтеглете и инсталирайте емулатора за вашата операционна система от тази страница. На изображението по-долу е показано приложението, което се инсталира на Linux, но съответната версия трябва да се инсталира без проблем и в Windows или Mac.

Можете да стартирате емулатора, като изпълните командата „aiStarter“. Това започва фонов процес Как да контролирате стартиращи услуги и демони на LinuxLinux работи с много приложения „на заден план“, за които може би дори не сте наясно. Ето как да поемете контрола над тях. Прочетете още който свързва вашия (локален) емулатор с (базиран на облак) App Inventor. Системите на Windows ще предоставят пряк път за него, докато той ще се стартира автоматично за потребители на Mac при влизане. Потребителите на Linux ще трябва да изпълняват следното в терминал:
/ usr / google / appinventor / command-for-appinventor / aiStarter &
След като се стартира, можете да тествате връзката, като кликнете върху Съперник елемент в Connect меню. Ако видите как емулаторът се върти (както е показано на изображението по-долу), добре е да продължите.

Инсталиране на Android Studio
Ако планирате да разработите някои прости програми, App Inventor може да бъде всичко, което някога ще ви трябва. Но след като си поиграете с него известно време, може да ударите стена или да знаете, че ще използвате някои функции, които App Inventor не поддържа (като фактуриране в приложението). За целта ще трябва да имате инсталирано Android Studio.
Сега официалната среда за разработка, одобрена от Google, Android Studio е версия на IntelliJ IDEA Java IDE от JetBrains. Можете да изтеглите копие за вашата операционна система от Страницата на Google за разработчици на Android тук. Потребителите на Windows и Mac могат да стартират инсталаторът използва EXE файл или DMG изображение Ето как работят софтуерните инсталатори за Windows, macOS и LinuxСъвременните операционни системи ви предоставят лесни методи за настройка на нови приложения. Но какво всъщност се случва, когато стартирате този инсталатор или издадете тази команда? Прочетете още съответно.
Потребителите на Linux могат да използват ZIP файла, да го разопаковате, където искате и да стартирате Android Studio от там (потребителите на Windows / Mac също могат да го направят). В противен случай можете да използвате Ubuntu Make да изтеглите и инсталирате пакета за вас. Ако използвате най-новата версия на LTS (16.04 от това писмо), ще трябва да добавите Ubuntu Направете PPA Какво е Ubuntu PPA и защо бих искал да използвам такъв? [Обяснена технология] Прочетете още до вашата система, за да получите достъп до Android Studio:
sudo add-apt-repository ppa: ubuntu-desktop / ubuntu-make
След това актуализирайте системата със следното.
актуална актуализация на судо
И накрая, инсталирайте Ubuntu Make с тази команда:
sudo apt инсталирате umake
След като инсталирате, можете да насочите Ubuntu Make да инсталира Android Studio за вас със следната команда:
umake android android-studio

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

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

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

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

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

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

Но сега сте попаднали на дизайнерския изглед на App Inventor и има какво да вземете. Нека отделим малко време за разглеждане на всеки раздел.

- Заглавната лента в горната част показва името на вашия проект (muoScratchpad); ви позволява да добавяте, премахвате и превключвате между екраните на приложението си (напр. Екран 1); и превключва между приложението Inventor дизайнер и блокове гледки вдясно вдясно.
- Най- палитра вляво съдържа всички контроли и джаджи, които ще използвате. Те са разделени на секции като Потребителски интерфейс и съхранение; ще използваме и двете в нашето приложение. Ще видим как палитра съдържа различни елементи в блокове видите.
- Най- Viewer Ви показва какво изграждате по WYSIWYG.
- елементи е списък на елементи, които са част от текущия екран. Когато добавите бутони, текстови полета и т.н., те ще се показват тук. Тук ще се показват и някои „скрити“ елементи, като препратки към файлове, въпреки че всъщност не са част от потребителския интерфейс.
- Най- средства раздел ви позволява да качвате активи, които ще използвате в проекта си, като изображения или звукови клипове. (Няма да ни е нужна тази.)
- Накрая Имоти панелът ви позволява да конфигурирате избраната в момента джаджа. Например, ако избирате джаджа за изображение, можете да промените височината и ширината му.
Поставяне на първия ви екран: „Основен екран“
Нека сложим подредбата за „главния“ екран заедно в Дизайнер, преди да продължим. Разглеждайки скицата, ще ни е необходим етикет за името на приложението, ред помощен текст, бутон за преминаване към екрана „редактиране“ и бутон за излизане. Можете да видите Потребителски интерфейс палитрата има всички елементи, от които се нуждаем: два Етикети, и две Бутони. Плъзнете ги във вертикална колона в горната част на екрана.

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

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

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

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

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

Палитрата отляво съдържа категории като контрол, Текст, и Променливи в категорията „Вградени”. Блоковете в тази категория представляват функции, които ще се случват до голяма степен зад кулисите, като например Math елементи, които могат да извършват изчисления. По-долу е списък на елементите във вашия екран (и) и блоковете, достъпни тук, ще засегнат тези елементи. Например, щракването върху един от нашите етикети показва блокове, които могат да променят текста на този етикет, докато бутоните имат блокове, за да определят какво се случва, когато щракнете върху тях.
В допълнение към категорията си (представена с цвят), всеки блок има и форма, която представя неговото предназначение. Те могат да бъдат грубо разделени, както следва:
- Можете да мислите за елементи с голяма празнина в средата, като например блока „ако-след“, показан по-горе, като такива, които обработват събития. Когато нещо се случи в приложението, другите неща в тази празнина ще стартират.
- Плоските блокове с конектори са едно от двете неща. Първите са изявления, които са еквивалент на команди, елементите, които ще се поберат в потоците по-горе. В горния пример направи списък блок е изявление, както е затворено приложение.
- Другият вариант е изражения, които се различават само леко от изявленията. Където в едно изявление може да се каже „задайте това на 42“, изразът ще бъде нещо като „добавете 22 до 20 и ми върнете резултата“. В горното, е в списъка е израз, който ще прецени или вярно или невярно. Израженията също са плоски блокове, но те вероятно имат раздела от лявата страна и отвор вдясно.
- На последно място, стойности включват числа („17“ и „42“ по-горе), текстови низове („Неща 1“ и „Неща 2“) или истински / неверни. Обикновено имат раздел само отляво, тъй като те са нещо, което предоставяте на изявление или израз.
Със сигурност можете да преминете през всички ръководства и ръководства в App Inventor. Въпреки това, той е създаден за вас просто да започнете да щраквате и (буквално) да видите какво отговаря. На първоначалната ни страница имаме два елемента, които се нуждаят от внимание (Бутоните), така че нека да видим какво можем да измислим. Едно от тях (Button2) ще затвори приложението при щракване. Тъй като това е взаимодействие с бутона. Можем да проверим за Button Blocks и да открием там, който започва с когато Button2.click (или когато се натисне Бутон 1). Това е точно това, което искаме, така че ще го плъзнем върху Viewer.

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

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

Изграждане на втория екран: Екран на редактора
Сега нека обърнем вниманието си на Button1.
Това трябва да отвори нашия редактор, така че е по-добре да се уверим, че съществува редактор! Да се върнем обратно към Дизайнера и да създадем нов екран със същия етикет като първия екран, a Текстово поле (зададено на „родител за попълване“ за Ширина, 50% за височина, и със Многолинейно активирано) за съхраняване на съдържанието ни и още един бутон (с надпис „<< Запазване“). Сега проверете това оформление в емулатора!

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

Преминете към изгледа Блокове сега - време е да програмирате. Единственото поведение, от което се нуждаем, е, когато се натисне бутона „Запазване“, така че ще вземем своето когато Button1.click Блок. Ето къде приложението Inventor наистина започва да свети.
Първо, ще запишем съдържанието на TextBox, като вземем обадете се на File1.saveFile блок и му предоставяме текста, който искаме (използвайки TextBox1 TextBox1.text, който извлича съдържанието му) и файл, който да го съхранява (просто предоставете път и име на файла с текстов блок - приложението ще създаде файла за вас, ако не съществува).
Нека също така да настроим екрана да зарежда съдържанието на този файл, когато се отвори (Редактор> когато Editor.initialize Блок). Би трябвало обадете се на File1.ReadFrom което сочи нашето име на файл. Можем да уловим резултата от четене на текстовия файл, използвайки Файл> когато File1.GotText, присвойте това съдържание на TextBox с помощта на TextBox> задайте TextBox. Текст до блок и го предайте получете текст стойност. И накрая, след запазването, искаме едно щракване на Button1, за да ни изпрати обратно на главния екран (a затворен екран Блок).

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

Какво следва?
Сега, когато имате нещо, което работи, какво следва? За да го подобрим, разбира се! App Inventor ви дава достъп до широк спектър от функционалности за Android. Отвъд опростените екрани, които току-що създадохме, можете да добавите възможности, включително възпроизвеждане на медии, изпращане на текстове или дори изглед на живо в мрежата към приложението си.
Едно от първите подобрения, които ни хрумват, е възможността да избирате измежду множество файлове. Но бързо търсене в интернет разкрива, че това изисква някои върховни хакерства в App Inventor. Ако искаме тази функция, ще трябва да се ровим в Java и средата на Android Studio.
Разработка в Java с Android Studio
По-долу секциите ще опишат - на много високо ниво - развитието на нашето приложение за надраскване в Java. Струва си да се повтори отново: макар да може да изплати големи дивиденти по пътя, обучението на Java и Android Studio изисква значителна инвестиция на време.
Така че няма да има толкова много обяснения какво означава кодът по-долу, нито трябва да се притеснявате много за това. Преподаването на Java е извън обхвата на тази статия. Какво ние ще го направя е да разгледаме колко близо е Java кодът с нещата, които вече сме изградили в App Inventor.
Започнете с пускане на Android Studio и изберете Стартирайте нов Android Studio Project вещ. Ще ви преведе през съветник, който пита няколко неща. Първият екран изисква име за приложението ви, домейна ви (това е важно, ако подадете в магазина за приложения, но не и ако просто разработвате за себе си) и директория за проекта.

На следващия екран ще настроите версията на Android Бързо ръководство за версиите и актуализациите на Android [Android]Ако някой ви каже, че работи с Android, той не казва толкова, колкото бихте си помислили. За разлика от основните компютърни операционни системи, Android е широка ОС, която обхваща множество версии и платформи. Ако искате ... Прочетете още да се насочите. Изборът на по-нова версия ще ви позволи да включите по-новите функции на платформата, но може да изключи някои потребители, чиито устройства не са актуални. Това е просто приложение, така че можем да се придържаме към сандвич със сладолед.

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


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

- В горната лента с инструменти има бутони за голямо разнообразие от функции. Най-важният за нас е този тичам бутон, който ще изгради приложението и ще го стартира в емулатора. (Напред и опитайте, ще се получи добре.) Има и други като Запази и намирам, но те работят чрез клавишните комбинации, за които всички сме свикнали (Ctrl + S и Ctrl + F, съответно).
- Лявата ръка проект панелът показва съдържанието на вашия проект. Можете да щракнете двукратно върху тях, за да ги отворите за редактиране.
- Централният регион е вашият редактор. В зависимост от това какво точно редактирате, това може да е текстово или графично, както ще видим след малко. Това може да показва и други стъкла, като например десния прозорец за свойства (отново като приложението Inventor).
- Дясната и долната граница имат подбор от други инструменти, които ще се появят като панели, когато са избрани. Има неща като терминал за изпълнение на програми за команден ред и контрол на версиите, но повечето от тях не са важни за обикновена програма.
Пренасяне на основния екран на Java
Ще започнем с повторното изграждане на драскотина в Java. Разглеждайки предишното ни приложение, можем да видим, че за първия екран се нуждаем от етикет и два бутона.
В миналото години създаването на потребителски интерфейс на Android беше старателен процес, включващ ръчно изработен XML. В днешно време го правите графично, точно както в App Inventor. Всяка наша дейност ще има оформление файл (направено в XML) и кодов файл (JAVA).
Кликнете върху раздела „main_activity.xml“ и ще видите по-долу (много дизайнерски) екран. Можем да го използваме за плъзгане и пускане на нашите контроли: a TextView (като етикет) и две Бутони.

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

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

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

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


Сега, когато го стартираме в емулатора, ще видим следното:
- Преди да стартирате, няма папка на „/ storage / emulated / 0 / Android / data / [името на вашия домейн и проект] / файлове“, която е стандартната директория за специфични за приложението данни.
- При първото изпълнение главният екран ще се появи според очакванията. Все още няма директория както по-горе, нито файлът ни със скриптове.
- При щракване върху редактиране бутон, директорията е създадена, както и файлът.
- При щракване Запази, всеки въведен текст ще бъде записан във файла. Можете да потвърдите, като отворите файла в текстов редактор.
- При щракване редактиране отново ще видите предишното съдържание. Промяна и щракване Запази ще го съхранява и щракване редактиране отново ще го припомня. И т.н.
- При щракване изход, приложението ще завърши.
Подобряване на приложението: Изберете вашия файл за съхранение
Сега имаме работеща версия на оригиналната ни грешка за приложение Inventor. Но ние го пренесохме в Java, за да го подобрим. Нека включим възможността да избирате измежду множество файлове в тази стандартна директория. След като направим това, ние наистина ще направим това повече от a бележник отколкото просто надраскване, така че ще създадем копие на текущия проект използвайки инструкциите тук.
Използвахме намерение за Android, за да извикаме нашата активност на редактора от основната, но те също са удобен начин за повикване на други приложения. Като добавим няколко реда код, нашият Намерение ще изпрати заявка за приложения за файлов мениджър 7-те най-добри безплатни файлове за търсене на AndroidИма куп програми за управление на файлове и приложения за проучване на файлове там за Android, но те са най-добрите. Прочетете още да отговоря. Това означава, че можем да премахнем добра част от проверката на кода за създаване на файла, тъй като Намерението ще ни позволи да разглеждаме / избираме един, който действително съществува. В крайна сметка нашата Редакторска дейност остава абсолютно същата.

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


И с тази малка промяна и малко назаем код, можем да използваме приложение за файлов браузър / мениджър на устройството, за да изберем файла за съхранение на съдържанието ни. Сега, когато сме в режим на подобрение, лесно е да измислим още няколко полезни подобрения:
- Ние можем избирам от съществуващите файлове, но за момента премахнахме съоръжението до създавам тях. Ще се нуждаем от функция за потребителя да предостави име на файл, след което да създаде и изберете този файл.
- Може да е полезно нашето приложение да отговаря на заявки за „Споделяне“, така че можете да споделите URL от браузъра и да го добавите към един от вашите бележки.
- Тук имаме работа с обикновен текст, но по-богатото съдържание с изображения и / или форматиране е доста стандартно при този тип приложения.
С възможността да се докоснете до Java, възможностите са безкрайни!
Разпространение на приложението ви
След като приложението ви е завършено, първият въпрос, който ще трябва да си зададете, е дали изобщо искате да го разпространите! Може би сте създали нещо толкова лично и персонализирано, сякаш не би било подходящо за никой друг. Но бих ви призовал да не мислите по този начин. Вероятно ще се изненадате колко е полезно за другите; ако не друго, това е поне опит за обучение, показващ какво може да направи нов кодер.
Но дори и да решите да запазите новото си творение за себе си, все пак ще ви трябват някои от стъпките по-долу, за да го инсталирате в действителност на устройството си. Затова нека научим как да пакетирате приложението си, за да го споделяте във формата на изходния код, както и инсталируем пакет.
Разпределение на изходния код
Независимо кой метод сте използвали до този момент, вие сте променяли Soure код по пътя.
Докато App Inventor върши добра работа по скриването на действителния код зад кулисите, блоковете и потребителските интерфейси, по които се движите, представляват код. И изходният код е напълно валиден начин за разпространение на софтуер, тъй като общността с отворен код може да свидетелства. Това също е чудесен начин да включите и другите във вашето приложение, тъй като те могат да вземат това, което сте направили и да надградите върху него.
Ще получим изходния код от двете среди в структуриран формат. Тогава или някой (включени и ние) може лесно да го импортира обратно в същата програма и да стартира и да работи бързо.
Експортиране на източник от приложението Inventor
За да експортирате от App Inventor, е просто да отворите проекта си, а след това от Проекти менюто, изберете Експорт на избрания проект (.aia) на моя компютър.

Това ще изтегли гореспоменатия .AIA файл (вероятно „Архив на инвентор на приложения“). Но това всъщност е 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 в Inventor App
Насочете се към Изграждане менюто и изберете Приложение (запишете .apk на моя компютър) вещ. Приложението ще започне да се изгражда (доказва се с лента за напредък) и след като завърши, ще получите диалогов прозорец, запишете APK файла. Сега можете да го копирате и изпратите до съдържанието на сърцето си.

За да инсталират приложението, потребителите ще трябва да разрешат софтуерни инсталации на трети страни в настройките на устройството както е описано тук Безопасно ли е да инсталирате приложения за Android от неизвестни източници?Google Play Store не е единственият ви източник на приложения, но безопасно ли е да търсите другаде? Прочетете още .
Изграждане на APK в Android Studio
Изграждането на Android пакет е също толкова лесно в Android Studio. Под Изграждане меню, изберете Създайте APK. След като изграждането завърши, известие съобщение ще ви даде връзка към папката на вашия компютър, съдържаща приложението.

Разпространение в Google Play
Настройването като програмист на Google е малко процес. Макар че по всякакъв начин трябва да го обмислите, след като имате известен опит под колана, това не е нещо, с което трябва да се справите веднага.
Първо, тя има 25 такса регистрация. Той също така има редица технически подробности, които са малко трудни за промяна в по-късен момент. Например, ще трябва да генерирате криптографски ключ, за да подпишете приложенията си и ако някога го загубите, няма да можете да актуализирате приложението.
Но на високо ниво трябва да направите три основни процеса, за да вкарате приложението си в Play Store:
- Регистрирайте се като разработчик: Можете да настроите профила си на програмист (въз основа на акаунт в Google) на тази страница. Съветникът ще ви преведе през доста лесен процес на регистрация, който включва гореспоменатата такса от 25 долара.
- Подгответе приложението за магазина: Версиите на емулатори на приложението, което сте тествали също са отстраняване на грешки версии. Това означава, че имат много допълнителен код, свързан с отстраняване на проблеми и регистриране, които не са необходими и дори могат да представляват проблем с поверителността. Преди да публикувате в магазина, ще трябва да представите издание версия като следвате тези стъпки. Това включва подписване на приложението ви с криптовалута, за който споменахме по-рано.
- Настройте вашата инфраструктура: Също така ще трябва да настроите страницата на магазина за приложението си. Google предоставя списък със съвети за настройка на списък, който ще ви накара да инсталирате (и продажбите!). Вашата инфраструктура може също да включва сървъри, с които вашето приложение ще се синхронизира.
- На последно място, ако искате да получите плащане, ще ви трябва профил за плащане. Това е едно от тези веднъж завинаги направено подробности, така че се уверете, че знаете как всичко ще се побере заедно, преди да продължите напред.
Обобщение и извлечени уроци
Стигнахме до края на ръководството. Надяваме се, че това е предизвикало интереса ви към развитието на Android и ви даде някаква мотивация да вземете идеята си и всъщност да я развиете. Но преди да поставите главата си и да започнете да изграждате, нека да разгледаме някои от основните уроци, които научихме в горните раздели.
- Разгледахме две пътеки за да направите приложението си: създатели на точки и щракване и кодиране от нулата в Java. Първият има по-ниска крива на обучение и предлага справедлив (все още ограничен) асортимент от функционалност. Втората ви позволява да изграждате почти всичко, за което се сещате, и предлага предимства извън разработката на Android, но се изисква повече време.
- Докато всеки от тях има своите плюсове и минуси, можете да използвате и двата пътя! Средата „точка и щракване“ предлага бърз обрат за прототипиране на приложението ви, докато вторият ви позволява да го изградите отново за дългосрочно подобрение.
- Въпреки че е изкушаващо да скочите веднага в работата върху самото приложение, ще се радвате по-късно, ако отделите време за проектирайте приложението си, включително скици на интерфейса и / или неофициална документация за неговите функции. Това също може да ви помогне да определите дали един или и двата метода по-горе са добри опции.
- Лесен начин да започнете да разработвате е да изложите елементи на потребителския интерфейс, след което да ги „свържете“ чрез програмиране на тяхната функционалност. Докато опитни разработчици могат да започнат да кодират „фонови“ компоненти, за начинаещи, това помага да могат да визуализират всичко.
- Когато се гмуркате в код, не се страхувайте да търсите отговори в мрежата. Ако стартирате търсене в Google с няколко ключови думи и „пример на код“ в края, ще получите добри резултати.
- Докато изграждате, тествайте работата си по малко. В противен случай ще бъде много трудно да определите кои от действията през последните два часа са нарушили приложението ви.
Имайки това предвид, влезте там и започнете да сбъдвате мечтите си за развитие на приложения. И ако все пак решите да си изцапате ръцете, уведомете ни как става в коментарите (между другото обичаме връзки към екранни снимки). Щастлива сграда!
Aaron е дълбоко в технологиите като бизнес анализатор и мениджър на проекти, за да продължи вече петнадесет години, и е лоялен потребител на Ubuntu от почти толкова дълго време (от Breezy Badger). Интересите му включват отворен код, приложения за малък бизнес, интеграция на Linux и Android и компютри в обикновен текстов режим.