• ios için kendi uygulamanızı nasıl oluşturabilirsiniz. iOS Uygulamaları Oluşturma - Yeni Başlayanlar İçin Geliştirme

    Pekala, bize iPhone'umuz için ilk programınızı yazmanın zamanı geldi. Henüz XCode + iPhone SDK'yı yüklemediyseniz, . Ve böylece, Xcode'u kurduk ve yapılandırdık, başlayalım mı?

    Önce en basitini öğrenelim. Adımızı yazacağımız bir metin alanı ve selamlamada adımızın kaydedileceği bir düğmeye tıklayarak bir program oluşturalım. İlk programımız şöyle görünecek:

    İlk ve umarım son projemizi oluşturmuyoruz:

    Ardından, ne tür bir uygulama oluşturacağımız sorulacak. Panelin sol tarafında, iPhone işletim sistemi -> Uygulama ve merkezi pencerede proje tipini seçin Görünüm Tabanlı Uygulama. İlk programımızı arayalım, diyelim İlk Uygulama

    Sonuç olarak, önceden oluşturulmuş bir denetleyiciyle (programımızın ilk penceresi) bir proje oluşturuyoruz.

    Ana proje penceresi şöyle görünür:

    Xcode bizim için ilk denetleyiciyi yarattı, bunlar FirstAppViewController.h ve FirstAppViewController.m adlı iki dosya.

    FirstAppViewController.h dosyası bir başlık görevi görür (dolayısıyla kelime başlığından uzantı.h dosyasıdır) İçinde, FirstAppViewController.m ana dosyasında kullanacağımız değişkenleri ve yöntemleri açıklayacağız.

    Ve böylece, FirstAppViewController.h dosyasını açın ve iki işaretçi oluşturun:

    IBOutlet UILabel *kullanıcı adı;

    İlk değişken username adımızı yazacağımız bir metin etiketidir. nikField ismimizi okuyacağımız bir metin alanıdır.

    Bir bloğa yazmanız gerekir. @interface firstAppViewController: UIViewController()

    Ayrıca kendimizi tanıtmak için butona tıklandığında çağıracağımız bir metot oluşturacağız. Yöntemi setNik olarak adlandıralım:

    - (IBAction)setNik;

    Sonuç olarak, FirstAppViewController.h dosyamız şöyle görünmelidir:

    #içe aktarmak @interface firstAppViewController: UIViewController( IBOutlet UILabel *kullanıcı adı; IBOutlet UITextField *nikField;) - (IBAction)setNik; @son

    Şimdi FirstAppViewController.m dosyasına gidelim

    Buraya setNik metodumuzu ekleyelim. Satırdan sonra yazmanız gerekir. @uygulama ilkAppViewController

    - (IBAction)setNik( kullanıcı adı.metin = nikField.metin; }

    Burada bu method çalıştırıldığında nikField alanından gelen yazının kullanıcı adı metin etiketine yazılacağını belirtiyoruz.

    Ayrıca, kullandıktan sonra belleği bu işaretçilerden boşaltmamız gerekir. Bu, adı verilen bir yöntemle yapılır. anlaşmak

    - (geçersiz) anlaşma ( ; ; ; )

    Kullandığımız tüm işaretçileri şu biçimde ekliyoruz:;

    Şimdi, FirstAppViewController.xib arayüz dosyasını açın. Arayüz Oluşturucu arayüz düzenleyicisinde çalışır.


    Bileşen kitaplığından ihtiyacımız olan bileşenleri programımızın penceresine sürükleyip uygun şekilde düzenliyoruz. Ardından, küçük pencerede Dosya Sahibi'ni seçin ve bizi Bağlantı denetçisi menüsüne götüren Command+2'ye basın. Orada zaten kaydettiğimiz işaretçilerimizin bir listesini görüyoruz ve bunların sağında boş daireler var. nikField işaretçisinin yanındaki boş daireye tıklıyoruz ve bırakmadan metin alanına sürüklüyoruz. Fare imlecini üzerine getirdiğimizde etrafına bir dikdörtgen çiziyor ve bırakıyor. Böylece bu alanı nikField işaretçisine bağlamış olduk. Şimdi kullanıcı adı işaretçisi ile aynısını yapacağız ve onu takma adımızı görmek istediğimiz metne sürükleyeceğiz (benim resmimde bu metin %kullanıcıadı%). Biraz aşağıda setNik metodumuzu görüyor ve butonumuz ile ilişkilendiriyoruz. Ancak düğmeye getirip bıraktığınızda, İç Rötuş'u seçeceğiniz içerik menüsü çıkacaktır. Bu, düğmeye basıp bıraktığımızda bu yöntemin ateşleneceği anlamına gelir. Tam ihtiyacımız olan şey :)

    Pekala, kaydedin, Xcode'a geri dönün ve Oluştur ve Çalıştır'a tıklayın. Yaşasın, ilk programımız başladı :) Metin alanına tıklayın, bir klavye belirir, bir isim yazın. Ancak programımızda hala küçük bir dokunuş eksik. Bu, adımızı yazmayı bitirdiğimizde Bitti düğmesine basarak klavyeyi gizlemek içindir.

    Bunu yapmak için arayüz tasarımcısını tekrar açacağız, butonumuza tıklayın. Command+1 tuşlarına basın ve orada Metin Giriş Özellikleri bloğunu bulun. Birkaç açılır listeye sahiptir, ancak biz yalnızca en alttakiyle ilgileniyoruz: İade Anahtarı. Listeden Bitti'yi seçin ve bloğun en altında Dönüş Anahtarını Otomatik Etkinleştir'in yanındaki kutuyu işaretleyin. Ardından Command + 2 Connections Inspector'a gidiyoruz ve oradaki kelimeyi görüyoruz. temsilci. Yanındaki daireye tıklayın ve Dosyanın Sahibi bloğuna sürükleyin

    Şimdi FirstAppViewController.m dosyamıza dönüyoruz setNik metodumuzun ardından aşağıdaki kodu ekliyoruz:

    - (BOOL)textFieldShouldReturn:(UITextField *)theTextField ( ; EVET dönüşü; )

    Kaydedip çalıştırmaya çalışıyoruz (Command + R kombinasyonunu kullanabilirsiniz) Metin alanına adımızı yazmaya çalışıyoruz. Yazarken hangi klavyeye tıklanarak Bitti butonu çıkıyor ve kapanıyor. Şimdi butona tıklıyoruz ve işte, program bizi karşılıyor :)

    Ne kadar önemsiz görünüyor, sadece çok önemsiz yazdıklarını düşünün. Ve yıllar önce Delphi'ye ders verdiğimde, böyle bir örnek öğrendiğimde, bir düğmeye basarak ekranda bir şeyler yazıyordu, zaten farklı oyuncaklar yaptım. İlk tarayıcı oyunlarından biri olan Fight Club'ı hatırlıyor musunuz? Ben de eğlenmek için kendim için benzer bir şey yaptım ve her şey, az önce sizinle yaptığımızla tamamen aynı prensibe dayanıyordu. Öyleyse oynayın ve deney yapın!

    İşte proje arşivine başka bir bağlantı, onu indirebilir, açabilir ve birisinin başarılı olup olmadığını görebilirsiniz. Pekala, herhangi bir sorunuz varsa, yorumları yazın.

    Her şey etrafa bakmamla başladı ve hayallerimin arabasını göremeyince kendim tasarlamaya karar verdim.
    Ferdinand Porsche

    Hey Habr. Sizlere ilk iOS uygulamamı nasıl oluşturduğumu ve içinden neler çıktığını anlatmak istiyorum.

    Fikir

    Uygulama fikri kendiliğinden ortaya çıktı: Kendinizi kullanmaktan mutlu olacağınız bir şey yaratın. Sürekli not yazıyorum. Ne de olsa, her meşgul insanın gün içinde aldığı ve hatırlamaya değer belirli gerçekleri vardır. Ve herkes unuttuğu için (ve sorun değil!), sadece yazmaktan daha iyi bir çözüm yoktur. AppStore'da sunulan not alma uygulamalarıyla çalışırken her zaman bir tür rahatsızlık hissetmişimdir. Yönetimde aşırı karmaşıklık, gereksiz kategorilerin varlığı, bir yığın ek bilgi - tüm bunlar, uygulamanın ana işlevini yerine getirmesini engeller. Artı, bunların çoğu sadece çirkin görünüyor.

    Bu nedenle, tüm bahisleri basitlik ve rahatlığa koyarak bir konsept yaratmaya başladım. Tek bir not listesi içeren uygulama modeli. Hepsi bir arada, daha kolay ne olabilir? Bir şey çok değerli veya alakalıysa, üzerine bir etiket koymak gerekli değildir, sadece daha önemli bir notu listenin başına taşımak yeterlidir. Eski ve gereksiz girişler kademeli olarak azalacak ve daha sonra kullanıcı tarafından silinecektir.

    fonksiyonel

    Konsept üzerinde düşünüldükten sonra, ana işlevleri yazdım - yönetimde odaklanmak istediğim şeyler:

    Bu tür uygulamalar için oldukça standart işlevsellik, görüyorsunuz. Ama bu buzdağının sadece görünen kısmı, şeytan ayrıntıda gizlidir.

    Aletler

    Kodu Xcode'da yazmadan önce, Sketch vektör düzenleyicisinde uygulamanın görünümünü tamamen yeniden yarattım. Bu program, hızla düzen oluşturmak için harikadır. Bu uygulama için pek çok eklenti mevcuttur, bunların arasında Sketch Preview vardır - Skala Preview programı aracılığıyla çalışma yüzeyinin cihazda hemen görüntülenmesi. Tek yapmanız gereken ücretsiz Skala Preview programlarını bilgisayarınıza ve mobil cihazınıza indirip eklentiyi kurmak. Bundan sonra, istenen çalışma yüzeyini seçin, Command + P kombinasyonuna basın ve bir saniye içinde uygulamanın görünümü cihaza yayınlanır.

    Ayrıca uygulama, AppStore'da yayınlanmak üzere ekran görüntüleri oluşturmak için çok uygundur. Her ekran boyutu için farklı bir çalışma yüzeyi seti oluşturuldu, stillerin kullanımıyla birlikte biçimlendirme için harcanan süre minimuma indirildi. Ancak biraz sonra yayın hakkında.

    Gelişim

    Uygulamada, ilk çalıştırmada küçük bir öğretici görüntülemek için yalnızca iki denetleyici kullandım - biri doğrudan hepsi-hepsi-tüm notlar için, diğeri -. CoreData çerçevesini kullanarak veritabanı ile çalışmayı organize ettim.

    Temel işlevleri oluşturduktan sonra (not oluşturma, silme, düzenleme), bu işlevlerin her birini geliştirmeye karar verdim.

    Katılıyorum, iOS'ta metin düzenleme oldukça elverişsiz bir şekilde uygulanmaktadır. Bir kelimede hata yaparsanız, imleci istediğiniz konuma getirmek için öğesine dokunmalısınız ve parmağınızı ekrandan kaldırmadan seçilen alana girmeye çalışmalısınız. Ayrıca hatayı düzelttikten sonra imleci satırın sonuna geri döndürmeniz gerekir. Uygulamamda, imleci hareket ettirme mekanizmasını elden geçirmeye karar verdim: bir kelimede değişiklik yapmak için, metin görünümünü engellemeden klavye ile yazdığınız cümle arasındaki alanda kaydırmanız yeterlidir.

    Kaldırma ve yukarı taşıma animasyonlarını kendi başıma uygulamaya ve görsel eşliği gerçek hayata olabildiğince yaklaştırmaya karar verdim. Bir şey daha yüksek bir öncelik kazandı - sağa kaydırın ve not listenin en üstüne taşınır. Silmek için - sola kaydırın ve üstü çizili animasyon, silme işlemini tamamlamak için kaydırmayı ne kadar daha uzatmanız gerektiğini gösterecektir. Yanlışlıkla silinmesi durumunda - cihazı sallamanız yeterlidir ("Salla") ve not orijinal yerine geri dönecektir.

    Notu öne çıkarmak için, ana renk paletini oluşturmak için bir LongTapGesture ve uygulamanın üç ana rengini (beyaz, mavi ve kırmızı) kullandım.

    Gündüz ve gece temaları arasındaki geçişi otomatik yapmaya karar verdim - neden kimse güneşin gökyüzündeki konumuna bağlı olarak görünümü değiştirmeyi düşünmedi? Her şey çok basit - hava karardıktan sonra ve gün doğumundan sonra tema değişirken, kullanıcının not oluşturmaktan rahatsız olmasına gerek yoktur, çünkü uygulama her zaman otomatik olarak çevre koşullarına uyum sağlayacaktır.

    Adlandırma

    Uygulamanın adı, geliştirmenin en önemli parçasıdır, kullanıcının mağazada gördüğü ilk şeydir. Habré'de bununla ilgili var. Bir isim seçimine iyice yaklaşmaya karar verdim: Başlangıç ​​​​olarak, İngilizce'deki en popüler 1000 kelimenin bir listesini inceledim ve notlar için bir mobil uygulamanın adına uygun olacak her türlü kombinasyonu yazdım. , ayrıca 8-10 karakter içinde tutmak istedim. Ama aynı zamanda SuperNotes veya NotesPlus vs. adını seçmek istemedim, yeni bir şey istedim. kombinasyonu beğendim kızgın not, Urban Dictionary'de yanlışlıkla tökezledim:
    mad note - mükemmel, eğlenceli, şaşırtıcı, beklenmedik veya hayranlık uyandıran

    Slogan hemen ortaya çıktı: MadNotes - Tutkunuzu not edin. Halihazırda bir ana renk paletim olduğu için (beyaz, mavi, kırmızı), hemen uygun bir simge bulmaya karar verdim. Bu tür uygulamalar için logoların durumu içler acısı:

    Kağıda notlar bir kurşun kalem veya tükenmez kalemle yazıldığı için, bunu simgede göstermeye karar verdim - 45 derecelik bir açıyla döndürülmüş bir kalem. Şöyle çıktı:

    Sonuç

    Proje başlangıçta bir tasarım projesi olarak tasarlandığından, başvurumla tüm Ukrayna'yı kapsayan Ukrayna Tasarım Ödülleri: Dijital Tasarım kategorisinde En İyiler yarışmasına katılmaya karar verdim. Yarışmaya birkaç hafta kaldı ve bu süre zarfında Behance'te uygulamanın tüm ana işlevlerini görsel olarak gösterdiğim ve ayrıca bir video önizlemesi kaydettiğim bir yayın yapmayı başardım.
    Yarışmanın kazananları son ana kadar açıklanmadığından, kazananların eserlerinin sergisinde benim çalışmamı görmek inanılmaz güzeldi - jüri ana konsepti gördü ve takdir etti - minimalist ama işlevsel bir not alma uygulaması .


    Uygulama birkaç aydır AppStore'da bulunuyor, bu süre zarfında altı güncelleme yaptım ve kodu Swift'te yeniden yazdım. En son sürüm (1.2), iCloud ile senkronizasyon ekledi, böylece notlar zaten buluta taşındı.

    teşekkür ederim dikkat
    tutkunu not et

    Virus Strike'ın geliştiricisi Neil Ferguson, iPhone için bir oyun da dahil olmak üzere herkesin bir oyun yaratabileceğine inanıyor. iPhone'lar için programlama deneyimi olmayan, iOS uygulamasını sıfır bütçeyle kendi başına geliştirdi. Kolay değil, ancak gerekli becerilere sahipseniz oluşturma başarılı olacaktır.

    Elbette Neil deneyimli bir uzmandır ve deneyimi Virus Strike'ın yapılmasına yardımcı olmuştur, ancak görevi başarıyla tamamlamak için bilgisayar bilimcisi olmanız gerekmediğine inanıyor. Aşağıdaki ipuçlarını takip etmeniz yeterlidir.

    1. Kalite fikri ve doğru araçlar

    Orijinal amacı düşünün ve ardından benzer uygulamalar için AppStore'u kontrol edin. Bu, birkaç saatten birkaç güne kadar sürebilir.

    Deneyimli bir programcı değilseniz, iOS için özel olarak tasarlanmış, programlama bilgisi olmadan fikir oluşturmanıza olanak tanıyan, size özel sanal kitaplıklar (örneğin GameSalad) vardır.

    Ek olarak, Flash geliştirmenin Objective C'yi ("elma" platformunun standart dili) öğrenmekten çok daha kolay olduğunu göreceksiniz. Flash uygulamalarının hayranları için, yeni başlayanlar için birçok talimat var.

    Hala geleneksel yönde geliştirmeye karar verirseniz, kodlamayı kolaylaştırmak için hazır çerçeveler kullanmalısınız. Yerleşik fizik motoru size çok fazla zaman ve emek kazandıracak!

    2. iOS'a özgü özellikler ve düşünceli konsept

    AppStore'daki en başarılı iOS eğlenceleri, iPhone için özel olarak tasarlanmış ve özelliklerini (ör. dokunmatik ekran, ivmeölçer vb.) kullananlardır. Başarılı bir oyun veya oyunlar oluşturmak için, hangi iPhone'un benzersiz kontrollerinin uygulamanızda büyük fark yaratabileceğini düşünün. Orijinalliğe bahis yapın!

    Temel mekaniği (çizgi sanatı, renk eşleştirme ve motor) somutlaştırmanın yanı sıra, bir sonraki önemli adım, konsepti karmaşık ama erişilebilir bir şema halinde yapılandırmaktır.

    Eğlencenin her aşamasının süresi ve karmaşıklığı hakkında fikir sahibi olmak önemlidir. Zor olmalılar ama aynı zamanda adil olmalılar - katılımcılar ilerlemeyi hissetmelidir, aksi takdirde ilgilerini kaybederler. Tamamlanan her tur için bazı sanal ödüller kendilerini haklı çıkarıyor.

    3. Ses efektleri

    Ses efektlerini bulabileceğiniz birçok kaynak (örneğin freesound.org) vardır. Bu süreç oldukça sıkıcıdır ve sübjektif olarak sinir bozucu sesler duyabileceğiniz için başkalarının fikirlerini sorarsanız daha iyi olur. Ses düzenleme için Audacity gibi ücretsiz programlar var.

    4. Ücretsiz kılavuzlar ve dış kaynak kullanımı

    Virus Strike, daha önce Objective C ile hiç ilgilenmemiş olan Ferguson'un iOS'a ilk girişiydi.Çevrimiçi öğreticiler ve birçok yararlı öğretici çok yardımcı oldu. Bir oyun oluştururken, developer.apple.com gibi benzer kaynakları da kullanabilirsiniz.


    Aslında kişisel olarak bir programcı değilseniz, ana geliştirmeyi daha deneyimli birine emanet edebilirsiniz. Serbest borsada bir sipariş oluşturabilir veya bir dış kaynak şirketi ile iletişime geçebilirsiniz. Hatırlanması gereken en önemli şey, beklenen sonucun ayrıntılı bir açıklamasının, istediğinizi elde etme olasılığını artıracağıdır.

    5. Video, pazarlama stratejisi ve referanslar

    Kullanıcı testi, sunulan oyuna hızlı bir şekilde alışmaya ve anlamaya yardımcı olan ve ayrıca uygulamanın PR'ına katkıda bulunan bir eğitim videosu oluşturma ihtiyacını doğrular. Gazeteciler için bir dakikalık video izlemek, doğrudan uygulamada neyin ne olduğunu oturup anlamaya çalışmaktan daha kolaydır.

    Projeniz ne kadar iyi olursa olsun, tanıtım olmadan kimsenin onu bulması pek olası değildir. Oyununuzu tanıtmak için özel web siteleri için inceleme yazmak için çok zaman harcamaya hazırlanın.

    Yüksek kaliteli bir basın bülteni hazırlayın (bunu kendiniz yapabilir veya konuyu anlayan bir metin yazarı tutabilirsiniz) ve popüler portallara yerleştirin. Yayın için ödeme yapmanız gerekse bile, bu tür masraflar hızla karşılığını alacaktır, çünkü büyük hizmetler, makaleleri oradan yeniden basan (genellikle tam olarak) yüzlerce başka kaynak için bilgi kaynağıdır. Bu kadar basit bir şekilde, iyi bir reklam alacaksınız.

    Size geliştirme bitmiş gibi görünse bile, diğer insanlardan geri bildirim almadan, kullanıcı arayüzünün erişilebilirliği ve bir bütün olarak mekanizma ile ilgili gerçek durumu değerlendiremeyeceksiniz. Arkadaşlarınızdan gelen dürüst geri bildirimlere güvenmeyin ve neyi ve nereye tıklayacaklarını önermeyin - her şeyi anlamalarının kolay olduğundan emin olun. Süreci izleyin - böylece tüm olası eksiklikleri hızlı bir şekilde belirleyebilirsiniz.

    Android veya iPhone için bir uygulama nasıl oluşturulur?- bu tür sorular yalnızca web geliştiricileri tarafından değil, aynı zamanda küçük işletme sitelerinin sıradan sahipleri, blog yazarları tarafından da giderek daha fazla sorulmaktadır.

    Bu inceleme dikkate almayı öneriyor Android ve iPhone uygulamalarının hızlı ve kolay bir şekilde oluşturulması için yapıcılar olan. Aynı zamanda, kullanıcıdan programlama becerileri veya başka özel BT bilgisi gerektirmez. Bu tür uygulamalar her tür iş için vazgeçilmezdir - hedef kitleyi genişletmek ve müşteri çekmek için harika bir yoldur.

    Böylece, uygulama geliştirme incelemesinde dikkate alınanların tümü şu slogan altında birleştirilebilir: basit, hızlı ve programsız!

    özgür sitenizin içeriğini Android uygulamasına dönüştürüp Google Play üzerinden dağıtmanızı sağlayan web servisi. Ayrıca oluşturulan aplikasyonlar hem satılabilir hem de reklamı yapılabilir.
    Üç tür içerikten sınırsız sayıda Android uygulaması oluşturabilirsiniz: bir web sitesi, basit bir html sayfası ve bir YouTube videosu. AppsGeyser, bir Android uygulaması oluşturmak için basit ve sezgisel bir şablon sihirbazı kullanır.

    AppsGeyser web siteleri: http://www.appsgeyser.com, http://www.appsgeyser.ru

    özgür mobil uygulamaların hızla oluşturulması için çevrimiçi hizmet. TheAppBuilder, iş, etkinlikler, eğitim, müzik, spor ve daha fazlası için tasarımcı ve standart şablonları kullanarak uygulamalar oluşturur. her ay Oluşturulan uygulamada üçüncü taraf reklamlarının görüntülenmesini devre dışı bırakabilirsiniz. TheAppBuilder, bir Android uygulaması ve Windows Mobile oluşturmanıza olanak tanır.

    TheAppBuilder web sitesi: http://www.theappbuilder.com

    kullanıcıların internette birkaç tıklamayla kendi mobil uygulamalarını oluşturup yayınlamalarına olanak sağlayan çevrimiçi bir hizmettir. Appsmakerstore platformu tarafından desteklenen mobil uygulamalar oluşturur HTML5, iTunes, Android Market, Blackberry Marketplace, Windows Marketplace ve Facebook herhangi bir derin teknolojik beceri olmadan. Bu kadar 6 farklı platform için 1 uygulama. Appsmakerstore, Rusça ve Ukraynaca da dahil olmak üzere 23 dilde sunulmaktadır.

    Appsmakerstore'un özelliği, belirli sektörler için (örneğin, hukuk hizmetleri, gece kulüpleri, restoran ve kafeler, ticaret, güzellik salonları vb.)

    • Kendin Yap - ayda 9,78 dolar.
    • "Sizin için bir başvuru yapıyoruz" - 249 $
    • "Bayi" - sitede ayrıca bulmanız gereken özel bir fiyat.

    Her zaman tüm planlara dahildir:

    • Sınırsız içerik değişikliği ve uygulama güncellemesi.
    • Yeniden yayınlamak zorunda kalmadan uygulama içeriğini iTunes ve Google Play'de güncelleyin.
    • Kullanıcılara sınırsız sayıda push bildirimi gönderin.
    • Tüm sistem güncellemelerini otomatik olarak alın ve kullanın.
    • Sunucularımızda güvenli barındırma.
    Appsmakerstore web sitesi: http://appsmakerstore.com

    küçük işletmeler için ücretli bir çevrimiçi mobil uygulama oluşturucudur (iPad, Android, HTML5). Özellikler arasında coğrafi konum, mesaj alma ve gönderme, alışveriş sepeti, bildirimler, sosyal ağlarla entegrasyon, menü hakkında bilgi gönderme, bir dizi hizmet, yaklaşan etkinlikler vb.

    Bu hizmet aşağıdaki planlarla temsil edilmektedir:

    • "Mobil Site" - ayda 29 ABD doları.
    • "Mobil uygulama" - ayda 59 ABD doları
    • « Beyaz etiket Partner» müşterileriniz için uygulamalar yaratıyor - sitede ayrı olarak öğrenmeniz gereken özel bir fiyat.
    Biznessapps web sitesi: http://www.biznessapps.com

    5.Appglobus

    Appglobus kullanıcıların App Store ve Google Play'de kendi uygulamalarını oluşturmasına ve yayınlamasına olanak tanıyan ücretli, Rus çevrimiçi mobil uygulama oluşturucularından biridir.

    Geliştirme kalitesini önemli ölçüde artıran ve programlama becerileri olmadan bile HTML5, iOS, Android'de mobil uygulamalar oluşturmayı mümkün kılan Ionic Framework'ün yeni tasarımını ve özelliklerini kullanır.

    AppGlobus şu anda Rusça dahil 8 dilde sunulmaktadır.

    AppGlobus.com aşağıdaki paketleri sunar:

    • STARTAP - 900 ruble/ay
      • Uygulamalar: HTML5/Android, yönetici paneli, mağaza, zorlama sınırı yok, yükleme sınırı yok, reklam yok.
    • TEMEL - 1500 ruble/ay
      • Hem Android hem de iOS için uygulamalar, yönetici paneli, mağaza, zorlama limiti yok, yükleme limiti yok, reklam yok.
    • STÜDYO - 2000 ruble / ay
      • Uygulamalar: Windows/Android/iOS, yönetici paneli, mağaza, zorlama sınırı yok, yükleme sınırı yok, reklam yok.
    • PRO - 45.000 ruble / tek seferlik
      • Uygulamalar: Windows/Android/iOS, özel geliştirme, App Store ve Google Play'e kendimiz yerleştireceğiz, kaynak kodunu vereceğiz
    AppGlobus web sitesi: http://appglobus.com/

    — iş veya kişisel kullanım için kendi mobil uygulamanızı oluşturmak için ücretli bir çevrimiçi hizmet. Özel bir beceri gerekmez. Çevrimiçi mağazalar gibi küçük işletmeler için çok uygundur. Uygulamanızı oluşturmak sadece 5 dakikanızı alır - sadece gerekli modülleri seçmeniz ve tasarlamanız gerekir. İngilizce ve Rusça versiyonları var.

    My-apps.com şu paketleri sunar:

    • Başlangıç ​​- 599 ovmak /ay
      • sadece Android için uygulamalar, tasarımcıya erişim, ücretsiz şablonlar ve uygulama simgeleri, 48 saatte bir içerik güncellemeleri, 2 ayda en fazla 1 kez mağazalarda uygulamanın kaynak kodunun güncellemeleri.
    • Işık - 990 ovmak /ay
      • iOS için ve iOS için uygulamalar, tasarımcıya erişim, ücretsiz şablonlar ve uygulama simgeleri, temel uygulama ekran görüntüleri, push bildirimleri - ayda 1, içerik güncellemeleri 24 saatte bir, mağazalarda 2 ayda 1 kez uygulama kaynağı güncellemeleri.
    • Standart - 2490 ruble. /ay
      • hem Android hem de iOS için uygulamalar, tasarımcıya erişim, ücretsiz şablonlar ve uygulama simgeleri, temel uygulama ekran görüntüleri, Skype desteği, Push bildirimleri - ayda 10, içerik güncellemeleri 12 saatte bir, mağazalarda ayda bir uygulama kaynağı güncellemeleri.
    • İşletme - 9890 ovmak. /ay
      • hem Android hem de iOS için uygulamalar, tasarımcıya erişim, ücretsiz şablonlar ve uygulama simgeleri, temel uygulama ekran görüntüleri, Skype ve e-posta desteği, kişisel yönetici, Push bildirimleri - ayda 50, anında içerik güncellemeleri, mağazalarda uygulama kaynağı güncellemeleri - sınırsız.
    • VIP - 3999 ruble. /ay + 150 000 ovmak kurulum ödemesi

      • hem Android hem de iOS için uygulamalar, tasarımcıya erişim, ücretsiz şablonlar ve uygulama simgeleri, temel uygulama ekran görüntüleri, Skype ve e-posta desteği, kişisel yönetici, Push bildirimleri - sınırsız, içerik güncellemeleri - anında, mağazalarda uygulama kaynağı güncellemeleri - kısıtlama olmadan.
    My-apps.com web sitesi: http://my-apps.com

    bir platform sağlar kendin Yap” iPhone/uygulamalar oluşturmak için , ki bu da programlama becerisi gerektirmez. Bu hizmet, her kuruluşa mobil (iPhone, iPad, Android) uygulamaları ve yayınları oluşturmanın kolay bir yolunu sunar. Müşteriler kendi kataloglarını, el ilanlarını, broşürlerini, raporlarını, özetlerini vb. oluşturabilir ve SaaS çözümünü kullanarak teslim edebilirler. İngilizce ve Rusça versiyonları var.

    iBuildApp şu paketlerde sağlanır:

    • İşletme (ayda 2.400 ruble) — 3.000 yükleme, sınırsız mobil site görüntüleme, yerleşik reklam yok, iTunes ve Google Play'de uygulama yayınlama.
    iBuildApp web sitesi: http://ibuildapp.com

    — uygulama geliştirme için çevrimiçi hizmet (iPhone, iPad, Android). Birçok uygulama şablonundan birini temel alan bir uygulama oluşturmanıza olanak tanır. Uygulamanın kullanıcı arabiriminde oluşturduğunuz öğeler, e-posta, SMS mesajı gönderme, Facebook ve Twitter servislerine gönderme gibi işlevlerle ilişkilendirilebilir.

    • Geliştirici - ayda 33 ABD doları. (sadece 1 uygulama oluşturulabilir)
    • Profesyonel - ayda 79 dolar.
    • Prim - ayda 129 ABD doları.
    • Girişim- Fiyat ayrıca sorulmalıdır..

    Tüm paketler şu platformları destekler: IOS (iPhone/iPad) & Android (Telefon/Tablet)

    Viziapps web sitesi: http://www.viziapps.com

    iOS, Android ve Windows Phone için uygulamalar oluşturmanıza izin veren çevrimiçi bir düzenleyicidir. Kullanımı çok basit: hazır parçalardan kendi programınızı oluşturabilirsiniz. AppsBuilder deneyimsiz kullanıcılar için daha basit ve anlaşılır olmaya çalışsa da programcılar için bazı özellikler eklenmiştir: örneğin, oluşturulan uygulamaları kendi Java betiklerinizle tamamlayabilirsiniz.

    Her yerde 30 günlük ücretsiz deneme süresi olan üç ücretli paket vardır:

    • Başlangıç ​​(ayda 49 Euro) -1 uygulama.
    • Normal (ayda 199 Euro) - 5 uygulamaya kadar.
    • Ölçeklenebilir (ayda 249 Euro'dan itibaren) - 5'ten fazla uygulama.
    AppsBuilder web sitesi: http://www.apps-builder.com

    Bu, bir uygulama oluşturma konusundaki ikinci deneyimim. İlkinden ayrıntılı olarak şurada bahsetmiştim - orada yatırımları çekmek, geliştiricileri seçmek vb.

    Geliştiricilerin kollarını bükmesine ve cehaletten kâr elde etmesine olanak tanıyan programlama becerilerinin olmaması beni büyük ölçüde hayal kırıklığına uğrattı. Bu nedenle, uygulama oluşturmak ve programlayamamak, geliştiricilerin bildiği ve sıklıkla kullandığı çok ciddi bir bağımlılığa girmek anlamına geldiğinden, kodlamayı kendim öğrenmem gerektiğine karar verdim.

    Eğitim

    Genel olarak karar verildi ve Ocak 2016'da işe başladım. Mesleğim gereği uygulamalı bilgisayar bilimcisiyim ama aslında Pascal ile çalışmanın en temel becerileri dışında üniversiteden hiçbir şey almadım ve bu yaklaşık beş altı yıl önceydi. Basit siteler oluştururken HTML ve CSS ile de biraz deneyimim oldu, ancak bu, uygulama oluşturmada pek yardımcı olmadı. Bu yüzden en temelden başladım. Eski ve neredeyse tamamen unutulmuş Pascal'dan. Ücretsiz Pascal düzenleyicisini indirdim http://freepascal.ru/ basit toplama ve çıkarma programlarıyla başlayan bir ders kitabı buldum. Toplamda, hafızamı yenilemek için günde iki ila üç saat olmak üzere yaklaşık iki haftalık ders aldı.

    Pascal'ın derinlemesine incelenmesi daha fazla pratik gerektiriyordu, bunun için Abrahamyan'ın 1000 problemli Pascal problem kitabını (PDF) buldum.

    Eğitimin ilk aşamasının bitmesini beklemeden bir an önce uygulama yazmaya başlamak istediğim için Pascal'da problem çözmeye paralel olarak Brian'ın “The C Programming Language” kitabına göre C çalışmaya başladım. Kernighan ve Dennis Ritchie (PDF). Burada ayrıca, bu kitabın da Rusça olmasına rağmen, onu orijinal dilinde inceledim, çünkü genel olarak İngilizce'yi iyi bilmediğim ve bence bu, dahil olan herhangi bir kişi için oldukça önemli olduğunu söyleyeceğim. programlama. Kural olarak, İngilizce'de belirli bir programlama dilinde Rusça'dan çok daha fazla eğitim materyali ve basitçe materyal vardır. AppStore ile çalışmak, uygulamayı indirmek, kullanım koşulları ve daha fazlası, tüm bunlar da çoğunlukla İngilizcedir. Yani teknik literatür okuma seviyesinde İngilizcenin bir programcı için zorunlu bir beceri olduğunu söyleyebiliriz.

    C'de programlama için, ilk projeden beri bir Mac'im var. Xcode'da C için sorunları çözdüm. Pascal ve C'nin sözdizimindeki farkı daha iyi anlamak için, Abrahamyan'ın aynı problem kitabından problem çözmeye başladım, ama zaten C'de. İki haftalık günlük 4-5 saatlik derslerden sonra Pascal'da yaklaşık 300 ve C'de bunun yarısını çözebildim ve ayrıca yaklaşık 100 sayfalık bir C kitabı okudum. Aynı zamanda, bir İngilizce hizmetini öğrenme sürecine bağlamaya karar verdim - Tree House.

    Bu, HTML ve CSS'de uzmanlaşmamda bana çok yardımcı olan bir öğrenme hizmetidir. Abonelik ücreti ayda 25 dolardan başlıyor. Ama bence haklı. Hizmet, Java, C#, Python, Swift ve diğerleri dahil olmak üzere çeşitli programlama dilleri hakkında eğitim materyalleri sağlar. Eğitim, çeşitli pratik görevler eklenerek videodan videoya aşamalar halinde gerçekleştirilir.

    Tüm videolar çok görsel, ilginç, sürekli güncelleniyor ve ister Nesne Yönelimli Programlamanın özü, ister Xcode'da çalışma ilkeleri olsun, tüm önemli noktaları ayrıntılı olarak çiğniyor. Doğal olarak C ve Objective-C ile IOS uygulamaları oluşturmaya yönelik eğitimleri seçtim.

    Bu yüzden eğitimim aynı anda tüm cephelerde hareket etmeye çalışmak gibiydi. Programlamanın temellerini olabildiğince sağlam bir şekilde oturtmak için Pascal'da problem çözme alıştırması yaptım, Objective-C'yi daha iyi anlamak için C çalıştım ve en sonunda bir an önce IOS için yazmaya başlamak için Objective-C'yi öğrendim.

    Böylece, günde ortalama 4-5 saat olan günlük derslerin bir ayı daha geçti. Bir yandan, aşamalar halinde hareket etmek, örneğin önce Pascal ile, sonra C ile uğraşmak ve ardından Objective-C'ye geçmek muhtemelen daha mantıklı olacaktır, ancak aslında, sonuçta beni kurtaran her şeyi örtme girişimiydi. Pascal ve C'deki sorunları çözmeye değil, doğrudan Ağaç Ev eğitim programından uygulamalar oluşturmaya giderek daha fazla dikkat etmeye başladığımdan çok zaman geçti. Çok daha ilginçti ve aslında Abrahamyan'ın problem kitabındaki görevlerin yanı sıra C üzerine Kernighan ve Ritchie Kitaplarından alınan materyallerin temelleri anlamak için iyi olduğunu, ancak genel olarak gerçek oluşturma sürecinden oldukça uzak olduğunu gösterdi. uygulamalar. Sonuç olarak, eğitimimin üçüncü ayının sonunda Pascal ve C'yi uygulamayı tamamen bıraktım. Bunun yerine, Objestive-C ile ilgili Ağaç Ev eğitimlerine ve Xcode'da uygulama oluşturmaya odaklandım.

    Oyun oluşturma. Fikir

    Öğreticiden birkaç basit uygulama oluşturduktan sonra, sonunda daha ilginç bir şey yapmaya hazır olduğuma karar verdim. Aklıma potansiyel olarak ilginç bir şey geldiğinde periyodik olarak doldurduğum fikir listemi açtıktan sonra, "Yolsuzlukla Mücadele" konulu bir oyun yaratma fikirlerine gözlerimi kapattım. Fikrin anlamı, yozlaşmış görevlilerin düşman gibi davranması, etkisiz hale getirilmeleri gerekiyor ve ardından oyun dünyası daha iyi hale geliyor. Yolsuzluk kötüdür ve ne kadar az olursa çevre o kadar iyi olur gibi bir alt metin de vardır. Konunun Rusya ile ilgili olduğu ve benzer bir fikre sahip başvurular bulamadığım için, karar verdim ve onu en iyi nasıl uygulayacağımı düşünmeye başladım.

    Hâlâ nasıl oyun yapılacağına dair hiçbir fikrim olmasa da, birkaç eğitici videonun işi göreceğini düşündüm. Öncelikle oyunun genel olarak nasıl görüneceğine karar vermek gerekiyordu. Küçük bir beyin fırtınasından sonra, en iyi seçeneğin, kahramanın her seviyede soldan sağa koştuğu ve onu karşılamak için çeşitli rakipler ve engellerin koştuğu 2 boyutlu bir oyun olacağına karar verildi. Bu seçenek bana oyun fikri için kabul edilebilir göründü ve uygulanması çok zor değil.

    Konsept onaylandıktan ve kısaca anlatıldıktan sonra oyunların nasıl yaratıldığını anlamak gerekiyordu. Videoyu Google'da ararken, hemen Flappy Bird'e benzer bir oyunun nasıl oluşturulacağını söyledikleri videoya rastladım ( Youtube) Burada önemli bir soru ortaya çıktı. Apple'ın 2014'te yeni bir programlama dili yayınladığı bir sır değil - Objective-C'den pek çok güzel şeyi emen ve onun mantıksal devamı haline gelen Swift.

    Karşıma çıkan video, Flappy Bird'ün Swift'e özel olarak oluşturulmasından bahsediyordu ama Objective-C için aynısını basit ve anlaşılır bulamadım. Tereddüt etmeden, geleceğin hala Swift'te olduğuna ve özellikle aynı Ağaç Ev'de onu incelemek için mükemmel materyaller olduğu için geride kalmamamın daha iyi olduğuna karar verdim. Sonunda Swift'i öğrenmek, sözdizimini ve Objective-C'den temel farkları anlamak için ara verdim. Günde ortalama 8 saat olan bir ders haftası daha geçti. Swift'in temel eğitimlerini gözden geçirdim ve sonunda bir Flappy Bird yaratma konusundaki videoda ustalaşmaya hazır olduğuma karar verdim. Birkaç gün içinde bunu oluşturabildim:

    Sprite Kit motoruyla çalışmaya ilişkin temel bir anlayışla, sonunda uygulamam üzerinde çalışmaya devam edebildim.

    Konsept

    Başlangıçta, en basitini yapmayı planladım - 3 seviyeli kayan arka plan, animasyonlu kahraman, silah, zıplama yeteneği ve atış yeteneği. Bu gerekliydi çünkü Sprite Kiti ile çalışmayla ilgili en genel fikirlerin dışında hiç deneyimim yoktu, çok basit bir şeyle başlamam gerekiyordu. Tıklamalar nasıl düzeltilir ve kahraman atlamaları nasıl yapılır, arka planda nasıl kaydırılır, atış anında mermiler nasıl oluşturulur vb. Onlarca hatta yüzlerce soru vardı. Ve herkes için çözüm her zaman aynı olmuştur: Google. Neyse ki, internette Swift'te oyun oluşturmaya ilişkin çok sayıda farklı materyal var (maalesef çoğunlukla İngilizce), sahip olduğum belirli soruları çözme örnekleri sağlıyor. Stack Overflow Soru-Cevap hizmeti de harika ve paha biçilmez bir yardımdır.

    Onun yardımıyla tüm soruların %70'ini çözebildiğimi düşünüyorum. Ayrıca Apple belgelerine de başvurdum, ancak oldukça nadiren. Belki vakaların% 10'unda, maksimum ve sonra başka seçenek olmadığında.

    Neredeyse tüm zamanımı günde 8-10 saat programlamaya adadığım yoğun bir haftadan sonra şunu yaratabildim:

    Bacaklarını sallayabilir (animasyonu Photoshop'ta kendim çizdim), zıplayabilir ve karakteristik bir sesle bir pompalı tüfekle ateş edebilir, aynı zamanda arka plan arka planda kayıyordu. Bu başlangıçtı)

    Prototip

    Bu eskiz, gelecekteki oyunumun mekaniği hakkında çok şey anlamamı sağladı ve konseptin doğru olduğundan emin olarak, bir sonraki adım olarak normal bir tasarımın yanı sıra ateş edebilen düşmanlar eklemeye karar verdim. Başlangıçta, tüm tasarımı (arka plan, kahraman ve düşman animasyonları, öğeler vb.) bir serbest yazara yaptırmayı planladım, çünkü bu benim kendi başıma yapamadığım tek şeydi. Ama sonra Envato Market web sitesini hatırladım: http://market.envato.com/, burada müzik, web sitesi şablonları, sunumlar vb. satın alırdım.

    Sitede listelenenlere ek olarak, uygulama oluştururken son derece gerekli olan her türlü animasyon, doku, ses ve diğer şeylerden oluşan geniş bir seçim var. Fiyatlar da bence çok uygun. Örneğin, seçtiğim ana karakterin animasyon seti, çeşitli nesneler (madeni para, elmas vb.) Şeklindeki bonuslara ek olarak, ateş etme, koşma, zıplama, ölme gibi 8 animasyon içerir. Açık.

    Bu seti 7 dolara aldım. Tek nokta, onlardan satın alınan malların farklı lisanslara tabi olmasıdır. Örneğin bazıları, ürünün sınırsız ücretsiz dağıtım için yalnızca bir üründe kullanılmasına izin verir, diğerleri, amacı aynı sınırsız ücretsiz dağıtım olan üçüncü taraflara yeniden satılmasına izin verir, örneğin müzik için olduğu gibi diğerleri, yalnızca bir kişiye dağıtıma izin verir. sınırlı sayıda dinleyici vb. Bu lisansların maliyeti farklıdır ve genellikle 4-5 kat farklılık gösterebilir.

    Ancak kahramanı ayrı bir ürün olarak satmayacağım için sınırsız ücretsiz dağıtım lisansı benim için yeterliydi.

    Genel olarak bir kahraman, silahlar, düşmanlar ve arka plan için gereken her şeyi elde ettim. Bu formdaki arka planın kendisi satılık değildi.

    Bu, birkaç düzine farklı nesneden - bir çit, asfalt, çukurlar, çöp yığınları vb. - oluşturulan Photoshop'taki çalışmamın sonucudur. Genel olarak, oluşturulması birkaç gün sürdü. Gelecekte, her seferinde ihtiyacım olan bir şeyi satın alırken Envato'ya 10 kez baktım.

    Sonra olağan, bir yandan rutin ama aynı zamanda çok ilginç işler geldi. Adım adım, ortaya çıkan bazı sorunları çözdüm, yeni işlevler ekledim, daha önce yazılmış gibi görünen kod parçalarını yeniden yazdım ve bunları kısaltmak, optimize etmek veya başka bir şekilde iyileştirmek, hataları düzeltmek vb. için bir seçenek buldum. Tabii şimdi böyle bir uygulama yazsaydım her şeyi iki kat daha hızlı yapardım ama o zamanlar kesinlikle her şey benim için yeniydi ve daha doğru çözümler bulmak için çok zaman harcamam gerekiyordu. İki aylık yoğun bir çalışma sürdü ve tasarlanan prototip sonunda hayata geçirildi.

    5 silah, sağlık paketleri, nesneler, düşmanlar ve çok daha fazlasıyla hazır bir seviyem vardı. Sonra, neyin eksik olduğunu anlamak için arkadaşlar arasında test etmeye ve beyin fırtınası yapmaya karar verdim. Düzeltmeler ve eklemeler sırayla yazıldı. O kadar çok ki, tahminlerime göre, kesinlikle altı ay daha oyun üzerinde çalışacaktım. Birkaç gün boyunca her şeyi düşündüm ve sonunda gerçekten ihtiyaç duyulanların bir listesini çıkardım ve geri kalan her şeyin üstünü çizdim ve uzay endüstrisinden bir zamanlar duyduğum bir yöntemi kullanmaya karar verdim. Sonuç olarak, fırlatmadan önce belirli bir noktadan itibaren rokette herhangi bir değişiklik ve iyileştirme yapılması yasaklandı. Aksi takdirde, sonsuza kadar gelişebilirsiniz.

    Oyunun sonuçlandırılması

    Sonra düşmanların tasarımı sorunu vardı. Toplamda 6 tipim var - 5 basit düşman ve bir patron + dürüst bir vatandaş. Karakterlerin daha gerçekçi olmasını istediğim için tüm bu karakterlerin çizilmesini emretmeyi planladım. Freelance.Ru'ya gittim ve her biri için 18 animasyon (8-25 kare) içeren 5 karakterlik bir reklam yayınladım. Çok fazla animasyon vardı çünkü standart koşma, ateş etme, tutuklama, ayakta durma vb. İsmini verdiğim güvenilir bir serbest meslek sahibinden en ucuz maliyet yaklaşık 40 bin ruble ve 1 aylık çalışmaydı. Bana biraz pahalı geldi ve tekrar Envato'ya döndüm. Neyse ki site, aynı tasarımcıdan farklı karakterlerden oluşan bir koleksiyon yükledi.

    Koleksiyonundaki periler ve bir dizi animasyon ortalama 15 dolara mal oluyor. En önemlisi, sprite arşivi, Spriter programı için dosyalar içerir.

    Sprite'ı bu programda açtıktan ve biraz anladıktan sonra (öğrenmesi çok kolay), farklı storyboard'larla karakterleriniz için kesinlikle her türlü animasyonu yapabilirsiniz. Genel olarak Envato'daki tüm karakterleri düşündüm ve satın aldım, ardından bunları kendi başıma işledim, gerekli animasyonları ekledim ve uygulamaya yükledim. Dokularla çalışmak son derece sıkıcı ve monotondur. Oluşturulan animasyonu Spriter programından yüklemem, ardından Photoshop'ta işlemem (genişletmek, boyutları ayarlamak), ardından sıkıştırmak, yeniden adlandırmak, resimleri 1x, 2x, 3x yapmak gerekiyordu. Tüm animasyonları işlemek en az bir ayımı aldı. Tam bir aylık monoton ve monoton çalışma, neyse ki bu işe bir asistan bağlayabildim. Ama öte yandan, tüm süreci anladım, kendime istediğim animasyonları yaptım, onları gerektiği kadar yeniden yaptım.

    Dokular üzerindeki çalışmalara paralel olarak oyunun aşamalı olarak geliştirilmesine devam ettim. İki aydır devam eden çalışmanın ardından nihayet tünelin ucundaki ışığı gördüm. Ama ne yazık ki, diğer şeyler artı yaz biriktiği için neredeyse iki ay boyunca işi bırakmak zorunda kaldığım ortaya çıktı ve genel olarak proje askıya alındı. Daha sonra Ekim ayı başlarında işe döndüm. Çok az şey kaldığını ummama rağmen, aslında daha önce deneyimsizliğim nedeniyle şüphelenmediğim sorunlar önümde belirmeye başladı.

    İlk olarak, png dokularımı bu çevrimiçi hizmeti kullanarak sıkıştırmış olmama rağmen: http://compresspng.com/ru/, bu, uygulama çalışırken daha az RAM kaplamaya başlamalarına yol açmadı. Resmin boyutunun, onun için gerekli RAM'in boyutuna eşit olmadığını öğrenmenin zamanı gelmişti.

    İkinci olarak, bellek sızıntılarının harika dünyasını, onları izlemek için Xcode araçlarını ve "güçlü referans döngüsünün" tüm "cazibesini" keşfettim. Oyunumu araçlardan geçirdikten sonra yaklaşık 3 buçuk bin sızıntı buldum.

    Üçüncüsü, oyunum için bir karakter için 180x180'lik standart doku çözünürlüğünün aslında aşırı derecede büyük olduğunu fark ettim ve kalitede herhangi bir bozulma olmadan tüm animasyonları 117x117 çözünürlükte tamamen yeniden yapabilirim. İlginç bir şekilde, animasyonları oluştururken kaynak dosyaları 360x360 çözünürlükte bırakmadığım için endişelendim. Sahip olduğum 2x resmin boyutu sırasıyla 180x180 olduğundan, anladığım kadarıyla 3x resmin 360x360 olması gerekiyordu ama onları cehaletten yapmadım ve ortaya çıktığı gibi, şükürler olsun, çünkü sonunda onlar gerek yoktu.

    Dördüncüsü, tüm animasyonlar ve nesneler eklendiğinde oyunum gözle görülür şekilde yavaşlamaya başladı. Animasyonların, seslerin ve diğer şeylerin optimizasyonu ve önceden yüklenmesi için çok çalışma gerekiyordu.

    Sonuç olarak, RAM tüketimini azaltmak için oluşturduğum animasyon atlaslarını (son kez olmadığı ortaya çıktı) tamamen yeniden yapmak zorunda kaldım. Tüm resimleri ortalama %30 oranında küçülterek sıkıştırın ve kırpın. Kendinizi yalnızca 1x ve 2x ile sınırlayarak 3x resimlerden gereksiz olarak reddedin. Optimizasyon ve bellek sızıntılarını düzeltme vb. üzerinde çok çalışın. Ayrıca, oyunun kendisini tamamlamak için çok çalışma gerekiyordu, çünkü ilk başta her şey hazır görünüyor ve yalnızca son rötuşları eklemeniz gerekiyor, ancak bu biraz zaman alıyor. Bu dokunuşları eklemek için çok zaman. Genel olarak, projeyle tam olarak ilgilenme fırsatı olmadığı için çok zor bir çalışma olmasa da günde ortalama 4-5 saat bir aydan fazla sürdü. Ve Kasım ayının başında her şey aşağı yukarı hazırdı.

    Sonraki App Store'a yükleyin. Burada önceki deneyim sayesinde soru yoktu. Gün boyunca ekran görüntüleri yaptım, basit bir açıklama, aklıma gelen ilk simge (bu arada, hazır bir simgeniz olur olmaz, onu bu hizmet aracılığıyla çalıştırmak daha iyidir: https://makeappicon.com /, simgenizi oraya yüklersiniz ve size gerekli tüm boyut ve çözünürlüklerde geri verir) ve anahtar kelimeler (Bunları https://sensortower.com/ hizmetini kullanarak seçtim, site size tonlarca yararlı şey verebiliyor. abonelik ucuz olmasa da, sizin veya başka bir uygulama hakkında bilgi).

    Ve şimdi uygulama AppStore'da mevcut. Yaşasın, Yaşasın, ama gerçekten değil.

    Hatalar, korkunç frenler, eksik resimler, çökmeler vb. IOS'un farklı sürümlerine sahip farklı Iphone'ları test ederken beni bunlar bekliyordu. Oyunun IOS 9'da iyi çalışmasına rağmen, IOS 10'da korkunç frenlerle çalıştığı ve ara sıra sesin her zaman kaybolduğu hemen ortaya çıktı. 10'un kendi içinde taşıdığı böyle bir hediye beni "memnun etti" ama gidecek hiçbir yer yoktu ve hataları aramaya ve ortadan kaldırmaya devam ettim. Uygulamadaki tüm dokuları yerleştirmek için sistemi bir kez daha tamamen yeniden yapmak, tüm sesler için oynatma sistemini tamamen yeniden yapmak ve birçok ek pervazı düzeltmek zorunda kaldım. Güncellenmiş XCode ile çalışırken, kodu Swift 2.0'dan Swift 2.3'e dönüştürürken özellikle sıcak izlenimler gerekli olanı bıraktı. Kısacası, her şeyi tamamlamak için bir aydan fazla zaman harcadım ve ancak 13 Aralık'ta aşağı yukarı çalışan bir sürüm yükleyebildim. Bunun son güncelleme olmadığı açık olsa da.