როგორ გავაკეთოთ აპლიკაციები. როგორ შექმნათ პროგრამა ანდროიდზე საკუთარ თავს

13.02.2024

მოგესალმებით, Android ოპერაციული სისტემის ძვირფასო გულშემატკივრებო. დღევანდელ სტატიაში შევეცდები მაქსიმალურად სრულად გავაშუქო ძალიან საინტერესო თემა - ინსტრუმენტების შერჩევა თქვენი საკუთარი აპლიკაციის შესაქმნელად (ონლაინ) პოპულარული Android ოპერაციული სისტემის საფუძველზე გაჯეტებისთვის.

მობილური ტექნოლოგიების განვითარებით, ასევე ვითარდება მობილური აპლიკაციების ბაზარი, მათ შორის Android OS-ისთვის მობილური აპლიკაციების ბაზარი. თუ ადრე მხოლოდ სქელი სათვალეებით მოწინავე პროგრამისტს შეეძლო, რომელმაც დაასრულა უნივერსიტეტის 5-წლიანი სწავლა, ახლა ეს შესაძლებლობა ხელმისაწვდომია ყველასთვის, ვინც სრულიად არ იცნობს პროგრამირების ენებს და ასევე ინტერნეტიდან გათიშვის გარეშე, ე.ი. ონლაინ.

კოლექციაში ნახავთ ოთხ ინსტრუმენტს, რომელიც საშუალებას მოგცემთ შექმნათ აპლიკაცია - სწრაფად და მარტივად. ყველა შემოთავაზებული ინსტრუმენტი მსგავსია კონსტრუქციული ნაკრების, თქვენ უნდა ააწყოთ თქვენი პირველი აპლიკაცია სხვადასხვა მზა კომპონენტისგან, შეგიძლიათ შექმნათ აპლიკაცია ისევე, როგორც აწყობთ Lego-ს კონსტრუქტორს.

ყველა ინსტრუმენტი შეირჩა შემდეგი კრიტერიუმების მიხედვით:

  • გამოყენების სიმარტივე. ვინაიდან ასეთ ინსტრუმენტს გამოიყენებენ ძირითადად პროგრამირებისა და რთული ელემენტების არმცოდნე ადამიანები, ამ მცირე არჩევანში მთავარი აქცენტი გაკეთდა შემოთავაზებული ხელსაწყოების მოხერხებულობასა და მარტივად გამოყენებაზე;
  • ინტუიციური ინტერფეისი. ეს პუნქტი და პირობა ლოგიკურად გამომდინარეობს წინადან. გარდა იმისა, რომ Android OS (Android) აპლიკაციების შექმნის ხელსაწყოს ინტერფეისი უნდა იყოს მარტივი, ის ასევე უნდა იყოს ინტუიციური;
  • შესაძლებლობები. რაც უფრო მეტი განსხვავებული რამის გაკეთება შეუძლია ხელსაწყოს, მით უკეთესი. არსებითად, ყველა წარმოდგენილ აპლიკაციას აქვს ინსტრუმენტების იგივე ნაკრები, მცირე განსხვავებებითა და ცვლილებებით.

მოდით დავწეროთ, დავიწყოთ განაცხადის დამზადება (მთელი აპლიკაციის შექმნა შესაძლებელია ონლაინ), ქვემოთ შეგიძლიათ გაეცნოთ პროგრამული პროდუქტების შერჩევას და აირჩიოთ თქვენთვის ყველაზე მოსახერხებელი და ფუნქციონალური ინსტრუმენტი.

TheAppBuilder

კარგი ინსტრუმენტი აპლიკაციების შესაქმნელად. უდავოდ, კარგი ამბავი ის არის, რომ თქვენ შეგიძლიათ გამოიყენოთ ეს ინსტრუმენტი სრულიად უფასოდ. მინუსი ის არის, რომ ამ პროგრამულ პროდუქტს არ აქვს რუსული ენის მხარდაჭერა, მაგრამ თუ სკოლაში ინგლისურს სწავლობდით, ცოტათი მაინც, მაშინ პრობლემა არ უნდა შეგექმნათ TheAppBuilder-ის გამოყენებით. ამ პროგრამული პროდუქტის ყველა მახასიათებლიდან მინდა აღვნიშნო შემდეგი::

  • შაბლონების დიდი არჩევანი თქვენი Android აპლიკაციების შესაქმნელად. თუ გსურთ მარტივი პროგრამის შექმნა, მაშინ შემოთავაზებული შაბლონის ვარიანტებიდან შეგიძლიათ მარტივად აირჩიოთ ის, რაც გჭირდებათ;
  • თქვენ მიერ შექმნილ აპლიკაციაზე დეტალური სტატისტიკის ნახვის შესაძლებლობა;
  • Google Play-ზე თქვენ მიერ შექმნილი აპლიკაციის მარტივი და მკაფიო გამოქვეყნება.

AppsGeyser


კიდევ ერთი კარგი, მაღალი ხარისხის ინსტრუმენტი, რომელიც იმსახურებს დიდ ყურადღებას. როგორც ზემოთ ვთქვი, რომ შექმნათ )) არ არის საჭირო ანდროიდისთვის დაპროგრამება, ყველაფერი იმდენად მარტივია, რომ რამდენიმე წუთში შეგიძლიათ შექმნათ აპლიკაცია თქვენი პროექტისთვის, უბრალოდ ნაწილებიდან აწყობით; "კონსტრუქტორის". ქვემოთ შეგიძლიათ გაეცნოთ შემოთავაზებული ხელსაწყოს შესაძლებლობებს.:

  • შაბლონების დიდი არქივი სხვადასხვა თემებზე: რესტორნები, პიცერიები, ფოტო სტუდიები, არდადეგები, სპორტი, რადიო, ტვირთის გადაზიდვა და მრავალი, მრავალი სხვა შაბლონი. თქვენ უბრალოდ უნდა აირჩიოთ შესაბამისი და დაიწყოთ მისი რედაქტირება თქვენს საჭიროებებზე;
  • ჩაშენებული ინსტრუმენტები თქვენი ახალი აპლიკაციის პოპულარიზაციისთვის. ზოგჯერ, თქვენი ახალი აპლიკაციის პოპულარიზაციისა და პოპულარიზაციისთვის საჭიროა დიდი ძალისხმევა და დრო დახარჯოთ, მშენებელში ჩაშენებული სარეკლამო ინსტრუმენტები გაგიადვილებთ ამოცანას;
  • თქვენი პროგრამის სარეკლამო ქსელთან დაკავშირების შესაძლებლობა, ასე რომ თქვენ შეგიძლიათ ფულის გამომუშავება თქვენს მიერ შექმნილი აპლიკაციებიდან.

ახალი ენისა და განვითარების გარემოს სწავლა არის მინიმალური, რაც თქვენგან გჭირდებათ, თუ გსურთ დაწეროთ თქვენი პირველი მობილური აპლიკაცია. მინიმუმ ორი კვირა დასჭირდება Android-ის ან iOS-ის ძირითადი სამუშაოების სიის ჩამოყალიბებას, წიგნიდან მაგალითის კოპირების გარეშე. მაგრამ თქვენ ვერ დაეუფლებით Objective-C-ს ან Java-ს და მაინც სწრაფად განავითარებთ აპლიკაციებს სმარტფონებისთვის, თუ იყენებთ ტექნოლოგიებს, როგორიცაა PhoneGap.

თუ თქვენ ყურადღებით შეისწავლეთ ინოვაციები, რომლებიც გველოდება Windows 8-ში, შესაძლოა შეამჩნიეთ, რომ მის ქვეშ HTML5-ში აპლიკაციების შემუშავება იქნება შესაძლებელი. იდეა, ფაქტობრივად, ახალი არ არის - ტექნოლოგიები, რომლებიც ახორციელებენ იგივე მიდგომას მობილური პლატფორმებისთვის, ნახტომებით ვითარდება. ერთ-ერთი ასეთი ჩარჩო, რომელიც საშუალებას გაძლევთ განავითაროთ აპლიკაციები სმარტფონებისთვის ნაცნობი HTML, JavaScript და CSS!-ის გამოყენებით, არის PhoneGap. მისი დახმარებით დაწერილი აპლიკაცია შესაფერისია ყველა პოპულარული პლატფორმისთვის: iOS, Android, Windows Phone, Blackberry, WebOS, Symbian და Bada. თქვენ არ დაგჭირდებათ თითოეული პლატფორმისთვის პროგრამირების სპეციფიკის სწავლა (მაგალითად, Objective-C iOS-ის შემთხვევაში), ან სხვადასხვა API-ებთან და განვითარების გარემოსთან ურთიერთობა. ყველაფერი რაც თქვენ გჭირდებათ კროს-პლატფორმული მობილური აპლიკაციის შესაქმნელად არის HTML5-ის ცოდნა და სპეციალური PhoneGap API. ამ შემთხვევაში, გამომავალი არ იქნება სულელური HTML გვერდი „ჩარჩოებული“ აპლიკაციის ინტერფეისში, არა! ჩარჩოს API საშუალებას გაძლევთ გამოიყენოთ ტელეფონის თითქმის ყველა შესაძლებლობა, რომელიც გამოიყენება მშობლიური ხელსაწყოების გამოყენებით შემუშავებისას: წვდომა აქსელერომეტრზე, კომპასზე, კამერაზე (ვიდეო ჩაწერა და ფოტოგრაფია), კონტაქტების სია, ფაილური სისტემა, შეტყობინებების სისტემა (სტანდარტული შეტყობინებები ტელეფონზე) , საცავი და ა.შ. და ბოლოს, ასეთ აპლიკაციას შეუძლია შეუფერხებლად წვდომა ნებისმიერ დომენურ მისამართზე. თქვენ შეგიძლიათ ხელახლა შექმნათ მშობლიური კონტროლები ისეთი ფრეიმორების გამოყენებით, როგორიცაა jQuery Mobile ან Sencha, და საბოლოო პროგრამა გამოიყურება ისე, როგორც ის დაიწერა მშობლიურ ენაზე (ან თითქმის ასე) მობილურ ტელეფონზე. უმჯობესია ზემოთ მოყვანილი პრაქტიკაში ილუსტრირება, ანუ განაცხადის დაწერა, ამიტომ გირჩევთ დაუყოვნებლივ დაიწყოთ ვარჯიში. თვალყური ადევნეთ დროს - ყველაფრის გაკეთებას ნახევარ საათზე მეტი დასჭირდება.

რას შევქმნით

მოდით ავიღოთ iOS, როგორც სამიზნე პლატფორმა - დიახ, დიახ, ფული არის AppStore-ში და ამ დროისთვის უმჯობესია იქ თქვენი მოვლენების მონეტიზაცია :). მაგრამ ნება მომეცით დაუყოვნებლივ განვმარტო: იგივე, ცვლილებების გარეშე, შეიძლება გაკეთდეს, ვთქვათ, Android-ისთვის. დიდხანს ვფიქრობდი, რომელი მაგალითი გამეკეთებინა, რადგან არ მინდოდა დამეწერა სხვა ხელსაწყო, რათა თვალყური ადევნო დავალებების სიას. ამიტომ გადავწყვიტე შემექმნა აპლიკაცია სახელწოდებით „გეოგრაფიული შეხსენება“, სანავიგაციო პროგრამა, რომლის დანიშნულება შეიძლება აღწერილი იყოს ერთი ფრაზით: „მაცადე, როცა ისევ აქ ვიქნები“. AppStore-ს აქვს მრავალი კომუნალური პროგრამა, რომელიც საშუალებას გაძლევთ „დაიმახსოვროთ“ ადგილი, სადაც მომხმარებელმა გააჩერა მანქანა. ეს თითქმის იგივეა, ცოტა უფრო მარტივი. შეგიძლიათ მიუთითოთ წერტილი ქალაქის რუკაზე, დააყენოთ მისთვის გარკვეული რადიუსი და დაპროგრამოთ შეტყობინება. შემდეგ ჯერზე, როცა წრეში მოხვდებით მითითებული რადიუსით, აპლიკაცია შეგატყობინებთ და წერტილი წაიშლება. ჩვენ ვიმოქმედებთ ამ გეგმის მიხედვით: ჯერ შევქმნით მარტივ ვებ აპლიკაციას, შევამოწმებთ ბრაუზერში და შემდეგ გადავიტანთ iOS პლატფორმაზე PhoneGap-ის გამოყენებით. ძალიან მნიშვნელოვანია კომპიუტერზე ბრაუზერში კოდის ძირითადი პროტოტიპირება და ტესტირება, რადგან ტელეფონზე აპლიკაციის გამართვა ბევრად უფრო რთულია. ჩვენ გამოვიყენებთ jQuery JS Framework-ს jQuery Mobile (jquerymobile.com)-თან ერთად, როგორც ფრეიმვორს და Google Maps v3-ს, როგორც რუქის ძრავას. აპლიკაცია შედგება ორი გვერდისგან: რუკა და პუნქტების სია.

  • თქვენი ამჟამინდელი პოზიციის მარკერი განთავსებულია რუკაზე. რუკაზე დაწკაპუნებით იქმნება წერტილი, რომელზეც მიმაგრებულია შეტყობინება (როგორიცაა „მანქანა ახლოს“). წერტილი შეიძლება წაიშალოს მასზე დაწკაპუნებით. რუკაზე ადამიანის მარკერის გადასატანად გამოიყენება გეონავიგაციის API.
  • ქულების სიის გვერდზე უნდა იყოს დამატებითი ღილაკი „წაშლა ყველა პუნქტი“, ხოლო ყოველი წერტილის გვერდით უნდა იყოს ღილაკი „წაშალე ეს წერტილი“. თუ დააწკაპუნებთ სიაში არსებულ ელემენტზე, რუკაზე გამოჩნდება შესაბამისი წერტილი. ჩვენ შევინახავთ მომხმარებლის პარამეტრებს და ქულების ჩამონათვალს localStorage-ში.

UI ჩარჩოები

jQuery Mobile, რა თქმა უნდა, არ არის ერთადერთი ჩარჩო მობილური ინტერფეისის შესაქმნელად. PhoneGap ვებსაიტს აქვს ბიბლიოთეკებისა და ჩარჩოების უზარმაზარი სია, რომლებიც შეგიძლიათ გამოიყენოთ (phonegap.com/tools): Sencha Touch, Impact, Dojo Mobile, Zepto.js და ა.შ.

განაცხადის ჩარჩო

დაუყოვნებლივ აგიხსნით, რატომ გამოვიყენებთ jQuery Mobile-ს. ეს JS ბიბლიოთეკა გვაწვდის მზა მობილური აპლიკაციის ინტერფეისის ელემენტებს (რაც შეიძლება ახლოს არის მშობლიურთან) სხვადასხვა პლატფორმისთვის. ჩვენ გვჭირდება, რომ გამომავალი იყოს მობილური აპლიკაცია და არა გვერდი ბრაუზერიდან! ასე რომ, ჩამოტვირთეთ JQuery Mobile-ის უახლესი ვერსია (jquerymobile.com/download) და გადაიტანეთ პირველი აპლიკაციის ფაილები, რომლებიც გვჭირდება სამუშაო საქაღალდეში:

  • images/ (აქ გადაიტანეთ ყველა სურათი jq-mobile არქივის ამავე სახელწოდების საქაღალდიდან);
  • index.css;
  • index.html;
  • index.js;
  • jquery.js;
  • jquery.mobile.min.css;
  • jquery.mobile.min.js.

აუცილებელია რესურსები ძირითადად ლოკალური იყოს, რათა მომხმარებელმა მომავალში ფუჭად არ დაკარგოს მობილური ინტერნეტი. ახლა ჩვენ ვქმნით გვერდის ჩარჩოს index.html ფაილში. ქვემოთ მოცემული კოდი აღწერს გვერდის ზედა ნაწილს რუქით, წარწერით „გეოგრაფიული შეხსენება“ და ღილაკი „ქულები“.

რუკის გვერდი

გეორემხსენება

ქულები

გვერდის ატრიბუტი data-dom-cache="true" აუცილებელია იმის უზრუნველსაყოფად, რომ იგი არ განიტვირთება მეხსიერებიდან. Points ღილაკი იყენებს data-transition="pop"-ს, რათა ქულების სიის გვერდი გაიხსნას Pop-in ეფექტით. თქვენ შეგიძლიათ წაიკითხოთ მეტი იმის შესახებ, თუ როგორ არის სტრუქტურირებული jQuery Mobile გვერდები კარგ სახელმძღვანელოში (bit.ly/vtXX3M). ანალოგიით, ჩვენ ვქმნით გვერდს პუნქტების ჩამონათვალით:

პუნქტების სიის გვერდი

წაშალე ყველაფერი

ქულები

რუკა

„Map“ ღილაკისთვის ასევე დავწერთ data-transition="pop", მაგრამ დავამატებთ data-direction="reverse" ატრიბუტს ისე, რომ "Map" გვერდი გაიხსნება "Fade" ეფექტით. იგივე ატრიბუტებს დავწერთ წერტილის შაბლონში. ესე იგი, ჩვენი ჩარჩო მზად არის.

აპლიკაციის შექმნა

ახლა ჩვენ გვჭირდება რუკის ჩვენება, რისთვისაც გამოვიყენებთ სტანდარტულ Google Maps API-ს, რომელსაც იყენებს მილიონობით სხვადასხვა საიტი:

Var latLng = ახალი gm.LatLng(this.options.lat, this.options.lng); this.map = new gm.Map(element, ( zoom: this.options.zoom, // აირჩიეთ საწყისი მასშტაბირების ცენტრი: latLng, // დააყენეთ საწყისი ცენტრი mapTypeId: gm.MapTypeId.ROADMAP, // Normal map disableDoubleClickZoom: true, // გამორთეთ ავტომატური მასშტაბირება შეხებით/ორჯერ დააწკაპუნეთ disableDefaultUI: true // გამორთეთ ყველა ინტერფეისის ელემენტი ));

აქ Gm არის ცვლადი, რომელიც მიუთითებს Google Maps ობიექტზე. კოდში კარგად დავაფიქსირე ინიციალიზაციის პარამეტრები. შემდეგი ნაბიჯი არის რუკაზე მამაკაცის მარკერის დახატვა:

This.person = new gm.Marker(( map: this.map, icon: new gm.MarkerImage(PERSON_SPRITE_URL, new gm.Size(48, 48)) ));

პიროვნების სპრაიტის მისამართი Google პანორამებიდან გამოიყენება, როგორც PERSON_SPRITE_URL. მისი სტატიკური მისამართია maps.gstatic.com/mapfiles/cb/mod_cb_scout/cb_scout_sprite_api_003.png. მომხმარებელი დაამატებს ქულებს რუკაზე დაწკაპუნებით, ამიტომ მათ დასახატად მოვუსმენთ დაწკაპუნების მოვლენას:

Gm.event.addListener(this.map, "click", ფუნქცია (event) (self.requestMessage(function (er, message) ( // მეთოდი, რომელიც აბრუნებს მომხმარებლის მიერ შეყვანილ ტექსტს, თუ (er) დაბრუნდება; // მეთოდი ამატებს წერტილს აქტიურთა სიას და // ხატავს რუკაზე self.addPoint(event.latLng, self.options.radius, message self.updatePointsList( // გადახაზეთ პუნქტების სია )); ყალბი);

მე გთავაზობთ კოდის უმეტეს ნაწილს - მოძებნეთ დანარჩენი დისკზე. შემდეგ ჩვენ უნდა ვასწავლოთ აპლიკაციას რუკაზე მომხმარებლის ხატის გადატანა. პროტოტიპში ჩვენ ვიყენებთ Geolocation API-ს (ის, რომელიც ასევე გამოიყენება დესკტოპის ბრაუზერებში):

If (navigator.geolocation) ( // შეამოწმეთ, მხარს უჭერს თუ არა ბრაუზერს გეოლოკაციის ფუნქცია gpsSuccess(pos) ( var lat, lng; if (pos.coords) ( lat = pos.coords. latitude; lng = pos.coords.longitude; ) else ( lat = pos.latitude; lng = pos.longitude; ) self.movePerson(new gm.LatLng(lat, lng) // გადაადგილება მომხმარებლის ხატულა ) // ყოველ სამ წამში ვითხოვთ მიმდინარე // პოზიციას მომხმარებლის window.setInterval (ფუნქცია () ( // მოითხოვეთ მიმდინარე პოზიცია navigator.geolocation.getCurrentPosition(gpsSuccess, $.noop, ( enableHighAccuracy: true, maximumAge: 300000 )); , 3000);

MovePerson მეთოდი იყენებს მარტივ getPointsInBounds() პროცედურას, რათა შეამოწმოს, არის თუ არა მომხმარებელი რომელიმე აქტიურ წერტილში. ბოლო კითხვა - სად შეინახოთ ქულების სია? HTML5-მა შემოიტანა ლოკალური მეხსიერების გამოყენების შესაძლებლობა, ამიტომ უყურადღებოდ არ დავტოვოთ იგი (მე დაგტოვებთ, რომ თავად გაარკვიოთ კოდის ეს ნაწილები, რაზეც კარგად გამოვთქვი კომენტარი). ასე რომ, ბრაუზერში გაშვებული აპლიკაცია მზად არის!

ვებ აპლიკაციის გაშვება

როგორც უკვე ვთქვი, გამართვა ძირითადად კომპიუტერზე უნდა გაკეთდეს. ყველაზე შესაფერისი ბრაუზერი კომპიუტერზე ვებ აპლიკაციების შესამოწმებლად არის Safari ან Chrome. ამ ბრაუზერებში გამართვის შემდეგ, შეგიძლიათ დარწმუნებული იყოთ, რომ თქვენი აპლიკაცია არ იმუშავებს მობილური ტელეფონის ბრაუზერში. ორივე ბრაუზერი თავსებადია მობილური ვებ ბრაუზერების უმეტესობასთან, რადგან ისინი აგებულია WebKit ძრავზე, ისევე როგორც მათ. ყველა ხარვეზის აღმოფხვრის შემდეგ, შეგიძლიათ გააგრძელოთ მობილური ვებ აპლიკაციის გაშვება პირდაპირ თქვენს ტელეფონზე. ამისათვის დააკონფიგურირეთ თქვენი ვებ სერვერი (თუნდაც Denwer ან XAMPP) ისე, რომ მოემსახუროს შექმნილ გვერდს და გახსენით იგი თქვენი მობილური ტელეფონის ბრაუზერში. აპლიკაცია უნდა გამოიყურებოდეს ნახატზე ნაჩვენების მსგავსი. აქ მნიშვნელოვანია გვესმოდეს, რომ PhoneGap-ის გამოყენებით მობილური პლატფორმისთვის შედგენილი მომავალი მობილური აპლიკაცია თითქმის იდენტური იქნება, გარდა იმისა, რომ ბრაუზერის ნავიგაციის ზოლი ეკრანზე არ გამოჩნდება. თუ ყველაფერი კარგადაა, შეგიძლიათ დაიწყოთ სრულფასოვანი iOS აპლიკაციის შექმნა გვერდიდან. გთხოვთ გაითვალისწინოთ, რომ ჩვენ არც კი შეხებივართ PhoneGap-სა და მობილურის განვითარების IDE-ს ამ დრომდე.

მომზადება

iOS-ისთვის აპლიკაციის შესაქმნელად საჭიროა კომპიუტერი Mac OS 10.6+ ოპერაციული სისტემით (ან ვირტუალური მანქანა Mac OS 10.6-ზე), ასევე Xcode განვითარების გარემო დაინსტალირებული iOS SDK-ით. თუ არ გაქვთ დაინსტალირებული SDK, თქვენ უნდა ჩამოტვირთოთ დისკის სურათი Apple-ის ვებსაიტიდან, რომელიც მოიცავს Xcode-ს და iOS SDK-ს (developer.apple.com/devcenter/ios/index.action). გაითვალისწინეთ, რომ სურათი იწონის დაახლოებით 4 GB. გარდა ამისა, თქვენ უნდა დარეგისტრირდეთ Apple-ის ვებსაიტზე, როგორც დეველოპერი (თუ არ აპირებთ თქვენი აპლიკაციის გამოქვეყნებას AppStore-ში, მაშინ ეს მოთხოვნა შეიძლება გვერდის ავლით მოხდეს). ამ ნაკრების გამოყენებით შეგიძლიათ განავითაროთ აპლიკაციები iOS-ის მშობლიურ ენაზე Objective-C. მაგრამ ჩვენ გადავწყვიტეთ გამოგვეყენებინა გამოსავალი და გამოგვეყენებინა PhoneGap, ამიტომ ჯერ კიდევ გვჭირდება PhoneGap iOS პაკეტის დაყენება. უბრალოდ ჩამოტვირთეთ არქივი ოფსიტიდან (https://github.com/callback/phonegap/zipball/1.2.0), ამოალაგეთ იგი და გაუშვით ინსტალერი iOS საქაღალდეში. როდესაც ინსტალაცია დასრულდება, PhoneGap ხატულა უნდა გამოჩნდეს Xcode პროექტების მენიუში. გაშვების შემდეგ მოგიწევთ რამდენიმე ფორმის შევსება, მაგრამ ძალიან მალე იხილავთ IDE სამუშაო ადგილს თქვენი პირველი აპლიკაციით. იმის შესამოწმებლად, მუშაობს თუ არა ყველაფერი, დააწკაპუნეთ ღილაკს Run - უნდა დაიწყოს iPhone/iPad-ის ემულატორი PhoneGap შაბლონის აპლიკაციით. აწყობილი პროგრამა გამოიმუშავებს შეცდომას, რომ index.html ვერ მოიძებნა - ეს ნორმალურია. გახსენით საქაღალდე, რომელშიც შეინახეთ პირველადი პროექტის ფაილები და იპოვეთ მასში www ქვესაქაღალდე. გადაიტანეთ ის რედაქტორში, დააწკაპუნეთ აპლიკაციის ხატულაზე სიაში მარცხნივ და ფანჯარაში, რომელიც გამოჩნდება, აირჩიეთ „შექმენით საქაღალდე ცნობები ნებისმიერი დამატებული საქაღალდესთვის“. თუ პროგრამას ისევ გაუშვით, ყველაფერი უნდა იმუშაოს. ახლა ჩვენ შეგვიძლია დავაკოპიროთ ჩვენი პროტოტიპის ყველა ფაილი www საქაღალდეში. დროა შევცვალოთ ჩვენი პროტოტიპი, რომ იმუშაოს სმარტფონზე PhoneGap დამუშავების გამოყენებით.

პროტოტიპის გადაცემა

უპირველეს ყოვლისა, თქვენ უნდა შეიტანოთ phonegap-1.2.0.js თქვენს ინდექსის ფაილში. PhoneGap საშუალებას გაძლევთ შეზღუდოთ მოსანახულებლად ხელმისაწვდომი ჰოსტების სია. მე ვთავაზობ დაუყოვნებლივ შექმნას ასეთი "თეთრი სია". პროექტის მენიუში გახსენით Supporting Files/PhoneGap.plist, იპოვეთ ExternalHosts ელემენტი და დაამატეთ მას შემდეგი ჰოსტები, რომლებზეც ჩვენი აპლიკაცია ექნება წვდომას (ეს არის Google Maps სერვერები): *.gstatic.com, *.googleapis.com, maps .google.com. თუ მათ არ მიუთითებთ, პროგრამა აჩვენებს გაფრთხილებას კონსოლში და რუკა არ გამოჩნდება. ჩვენი აპლიკაციის ვებ ვერსიის ინიციალიზაციისთვის ჩვენ გამოვიყენეთ DOMReady ღონისძიება ან jQuery დამხმარე: $(document).ready(). PhoneGap აგენერირებს deviceready მოვლენას, რაც მიუთითებს, რომ მობილური მოწყობილობა მზად არის. მე გირჩევთ გამოიყენოთ ეს:

Document.addEventListener("deviceready", ფუნქცია () ( new Notificator($("#map-canvas")); // თუ მომხმარებელს არ აქვს ინტერნეტი, // აცნობეთ მას ამის შესახებ თუ (navigator.network.connection. type = == Connection.NONE) ( navigator.notification.alert ("ინტერნეტთან კავშირი არ არის", $.noop, TITLE); ) ), false);
თავიდან ავიცილოთ გადახვევა: document.addEventListener("touchmove", ფუნქცია (event) ( event.preventDefault(); ), false);

შემდეგ ჩვენ შევცვლით ყველა გაფრთხილებას და დავადასტურებთ ზარებს მშობლიური ზარებით, რომლებსაც PhoneGap გვაწვდის:

Navigator.notification.confirm("Remove point?", function (button_id) ( if (button_id === 1) ( // OK ღილაკზე დაჭერით self.removePoint(point); ) ), TITLE);

ბოლო, რაც უნდა შევცვალოთ, არის კოდის ბლოკი, რომელიც ანაცვლებს მომხმარებლის ხატულას რუკაზე. ჩვენი ამჟამინდელი კოდიც მუშაობს, მაგრამ ის ნაკლებად ოპტიმალურად მუშაობს (იგი მოძრაობს ხატულას მაშინაც კი, თუ კოორდინატები არ შეცვლილა) და არ იძლევა ისეთ მდიდარ მონაცემებს, როგორც PhoneGap-ის ანალოგი:

Navigator.geolocation.watchPosition(ფუნქცია (პოზიცია) ( self.movePerson(new gm.LatLng(position.coords.latitude, position.coords.longitude)); ), ფუნქცია (შეცდომა) ( navigator.notification.alert("code: " + error.code + "\nmessage: " + error.message, $.noop, TITLE); ), ( სიხშირე: 3000 ));

ეს კოდი უფრო ელეგანტურია - ის წარმოქმნის მოვლენას მხოლოდ მაშინ, როდესაც კოორდინატები შეიცვალა. დააწკაპუნეთ ღილაკს Run და დარწმუნდით, რომ ჩვენ მიერ შექმნილი აპლიკაცია იდეალურად მუშაობს iOS მოწყობილობის სიმულატორში! დროა დაიწყოთ გაშვება რეალურ მოწყობილობაზე.

გაშვება მოწყობილობაზე

შეაერთეთ თქვენი iPhone, iPod ან iPad კომპიუტერთან, რომელიც მუშაობს Xcode. პროგრამა აღმოაჩენს ახალ მოწყობილობას და ითხოვს ნებართვას გამოიყენოს იგი განვითარებისთვის. აზრი არ აქვს მასზე უარის თქმას :). კიდევ ერთხელ გავიმეორებ: iOS-ზე წერილობითი აპლიკაციის გასაშვებად, თქვენ უნდა იყოთ iOS-ის ავტორიზებული დეველოპერი (სხვა სიტყვებით რომ ვთქვათ, გამოწერილი იყოთ iOS დეველოპერის პროგრამაზე). ეს მხოლოდ მაშინ შეგაწუხებთ, თუ Apple-ის პროდუქტებისთვის აპლიკაციებს ავითარებთ სხვა პლატფორმებთან (Android, Windows Phone) ყველაფერი გაცილებით მარტივია. მათ, ვინც სწავლობს უნივერსიტეტში, აქვთ შესაძლებლობა მიიღონ პროგრამაზე წვდომა უფასოდ გარკვეული შეღავათების წყალობით. ყველა დანარჩენმა უნდა გადაიხადოს $99 წელიწადში პროგრამაში მონაწილეობის მისაღებად. Apple გასცემს სერთიფიკატს, რომლითაც შეგიძლიათ ხელი მოაწეროთ თქვენს კოდს. ხელმოწერილი აპლიკაცია ნებადართულია iOS-ზე გაშვებისა და App Store-ში გავრცელების. თუ თქვენ არ ხართ სტუდენტი და მაინც გეცოდინებათ 99 დოლარი უდანაშაულო ექსპერიმენტებისთვის, მაშინ არსებობს სხვა გზა - სისტემის მოტყუება. თქვენ შეგიძლიათ შექმნათ ხელმოწერილი სერტიფიკატი კოდის გადამოწმებისთვის და გაუშვათ მობილური პროგრამა ჯეილბრეიკებულ iOS მოწყობილობაზე (ამაზე არ შევჩერდები, რადგან ყველაფერი რაც შეიძლება დეტალურად არის აღწერილი ამ სტატიაში: bit.ly/tD6xAf) . ასეა თუ ისე, მალე მობილური ტელეფონის ეკრანზე იხილავთ სამუშაო აპლიკაციას. გააჩერეთ წამზომი. რამდენი ხანი დაგჭირდა?

სხვა პლატფორმები

PhoneGap-ის გარდა, არსებობს სხვა პლატფორმები, რომლებიც საშუალებას გაძლევთ შექმნათ მობილური აპლიკაციები მშობლიური ენების გამოყენების გარეშე. მოდით ჩამოვთვალოთ ყველაზე მაგარი მოთამაშეები.

Appcelerator Titanium (www.appcelerator.com).

Titanium-ს შეუძლია აპლიკაციების შექმნა ძირითადად Android-ისა და iPhone-ისთვის, მაგრამ ასევე აცხადებს, რომ მხარს უჭერს BlackBerry-ს. თავად ჩარჩოს გარდა, პროექტი უზრუნველყოფს მშობლიურ ვიჯეტებისა და IDE-ს კომპლექტს. თქვენ შეგიძლიათ განავითაროთ აპლიკაციები Titanium-ზე უფასოდ, მაგრამ მოგიწევთ გადაიხადოთ მხარდაჭერა და დამატებითი მოდულები (თვეში 49 დოლარიდან). ზოგიერთი მესამე მხარის მოდულის ფასი წელიწადში 120 დოლარს აღწევს. Appcelerator Titanium-ის დეველოპერები აცხადებენ, რომ 25 ათასზე მეტი აპლიკაცია დაიწერა მათი ფრეიმიკზე დაყრდნობით. პროექტის წყაროს კოდი ნაწილდება Apache 2 ლიცენზიით.

Corona SDK (www.anscamobile.com/corona).

ეს ტექნოლოგია მხარს უჭერს ძირითად პლატფორმებს - iOS და Android. ჩარჩო ძირითადად მიზნად ისახავს თამაშის განვითარებას. რა თქმა უნდა, დეველოპერები აცხადებენ მაღალი ხარისხის ოპტიმიზაციას OpenGL-ზე. პლატფორმას არ აქვს უფასო ვერსია და ფასი საკმაოდ მაღალია: 199$ წელიწადში ლიცენზიისთვის ერთი პლატფორმისთვის და 349$ წელიწადში iOS-ისა და Android-ისთვის. Corona გთავაზობთ საკუთარ IDE-ს და მოწყობილობის ემულატორებს. Corona აპლიკაციები იწერება JavaScript-ის მსგავს ენაზე.

დასკვნა

ჩვენ შევქმენით მარტივი მობილური ვებ აპლიკაცია და გადავიტანეთ ის iOS პლატფორმაზე PhoneGap-ის გამოყენებით რამდენიმე მარტივი ნაბიჯით. ჩვენ არ დაგვიწერია Objective-C კოდის ერთი სტრიქონი, მაგრამ მივიღეთ ღირსეული ხარისხის პროგრამა, მინიმალური დრო დახარჯა PhoneGap API-ს პორტირებასა და სწავლაში. თუ უპირატესობას ანიჭებთ სხვა პლატფორმას, მაგალითად, Android ან Windows Mobile 7, მაშინ თქვენ შეგიძლიათ მარტივად, ამ პლატფორმებისთვის რაიმე ცვლილების გარეშე, შექმნათ ჩვენი აპლიკაცია (თითოეული მათგანისთვის არის კარგი შესავალი სახელმძღვანელო და ვიდეო გაკვეთილი: phonegap.com/ დაწყება). პლატფორმის სიცოცხლისუნარიანობის შესამოწმებლად, შეგიძლიათ ნახოთ მზა აპლიკაციები PhoneGap-ზე, რომლებიც ტექნოლოგიების შემქმნელებმა შეაგროვეს სპეციალურ გალერეაში (phonegap.com/apps). სინამდვილეში, PhoneGap არის იდეალური პლატფორმა მომავალი აპლიკაციის მინიმუმ პროტოტიპის შესაქმნელად. მისი მთავარი უპირატესობებია სიჩქარე და მინიმალური ხარჯები, რომლებსაც აქტიურად იყენებენ ყველა თვალსაზრისით შეზღუდული რესურსებით სტარტაპები. თუ აპლიკაცია ვერ მოხერხდა და რაიმე მიზეზით აღარ ხართ კმაყოფილი HTML+JS ინტერიერებით, ყოველთვის შეგიძლიათ აპლიკაციის პორტირება მშობლიურ ენაზე. არ შემიძლია არ ვთქვა, რომ PhoneGap თავდაპირველად შეიქმნა Nitobi-ს მიერ, როგორც ღია კოდის პროექტი (საცავი მდებარეობს GitHub-ზე: github.com/phonegap). წყაროს კოდი კვლავ ღია დარჩება, თუმცა Adobe-მა Nitobi იყიდა გასულ ოქტომბერში. მჭირდება იმის თქმა, რა პერსპექტივები აქვს პროექტს ასეთი გიგანტის მხარდაჭერით?

"როგორ მინდა თავად შევქმნა თამაში Android-ისთვის!" რომელი ჩვენგანი არ უფიქრია ამაზე ამა თუ იმ მომენტში? შექმენით თქვენი საკუთარი აპლიკაცია ან თამაში Android-ისთვის პროგრამირების ცოდნის გარეშე – რეალური! საკმარისია ჩამოტვირთოთ პროგრამა ან გამოიყენოთ ონლაინ განაცხადის სერვისი (დიზაინერი). არის ფასიანი და უფასო კონსტრუქტორები, ასევე რეკლამიდან ფულის გამომუშავების შესაძლებლობით, რომლებიც ნაჩვენები იქნება თქვენს აპლიკაციებში.

თამაშის შექმნის აპლიკაციები

ყველაზე მარტივი და ხელმისაწვდომი გზაა აპლიკაციის ჩამოტვირთვა Google Play-ზე თამაშების შესაქმნელად, დიახ, თამაში მარტივი იქნება, მაგრამ სადღაც უნდა დაიწყოთ.

1. დახატე შენი თამაში

მოსახერხებელი პროგრამა, რომელიც ყველას აძლევს შესაძლებლობას შექმნას საკუთარი ვიდეო თამაში რამდენიმე მარტივი ნაბიჯით.

  1. დახაზეთ თქვენი თამაშის სამყარო ფურცელზე ოთხი განსხვავებული ფერის გამოყენებით (შავი, ლურჯი, მწვანე და წითელი).
  2. გამოიყენეთ აპლიკაცია თქვენი ნახატის ფოტოს გადასაღებად.
  3. დაელოდეთ 10 წამს, რომ DYG გადააქციოს ნახატი თამაშად.
  4. ითამაშეთ თქვენი თამაში მისი პერსონაჟის კონტროლით.
  5. გაუზიარეთ თქვენი კრეატიულობა სხვა მომხმარებლებს.

ჩამოტვირთვა GOOGLE PLAY-ზე

2. Apper (შექმენით თქვენი საკუთარი პროგრამა)

Apper-ით შეგიძლიათ შექმნათ და გამოაქვეყნოთ თქვენი საკუთარი აპლიკაციები 5 მარტივ ნაბიჯში. პროგრამა ძალიან მარტივი გამოსაყენებელია და არ საჭიროებს პროგრამირების ცოდნას.

აპლიკაცია უფასოა, მაგრამ თქვენი პროექტის App Store-ში ან Google Play-ზე გამოსაქვეყნებლად, თქვენ უნდა შეიძინოთ ფასიანი გამოწერა.

ჩამოტვირთვა GOOGLE PLAY-ზე

3. AIDE- IDE Android Java C++-ისთვის

არის ინტეგრირებული განვითარების გარემო (IDE) რეალური Android აპლიკაციების შესაქმნელად პირდაპირ თქვენს Android მოწყობილობაზე. მიჰყევით გაკვეთილებს, რომ გახდეთ ექსპერტი და გამოიყენეთ ეს უნარები თქვენს აპლიკაციებში.

ძირითადი ფუნქციები:

  • თავსებადია Eclipse პროექტებთან.
  • Java/XML და Android SDK.
  • C/C++ და Android NDK.
  • Java კონსოლის აპლიკაციები.
  • Dropbox-თან სინქრონიზაცია.

ჩამოტვირთვა GOOGLE PLAY-ზე

4. Createrria 2 შექმენით თქვენი თამაშები

ამ თამაშით შეგიძლიათ რამდენიმე წუთში შექმნათ თქვენი საკუთარი საინტერესო თამაშები, გაუზიაროთ ისინი მეგობრებს და გახდეთ ცნობილი. პროგრამირების უნარების გარეშე, ყველაფერი რაც თქვენ გჭირდებათ არის თქვენი ფანტაზია.

Ძირითადი მახასიათებლები:

ჩამოტვირთვა GOOGLE PLAY-ზე

5. STRUCKD – 3D Game Builder

ის აერთიანებს სათამაშო საზოგადოებას და მოწინავე პლატფორმას, რომელშიც შეგიძლიათ შექმნათ უნიკალური 3D სამყარო და გაუზიაროთ თქვენი შემოქმედება სხვა ადამიანებს. არჩევანის ჟანრები რბოლებიდან დაწყებული Tower Defense და Action Puzzlers-ით დამთავრებული.

  • 3D თამაშის კონსტრუქტორი გადაწევით.
  • სხვა მომხმარებლების მიერ შექმნილი რამდენიმე ათასი თამაშის კოლექცია.
  • სათამაშო საზოგადოება: დაამყარეთ რეკორდები და მოიმატეთ რანგი.

ჩამოტვირთვა GOOGLE PLAY-ზე

6. Sketch Nation Create

კიდევ ერთი კარგი პლატფორმა ონლაინ თამაშების შესაქმნელად. ახლა თქვენ შეგიძლიათ რეალურ დროში შექმნათ მულტიმოთამაშიანი თამაშები და ითამაშოთ ისინი მეგობრებთან ერთად. აპლიკაცია საშუალებას გაძლევთ შექმნათ უმარტივესი თამაშებიდან უფრო მოწინავე თამაშებამდე, სხვადასხვა ჟანრის გამოყენებით, გახადოთ სერვისი შესაფერისი არა მხოლოდ ბავშვებისთვის, არამედ სტუდენტებისთვის და მასწავლებლებისთვისაც კი.

ჩამოტვირთვა GOOGLE PLAY-ზე

ონლაინ თამაშებისა და აპლიკაციების დიზაინერები

თუ გადაწყვეტთ სცადოთ უფრო სერიოზული პლატფორმა თამაშებისა და აპლიკაციების შესაქმნელად, შემდგომი გამოქვეყნებით Google Play-სა და AppStore-ზე, მაშინ გირჩევთ სცადოთ ქვემოთ წარმოდგენილი კომპიუტერებისთვის ნებისმიერი ონლაინ კონსტრუქტორი.

საუკეთესო ონლაინ სერვისების სია, სადაც შეგიძლიათ შექმნათ თამაშები და აპლიკაციები მობილური მოწყობილობებისთვის:

  1. www.appsgeyser.com – ალბათ საუკეთესო ონლაინ მშენებელი დღეს. Appsgeyser გაძლევთ საშუალებას შექმნათ სხვადასხვა ტიპის თამაშები და აპლიკაციები შეუზღუდავი რაოდენობით უფასოდ. თქვენი პროგრამული უზრუნველყოფის შემოწმებისა და ტესტირების შემდეგ, შეგიძლიათ გამოაქვეყნოთ იგი თავისუფლად და ყოველგვარი შეზღუდვის გარეშე. გარდა ამისა, რეკლამიდან მიიღებთ შემოსავლის 50%-ს.
  2. www.unity3d.com არის მსოფლიოში ერთ-ერთი უდიდესი კრეატიული საზოგადოება - და ნომერ პირველი პლატფორმა თამაშების განვითარებისთვის. Unity-ით შეგიძლიათ შექმნათ ნებისმიერი 2D ან 3D თამაში. განვითარების პროცესი მარტივი იქნება, შედეგი კი ღრმად ოპტიმიზირებული და ლამაზი.
  3. www.c2community.ru – გააკეთე თამაშები ძალისხმევის გარეშე! Construct 2 არის თამაშების შემქმნელი Android-ისთვის, რომელიც საშუალებას გაძლევთ შექმნათ საოცარი თამაშები კოდირებისა და სკრიპტების გარეშე!
  4. www.russia.ibuildapp.com – ფასიანი აპლიკაციის შემქმნელი თქვენი ბიზნესისთვის. საშუალებას გაძლევთ შექმნათ აპლიკაციები Android-ისთვის ან IOS-ისთვის (iPhone და iPad) უფასოდ. დიზაინერის გამოყენებით შექმნილი აპლიკაციები შეიძლება იყოს არა მხოლოდ ანიმაციური, არამედ დაემატოს ვიდეო და ხმა.
  5. www.mobiumapps.com – მობილური აპლიკაციის ფასიანი შექმნა iOS (Apple) და Android (Google) ტელეფონებისთვის ონლაინ.
  6. www.viziapps.com – შექმენით და გაუშვით მობილური აპლიკაცია 3 სწრაფი ნაბიჯით.
  7. www.appmakr.com – გააკეთეთ საკუთარი აპლიკაცია 20 წუთში ან გამოიყენეთ მზა შაბლონი.
  8. www.theappbuilder.com არის უფასო ონლაინ სერვისი ბიზნესისთვის მობილური აპლიკაციების სწრაფად შესაქმნელად.
  9. www.appsmakerstore.com არის ონლაინ სერვისი, რომელიც შეგიძლიათ შექმნათ თქვენი საკუთარი აპლიკაცია რამდენიმე დაწკაპუნებით. შექმენით საკუთარი აპლიკაციები უფასოდ, გამოაქვეყნეთ ისინი და გამოიმუშავეთ ფული რეკლამიდან ყოველ 1000 ნახვაზე.
  10. www.biznessapps.com – აპლიკაციის შექმნა მცირე ბიზნესისთვის ფართო შესაძლებლობებით.

როგორ მოახერხეთ თქვენი აპლიკაციის შექმნა? გააზიარეთ თქვენი აზრი გვერდის ბოლოში კომენტარის დატოვებით, შესაძლოა თქვენი მესიჯი სასარგებლო იყოს და დაეხმაროს სხვა მომხმარებლებს არჩევანის გაკეთებაში.

პასუხისმგებლობის უარყოფა:
ეს სტატია არის წიგნის „App Savvy“ შესავლის უფასო მხატვრული გადმოცემა და თარგმანი
იდეების გადაქცევა ipad-ად და iphone-ის აპებად, მომხმარებლებს ნამდვილად სურთ "

ეს შეიძლება იყოს დაინტერესებული ადამიანებისთვის, რომლებიც ახლახან მოდიან მობილური განვითარების სამყაროში და აინტერესებთ სად უნდა დაიწყოს. თუ გამოცდილი ბიზნესმენი ხართ, რომელსაც უკვე აქვს სტაბილური შემოსავალი საკუთარი მობილური აპლიკაციებიდან, დიდი ალბათობით, ეს უსარგებლო და აშკარად მოგეჩვენებათ.

მართალია, ტოპ დეველოპერები ძალიან კარგად მუშაობენ, ყველაზე პოპულარული აპლიკაციებით, ჩვეულებრივ თამაშები, როგორიცაა Angry Birds ან Doodle Jump, მილიონობით ჩამოტვირთვას იღებენ. როდესაც თვლით, რომ შეგიძლიათ მიიღოთ $1 ყოველ ჩამოტვირთვაზე და დააკვირდით ამ აპლიკაციების ჩამოტვირთვის კოლოსალურ მოცულობას, ძალიან ადვილია შეხედოთ App Store-ს და დაინახოთ მხოლოდ ფულის ნაშთები, რომლებიც თქვენს წინ მიცურავს.


Business Insider: Angry Birds Maker Rovio იტყობინება $200 მილიონი შემოსავალი 2012 წელს, სურათი techcrunch.com-დან

ამ მომენტში ძალიან ადვილია იფიქრო „რატომ არა მე?“, გააკეთო შენი აპლიკაცია - და შეხედო მკაცრ რეალობას, რომელიც ჩვეულებრივ ძალიან განსხვავდება ასეთი წამყვანი დეველოპერების უღრუბლო არსებობისგან. სტატისტიკა აჩვენებს, რომ App Store-ის ფასიანი აპლიკაციების ნახევარზე მეტი არ იღებს 1000 ჩამოტვირთვას წელიწადში, რაც ნიშნავს, რომ Apple-ის საკომისიოს გამოკლების შემდეგ, თქვენ მიიღებთ მხოლოდ $700-ს - ასე რომ, მე რომ თქვენ ვიყო, ოპტიმიზმით არ განვიცდიდი პოპულარული თამაშების გასაოცარ შესრულებას.

ნიშნავს თუ არა ეს, რომ თუ თქვენ ახალი ხართ მობილური აპლიკაციების შემუშავებაში, დაუყოვნებლივ უნდა მიატოვოთ ეს იდეა? არაა აუცილებელი, მაგრამ ყოველ შემთხვევაში, პირველ რიგში, მე გთავაზობთ, რომ შეხედოთ ფაქტებს და შეისწავლოთ ყველაფერი, რაც უკვე არის App Store-ში - შემდეგ მიხვდებით, რომ ძალიან მცირე შანსი გაქვთ იქ მისვლის და დაუყოვნებლივ გაუშვით ძალიან პოპულარული აპლიკაცია. არ მინდა ვთქვა, რომ ეს შეუძლებელია, მაგრამ iPhone-ის ბევრმა წარმატებულმა დეველოპერმა შექმნა უამრავი აპლიკაცია, სანამ მიზანს მიაღწევდა. მთავარი, რასაც მიიღებთ თქვენი პირველი აპლიკაციის გაშვებით, არის თავად აპლიკაციების შემუშავების ცოდნა და გამოცდილება.

როდესაც ბაზარს სწავლობთ, შეიძლება იგრძნოთ, რომ წარმატებას ვერ მიაღწევთ. ასეთ სიტუაციაში ჩემი რჩევაა, უფრო ფართოდ იფიქროთ. შექმენით არა აპლიკაცია, არამედ ის, რაც თქვენთვის და ადამიანებისთვის ღირებულია არა მხოლოდ როგორც პროგრამა ტელეფონზე. მოაგვარეთ მომხმარებლებისთვის რეალური პრობლემები, გაუადვილეთ და მოდუნებული გახდით მათთვის - და შემდეგ შეგიძლიათ შექმნათ აპლიკაცია, რომელიც ნამდვილად პოპულარული გახდება.

მაგრამ სანამ დაიწყებთ თქვენი მობილური აპლიკაციის შემუშავებას, არ დაგავიწყდეთ ყველაფერი კარგად დაფიქრდეთ. ის, რაც განასხვავებს წარმატებულ მობილური აპლიკაციების დეველოპერებს, არის ის, რომ ისინი ეპყრობიან განვითარებას, როგორც ბიზნესს. ისინი ითვლიან განვითარების ღირებულებას, ბაზარზე შესვლის ღირებულებას, ფიქრობენ ინვესტიციების დაბრუნების გზაზე - და ეს საშუალებას აძლევს მათ მიიღონ სტაბილური შემოსავალი განვითარებისგან და არ ეცადონ იღბლიანი ლატარიის ბილეთის დახატვას.

რაც უფრო მეტ დროს დაუთმობთ ბაზრის შესწავლას, მით უფრო ნათლად ისწავლით განასხვავოთ ფულის შოვნის რეალური შესაძლებლობები ილუზორულისგან. იფიქრეთ აპლიკაციის განვითარებაზე, როგორც ინვესტიციაზე და თქვენ ისწავლით როგორ დაუკავშირდეთ კლიენტებს, მედია პარტნიორებს და შექმნათ თქვენი დიზაინის ელემენტებისა და კოდის ბიბლიოთეკა, რომელსაც გამოიყენებთ ყველა თქვენს აპში.

როგორც კი ისწავლით App Store-ის ეკონომიკის გაგებას, დაამყარებთ სწორ კავშირებს და დაიწყებთ თქვენი ბიბლიოთეკის შექმნას, გექნებათ მნიშვნელოვანი უპირატესობა იმ ადამიანებთან შედარებით, რომლებიც ახლახან დადიან App Store-ში და ცდილობენ იპოვონ ადგილი მზეზე.

სხვებისგან განსხვავებით, თქვენ არ მოხვალთ App Store-ში თქვენი იდეის სიდიადის ემოციებითა და ბოდვით სავსე. პირიქით, თქვენ შეძლებთ ობიექტურად შეაფასოთ თქვენი შესაძლებლობები და გაიგოთ, რამდენი ფული და დრო დაგჭირდებათ განაცხადში ინვესტიციისთვის და როგორ დააბრუნებთ თქვენს ინვესტიციას.


სტრატეგია
Თავი 1:
თავი 2: რა უნდა ჰქონდეს თქვენს განაცხადს?
თავი 3: იდეიდან კონცეფციამდე

განვითარება
თავი 4: გუნდის პოვნა: დახმარება გჭირდება
თავი 5: სამუშაო განაცხადის მიღება
თავი 6: აპლიკაციის გაუმჯობესება App Store-ში დამატებამდე

გაშვება
თავი 7: მზადება აპის ატვირთვისთვის App Store-ში
თავი 8: ჩვენი მარკეტინგული სტრატეგიის აგება
თავი 9: წარმატების გაზომვა და მომავალი მოვლენების გათვალისწინება

გთხოვთ გაითვალისწინოთ, რომ სტუდია მუდმივად განახლდება, ამიტომ ფანჯრების გარეგნობა და სხვა დეტალები შეიძლება განსხვავდებოდეს ამ მაგალითისგან. საიტის გაკვეთილების უმეტესობა ახლა იყენებს 2.3 ვერსიას. 2017 წლის 25 ოქტომბერს გამოვიდა ვერსია 3.0, რომელშიც ბევრი რამ შეიცვალა. ამ სტატიაში შევეცადე ყველა სურათის ახალი ვერსიით ჩანაცვლება.

Java გამოიყენება როგორც პროგრამირების ენა Android-ისთვის. XML გამოიყენება მომხმარებლის ინტერფეისის შესაქმნელად.

აქ უნდა გავაკეთოთ მცირე გადახვევა. Android Studio 3.0 ამატებს სრულ მხარდაჭერას Kotans-ის მიერ შემუშავებული ახალი Kotlin ენისთვის. Google-მა გამოაცხადა თავისი გეგმები, რომ ახალი "კატის" ენა მთავარი გახდეს. მაგრამ თქვენ უნდა გესმოდეთ, რომ მაგალითების დიდი რაოდენობა დაიწერა ჯავაში წინა წლების განმავლობაში. თუ თქვენ ახალი ხართ პროგრამირებაში, მაშინ უმჯობესია, ტრენინგის პირველ პერიოდში მთლიანად გაამახვილოთ ყურადღება ჯავაზე, გაგიადვილდებათ კითხვებზე პასუხების პოვნა. კოტლინი არ გაგექცევა, მოგვიანებით მასზე გადასვლა უფრო ადვილი იქნება, მაგრამ საპირისპირო პროცესი უფრო რთული იქნება. როდესაც ცოტათი გაეცნობით Java-ს, შეგიძლიათ ერთდროულად შეისწავლოთ მაგალითები კოტლინში. Google ახლა აქტიურად წერს დოკუმენტაციას Kotlin-ისთვის, მაგრამ სრული გადასვლა ჯერ კიდევ შორსაა, თუნდაც 50%-ზე ნაკლები. ცოტა მოგვიანებით მეც გავაკეთებ გაკვეთილებს კოტლინის გამოყენებით, მაგრამ ეს მალე არ იქნება.

გასულ საუკუნეში დამკვიდრებული ტრადიციის თანახმად, ყველა პროგრამისტს უნდა დაეწერა "Hello World!" (Hello World!) როგორც პირველი პროგრამა. დრო იცვლება და Hello World! უკვე ჩაშენებულია Android-ის განვითარების გარემოში თავსებადობის მიზნებისთვის და თანამედროვე პროგრამისტებმა უნდა დაწერონ პროგრამა Hello Kitty!(გამარჯობა კიტი!). დამეთანხმებით, რომ კნუტის მისალმება უფრო საღი აზრია, ვიდრე სხვა სამყაროს გამარჯობა.

ამიტომ პრობლემას ორ ნაწილად გავყოფთ. პირველ რიგში, მოდით გავუშვათ მზა პროგრამა ყოველგვარი კოდის დაწერის გარეშე, რათა დავრწმუნდეთ, რომ ყველა ხელსაწყო სწორად არის დაინსტალირებული და ჩვენ შეგვიძლია შევქმნათ და გავმართოთ პროგრამები. და შემდეგ ჩვენ დავწერთ ჩვენს პირველ პროგრამას.

ახალი პროექტის შექმნა

გაუშვით Studio და აირჩიეთ ფაილი | ახალი | Ახალი პროექტი.... გამოჩნდება ოსტატის დიალოგური ფანჯარა.

ველი განაცხადის სახელი- აპლიკაციის მეგობრული სახელი, რომელიც გამოჩნდება განაცხადის სათაურში. ნაგულისხმევად შეიძლება უკვე გქონდეთ Ჩემი განაცხადი. მოდით შევცვალოთ იგი. ძირითადად აქ შეგიძლია დაწერო და Გამარჯობა მსოფლიო!, მაგრამ ანდროიდს აქვს მშვენიერი შესაძლებლობა, გამოატანოს სასურველი სტრიქონები ტელეფონებზე სხვადასხვა ენაზე. ვთქვათ, ამერიკელის ტელეფონს ექნება წარწერა ინგლისურად, ხოლო რუსს - რუსულ ენაზე. აქედან გამომდინარე, საწყისი პარამეტრები ყოველთვის იყენებს ინგლისურ ვარიანტებს და მოგვიანებით ამზადებს ლოკალიზებულ სტრიქონებს. აუცილებელია დაუყოვნებლივ ჩამოყალიბდეს სწორი კოდის ჩვევა.

ველი კომპანიის დომენიემსახურება თქვენი საიტის მითითებას. ნაგულისხმევად, იქ შეიძლება გამოჩნდეს თქვენი სახელი, როგორც კომპიუტერის მომხმარებელი. თუ თქვენ გაქვთ ვებსაიტი, შეგიძლიათ შეიყვანოთ მისი მისამართი, ან მოიფიქროთ რაიმე სახელი. შეყვანილი სახელი ახსოვს და ავტომატურად შეიცვლება შემდეგ ახალ პროექტებში. თუმცა დანაზოგი.

მესამე ველი პროექტის ადგილმდებარეობასაშუალებას გაძლევთ აირჩიოთ დისკის ადგილმდებარეობა შექმნილი პროექტისთვის. თქვენ შეგიძლიათ შექმნათ ცალკე საქაღალდე თქვენს დისკზე თქვენი პროექტებისთვის და შეინახოთ თქვენი პროგრამები მასში. სტუდია იმახსოვრებს ბოლო საქაღალდეს და ავტომატურად შემოგთავაზებთ მასში შენახვას. საჭიროების შემთხვევაში, შეგიძლიათ დააყენოთ განსხვავებული მდებარეობა ინდივიდუალური პროექტისთვის, სამი წერტილის ღილაკის გამოყენებით.

ველი პაკეტის სახელიწარმოქმნის სპეციალურ Java პაკეტს თქვენი სახელის მიხედვით წინა ველიდან. ჯავა იყენებს ინვერსიულ ვერსიას პაკეტების დასახელებისთვის, ასე რომ, ის პირველ რიგში მიდის ru, შემდეგ კი საიტის სახელი. პაკეტი ემსახურება თქვენი აპლიკაციის ცალსახად იდენტიფიცირებას, როდესაც მას ავრცელებთ. თუ ასი ადამიანი დაწერს ას აპლიკაციას სახელწოდებით "კატა", მაშინ გაუგებარი იქნება სად არის დეველოპერის ვასილი კოტოვის მიერ დაწერილი აპლიკაცია. და აპლიკაცია პაკეტის სახელით ru.vaskakotov.catუფრო ადვილად პოულობენ. გთხოვთ გაითვალისწინოთ, რომ Google იყენებს პაკეტს თავის დოკუმენტაციაში com.მაგალითიდემონსტრაციის მიზნით. თუ თქვენ უბრალოდ დააკოპირებთ მაგალითებს დოკუმენტაციიდან და ცდილობთ გამოაქვეყნოთ ისინი ამ ფორმით Google Play-ზე, მაშინ არაფერი გამოვა - ეს სახელი დაცულია და აკრძალულია აპლიკაციების მაღაზიაში გამოსაყენებლად. ღილაკი რედაქტირებასაშუალებას გაძლევთ შეცვალოთ მომზადებული ვერსია. მაგალითად, თქვენ წერთ მორგებულ აპლიკაციას და უნდა გამოიყენოთ მომხმარებლის მიერ დამტკიცებული პაკეტის სახელი და არა თქვენი ნაგულისხმევი.

ქვემოთ მოცემულია პროგრამების დაწერის ორი ვარიანტი C++ და Kotlin-ში. ჩვენ ჯერ არ განვიხილავთ ამ ვარიანტებს. როცა კოტლინში წერთ, მონიშნეთ შესაბამისი ველი. თუმცა, თქვენ შეგიძლიათ გადაიყვანოთ პროექტი Java-დან Kotlin-ში და მოგვიანებით სტუდიის ინსტრუმენტების გამოყენებით.

დააჭირეთ ღილაკს შემდეგიდა გადადით შემდეგ ფანჯარაზე. აქ ვირჩევთ მოწყობილობების ტიპებს, რომლებისთვისაც განვავითარებთ ჩვენს აპლიკაციას. უმეტეს შემთხვევაში, ჩვენ დავწერთ სმარტფონებისთვის და პლანშეტებისთვის, ამიტომ ვტოვებთ ჩამრთველს პირველი ელემენტის გვერდით. თქვენ ასევე შეგიძლიათ დაწეროთ აპლიკაციები Android TV-სთვის, Android Wear-ისთვის, Android Auto-სთვის და Android Things-ისთვის.

მოწყობილობის ტიპის არჩევის გარდა, თქვენ უნდა აირჩიოთ სისტემის მინიმალური ვერსია, რომლითაც აპლიკაცია იმუშავებს. აირჩიეთ თქვენი ვარიანტი. ამ დროისთვის, Google მხარს უჭერს API 7-ით დაწყებულ ვერსიებს, ავრცელებს სპეციალურ თავსებადობის ბიბლიოთეკებს ძველი მოწყობილობებისთვის. მაგრამ თქვენ შეგიძლიათ აირჩიოთ უფრო თანამედროვე ვარიანტი. მე მაქვს ტელეფონი Android 4.4-ის მინიმალური ვერსიით, ამიტომ ვაყენებ ამ პარამეტრს.

ჯავა

საქაღალდე ჯავაშეიცავს სამ ქვესაქაღალდეს - სამუშაო და ტესტებისთვის. სამუშაო საქაღალდეს აქვს თქვენი პაკეტის სახელი და შეიცავს კლასის ფაილებს. ახლა არის ერთი კლასი Მთავარი აქტივობა. შეგიძლიათ დატოვოთ ტესტის საქაღალდეები მარტო. თუ იცით, როგორ მუშაობს პაკეტები Java-ში, შეგიძლიათ შექმნათ ახალი საქაღალდეები და ქვესაქაღალდეები.

რეზ

საქაღალდე რეზშეიცავს რესურსის ფაილებს დაყოფილი ცალკეულ ქვესაქაღალდეებად.

  • დასახატული- ამ საქაღალდეებში ინახება გრაფიკული რესურსები - სურათები და xml ფაილები, რომლებიც აღწერენ ფერებსა და ფორმებს.
  • განლაგება- ეს საქაღალდე შეიცავს xml ფაილებს, რომლებიც აღწერს ფორმებისა და სხვადასხვა ფორმის ელემენტების გარეგნობას. პროექტის შექმნის შემდეგ იქ უკვე არის ფაილი activity_main.xml, რომელიც პასუხისმგებელია აპლიკაციის მთავარი ფანჯრის გამოჩენაზე.
  • mipmap- აქ ინახება აპლიკაციის ხატები ეკრანის სხვადასხვა გარჩევადობისთვის
  • ღირებულებები- აქ განთავსებულია სიმებიანი რესურსები, ფერის რესურსები, თემები, სტილები და ზომები, რომლებიც შეგვიძლია გამოვიყენოთ ჩვენს პროექტში. აქ შეგიძლიათ ნახოთ ფაილები ფერები.xml, სტრიქონები.xml, styles.xml. ძველ პროექტებში იყო ფაილიც ზომები.xml, ის ახლა მიტოვებული იყო

დროთა განმავლობაში, თქვენ შეძლებთ თავისუფლად ნავიგაციას ამ საქაღალდეებში, თუ თავს არ შეაწუხებთ.

პროექტთან მუშაობა - გამარჯობა, მსოფლიო!

როგორც უკვე აღვნიშნეთ, პროგრამა Გამარჯობა მსოფლიო!უკვე ჩაშენებულია ნებისმიერ ახალ პროექტში, ასე რომ თქვენ არც კი გჭირდებათ რაიმეს დაწერა. თქვენ უბრალოდ უნდა დაიწყოთ პროექტი და მიიღოთ მზა პროგრამა!

შესასწავლად თქვენ უნდა გახსნათ ორი ფაილი - Მთავარი აქტივობა(დიდი ალბათობით უკვე გახსნილია) და activity_main.xml (რეს/განლაგება) სტუდიის ცენტრალურ ნაწილში. თუ ფაილები არ არის გახსნილი, მაშინ გახსენით ისინი ორჯერ დაწკაპუნებით რედაქტირებისთვის (ან სანახავად). ამ გზით თქვენ შეგიძლიათ გახსნათ ნებისმიერი ფაილი, რომელიც გჭირდებათ.

მოდით არ შევისწავლოთ კოდი ახლა, მაგრამ უბრალოდ დააწკაპუნეთ მწვანე სამკუთხედზე გაიქეცი(Shift+F10) ინსტრუმენტთა პანელზე სტუდიის ზედა ნაწილში აპლიკაციის გასაშვებად.

თუ არ გაქვთ ემულატორის კონფიგურაცია, ეს ნიშნავს, რომ წინა სახელმძღვანელო არ წაგიკითხავთ. ჯერ დააყენეთ ემულატორი და ისევ გაუშვით პროექტი. ან დააკავშირეთ რეალური მოწყობილობა.

თუ ყველაფერი გაკეთდა სწორად, თქვენი პროგრამა ჩაიტვირთება ემულატორში ან მოწყობილობაზე. გილოცავ!

ასე რომ, თუ პროგრამა დაიწყო, დაინახავთ განაცხადის ფანჯარას წარწერით. გადაცემის სათაურიც იქნება . ყველა ეს ხაზი შეგიძლიათ იხილოთ ფაილში res/values/strings.xmlდა სურვილისამებრ შეცვალეთ.

ახლა მოდით შევხედოთ კოდს. ჯერ ვისწავლოთ activity_main.xml.

მისი ყურება შეგიძლიათ ორ რეჟიმში - დიზაინიდა ტექსტი.

გახსენით რეჟიმში ტექსტი.

ეს არის ახალი შაბლონის კოდი, რომელიც გამოვიდა Android Studio 2.3-ში 2017 წლის მარტში. ადრე სხვა კოდი გამოიყენებოდა Relative Layout(და კიდევ უფრო ადრე, სხვა კოდით LinearLayout). თუ ძველ მაგალითებს წააწყდებით, სტუდიას აქვს კონტექსტური მენიუ, რომელიც დაგეხმარებათ ძველი კოდის ახალში გადაქცევაში.

ცოტა რამ XML კოდის შესახებ. არის სპეციალური კონტეინერი ConstraintLayout, რომელიც შეიცავს კომპონენტს TextView, განკუთვნილია ტექსტის გამოსატანად.

ახლა გადავხედოთ ჯავის კოდს ( MainActivity.java)

პაკეტი ru.alexanderklimov.helloworld; იმპორტი android.support.v7.app.AppCompatActivity; იმპორტი android.os.Bundle; საჯარო კლასის MainActivity აფართოებს AppCompatActivity ( @Override დაცული void onCreate(Bundle savedInstanceState) ( super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ))

თქვენ გაქვთ გახსნილი კლასის ფაილი თქვენს წინაშე, სადაც არის კლასის სახელი Მთავარი აქტივობაშეესაბამება ფაილის სახელს გაფართოებასთან ჯავა(ეს არის ჯავის ენის მიერ დადგენილი წესი). პირველი ხაზი შეიცავს პაკეტის სახელს - ჩვენ ეს დავაზუსტეთ პროექტის შექმნისას ( პაკეტის სახელი). შემდეგი არის ხაზები პროექტისთვის საჭირო კლასების იმპორტისთვის. სივრცის დაზოგვის მიზნით, ისინი იშლება ერთ ჯგუფად. გაშალე იგი. თუ ერთ დღეს დაინახავთ, რომ კლასების სახელები ნაცრისფერია, მაშინ ისინი არ გამოიყენება პროექტში (მინიშნება გამოუყენებელი იმპორტის განცხადება) და შეგიძლიათ უსაფრთხოდ წაშალოთ დამატებითი ხაზები. ისინი ასევე შეიძლება წაიშალოს ავტომატურად (კონფიგურირებადი).

შემდეგ მოდის თავად კლასის დეკლარაცია, რომელიც მემკვიდრეობით მიიღება ( ვრცელდება) აბსტრაქტული კლასიდან აქტივობა. ეს არის საბაზისო კლასი აპლიკაციის ყველა ეკრანისთვის. შესაძლებელია რომ გექნებათ AppCompatActivity, თუ პროექტის შექმნისას დატოვეთ მხარდაჭერა ძველი მოწყობილობებისთვის (მონიშვნის ველი უკან თავსებადობა (App Compat)). ძველ ვერსიებს არ გააჩნდათ ის სიკეთეები, რომლებიც გამოჩნდა Android 4-ის შემდეგ, ამიტომ მათთვის შეიქმნა სპეციალური თავსებადობის ბიბლიოთეკა, რომელიც საშუალებას გაძლევთ გამოიყენოთ ახალი ელემენტები Android-ის ახალი ვერსიებიდან ძველ პროგრამებში. Კლასი AppCompatActivityეს არის ზუსტად ის, რასაც ეხება თავსებადობის ბიბლიოთეკა. ჩათვალეთ იგი ბაზის ღარიბ ნათესავად აქტივობა. მას აქვს ყველა საჭირო მეთოდი და დამხმარე კლასები, მაგრამ სახელები შეიძლება ოდნავ განსხვავდებოდეს. და სახელებს ვერ ურევ. თუ იყენებთ კლასს თავსებადობის ბიბლიოთეკიდან, გამოიყენეთ შესაბამისი მეთოდები.

სხვადასხვა ეტაპზე გამოიყენებოდა სხვადასხვა აქტივობის კლასის სახელები, რომლებიც შეიძლება შეგხვდეთ ძველ პროექტებში. მაგალითად, პირველად გამოიყენეს ფრაგმენტული აქტივობა, მაშინ ActionBarActivityდა 2015 წლის 22 აპრილს გამოვიდა თავსებადობის ბიბლიოთეკის ახალი ვერსია და ამჟამად გამოიყენება ახალი კლასი AppCompatActivity.

თავად კლასში ჩვენ ვხედავთ მეთოდს onCreate ()– იძახება, როდესაც აპლიკაცია ქმნის და აჩვენებს აქტივობის მარკირებას. მეთოდი მონიშნულია როგორც დაცულიდა ახლავს ანოტაცია @Override(ამოღებული საბაზისო კლასიდან). შეჯამება შეიძლება თქვენთვის სასარგებლო იყოს. თუ მეთოდის სახელში შეცდომას გააკეთებთ, შემდგენელმა შეიძლება გაგაფრთხილოთ, რომ მშობელ კლასს არ აქვს ასეთი მეთოდი. აქტივობა.

მოდით შევხედოთ მეთოდის კოდს.

ხაზი super.onCreate(savedInstanceState);არის მშობელი კლასის კონსტრუქტორი, რომელიც ასრულებს აუცილებელ ოპერაციებს აქტივობის მუშაობისთვის. თქვენ არ უნდა შეეხოთ ამ ხაზს, დატოვეთ იგი უცვლელი.

მეორე ხაზი setContentView(R.layout.activity_main);უფრო დიდი ინტერესია. მეთოდი setContentView(int)მოიცავს კონტენტს მარკირების ფაილიდან. არგუმენტად ჩვენ ვაზუსტებთ ფაილის სახელს გაფართოების გარეშე საქაღალდედან რეს/განლაგება. ნაგულისხმევად, პროექტი მასში ქმნის ფაილს activity_main.xml. შეგიძლიათ გადარქმევა ფაილი ან შექმნათ თქვენი საკუთარი ფაილი სახელით კატა.xmlდა დააკავშირეთ იგი თქვენს საქმიანობასთან. შემდეგ კოდი ასე გამოიყურება:

SetContentView (R.layout.cat);

თქვენი კოდის სისუფთავის შესანარჩუნებლად, შეეცადეთ დაიცვან სტანდარტები. თუ თქვენ ქმნით მარკირებას აქტივობისთვის, გამოიყენეთ პრეფიქსი აქტივობა_ფაილის სახელისთვის. მაგალითად, მეორე აქტივობის მარკირება შეიძლება დასახელდეს activity_second.xml.