Apps for app development: how to make an app for iOS and Android yourself. Secrets of making money on creating mobile applications What is the name of the application where you can make

Dmitry Dementiy

Do you doubt whether it is worth investing in the development of a mobile application? You can do it yourself and absolutely free. You may end up with a test case that is useful for evaluating the effectiveness of a mobile strategy. And if you try, you will make a decent mobile application that will become the main tool for online interaction with owners of smartphones and tablets.

Just keep in mind that even the coolest mobile application cannot be the only promotion tool. The maximum result in terms of traffic and sales is provided only by complex Internet marketing.

Is it worth making your own mobile application

Costs. If you don't take the word for it, here are some facts:

  • According to Flurry Analytics and comScore, smartphone and tablet owners use the browser only 14% of the total time they use the device. And they spend 86% of their time on different applications.
  • The installed application is your direct channel of communication with the consumer. Just think: you don't need to spend money on advertising or wait for a person to find you using Yandex. It remains to maintain the functionality the user needs and provide him with relevant content.
  • The number of purchases made using tablets and smartphones is growing both on the Internet in general and on the Internet. According to the marketing agency Criteo, already in 2016 more than half of online transactions on the Russian Internet will be made using mobile devices.

If you prefer, the app is a mobile browser that only opens your site. When would a user install such an Internet browser? Only if he is interested in your product or information. Therefore, remember: the customer who installed the application is a loyal and ready to buy representative of the target audience.

In this case, is it worth the risk and offering loyal customers DIY applications, rather than custom-made programs for Android and iOS made by professionals? Let's figure it out.

When can you create an application yourself

Do you remember what website visitors need? They come from the content or functionality of the resource. People want to get information, buy something, see and comment on photos of friends, and so on. Mobile app users want the same. They are looking for information or doing any kind of transaction.

Do you remember when a business can make a website on its own? That's right, when there is still no money to cooperate with professionals, but there is time and desire to deal with WordPress or Joomla. The same situation is with applications. Self-created programs for iOS and Android can be roughly compared to sites on "engines" with open source.

You don't have to register to get started. Click the Create Now button on home page or select the Create App menu in the upper right corner on any page of the service.


Choose the appropriate app template. If we are talking about a content project, you may be interested in the following options:

  • Manual. This template allows you to make a guide program.
  • Blog. The app will help your blog audience read new notes from their smartphone or tablet screen.
  • Website. The template converts the site into an application.
  • Pages. Using this template, you can convert any content into an application with simple functionality.
  • News. The template allows you to create an aggregator application for industry or regional news.
  • Page. The template converts offline content, such as an e-book, into an application.
  • VK Page and Facebook Page. Create an application that allows you to follow the updates of open groups on Vkontakte and Facebook.
  • YouTube. Use the template to promote your YouTube channel.

How to create a blog app

Use the Blog template. Enter the URL of your blog or RSS feed in the provided field. Choose a color for the title of your notes.


Please enter a name for the application.


Add a description.


Choose a standard or add a custom icon. A suitable image size is 512 by 512 pixels.


Click the Create App button to create the boot file. After that, you need to register in the system. Confirm registration and go to your personal account. Here you can install the application on your mobile device, publish it to Google play and Amazon App Store... The system also offers a monetization option. If you use this feature, ads will be displayed in the application.


Check how the app works on your mobile device. On a tablet, the program should display a list of blog posts in title and announcement format.

V personal account With AppsGeyser you can track the number of installs, create push notifications, publish the app in stores, monetize the program with ads, and edit the app.


Want to more apps? Then create a guide app using the Manual template.


After editing the content, enter a name for the application, add a description and an icon. Click the Create App button. After creating the boot file, install it on your mobile device and check if it works.

Please note that most mobile devices block the installation of applications from unknown sources by default. If a user downloads a program from your site or from the App Builder site, when they try to install it, they will see a warning about a security breach. Some customers will probably refuse to install the program.


8 constructors similar to AppsGeyser

If the AppsGeyser universal constructor did not suit you, pay attention to similar services:

  • AppsMakerStore. With the help of the service, you can create applications of different types: from programs for Ecommerce to solutions for content projects. The constructor makes apps for iOS and Android. The service interface is Russified. For beginners, there is an informative guide to using the constructor. The service is paid.
  • Mobincube. A tool for creating and monetizing iOS and Android applications. The basic functionality of the service is available free of charge. The constructor allows you to create applications of different types.
  • Good Barber. With this service, you can develop Android and iOS applications. The constructor is paid, the cost of using is 16 USD per month.

Most of the offered services have an English-language interface. If you are uncomfortable working with constructors on English language, choose platforms with russified content.

Application builders: stone ax or thin modern tool?

Don't go from one extreme to another. With the help of the proposed services, it is really possible to create workable functional applications. The resulting programs can be used to solve various problems: from providing online trading to distributing content and educating the audience. Apps created in the constructor can be published on Google Play and the App Store, edited, monetized using ads or paid installs.

Do not overestimate the services offered. Their obvious drawback is stereotyped. It's about both design and functionality of programs. In addition, access to platforms with decent functionality is paid. Which is better: to pay once for the developers' work or pay for many years to the owners of the constructor? Count yourself.

And one more thing: if you do not have time to create on your own mobile app, please contact our company. We are developing mobile applications, and.

Contact us Let's discuss? Order a free consultation

Among photographers, the Lenslight app is considered quite specific. Its main feature is a large number of various optical and light effects, glare, glow and bokeh. Each effect can be carefully adjusted, and a filter can be applied to the photo. After adding the effects, the rays look very natural. R The implementation of the program is also quite simple: after the first work with it, all its wide possibilities become clear. Application in English.

Requirements:

  • Android 4.0 or later

Examples:




VSCOCam: “the new standard in mobile photography”?

For iOS and Android

VSCOCam is by far the most popular iPhone app. By the way, the creators proudly call their program "the new standard in mobile photography." And, in general, for good reason: VSCOCam allows you to apply a variety of filters and experiment with settings. There is a document on working with the application, so before starting work, you can thoroughly study all the features of the program. Another advantage is intuitive clear interface... Again, according to the developers, they did everything so that users "did not waste time on long post-processing, but get beautiful frames simply and quickly." The photo editor itself is free. Additionally, you can purchase paid content. The program is in English.

Requirements:

  • iOS 5.0 or more late version... Compatible with iPhone, iPad and iPod touch. Optimized for iPhone 5.
  • Android 4.0 or later

Examples:




Afterlight (33 rubles): experimenting with color reproduction

For iOS andAndroid

Like all other photo editors, Afterlight contains many hipster filters and frames. But the main thing about this program is its work with color: photographers compare it to Lightroom. Afterlight will not replace professional software, but it will do for small work. For your convenience - 15 editing tools. You can adjust, for example, contrast, saturation, image temperature. The application has 23 "film" effects that allow you to "light up" a photo, add texture, mirror the image, etc. Separately, we can say about all kinds of frames: there are so many of them that even from the simplest picture you can get quite an interesting result. Application in English.

Requirements:

  • iOS 5.0 or later. Compatible with iPhone, iPad and iPod touch. Optimized for iPhone 5.
  • Android 2.3 or later

Examples:




Mextures (66 rubles): add some magic to your photos

For iOS

The first thing that impresses is the design of the app. He's already inspiring. As soon as we start working, we see a rich selection of various textures, which, which is unusual, are presented in the form of "formulas" from ready-made collections. By the way, you can create textures yourself, experimenting with different parameters. For those who like to create beautiful color pictures, reminiscent of illustrations for books of fairy tales, this program is optimal. At the first launch, the user can view the main features of the application. Mextures is ranked in the overall top 100 of the best paid apps to date. The program is in English.

Requirements:

- iOS 6.1 or later. Compatible with iPhone, iPad and iPod touch. Optimized for iPhone 5.

Examples:




Snapseed: add drama

For iOS and Android

Another popular photo editor. Snapseed provides a lot of possibilities: a huge number of filters and effects, such as tilt-shift and focus adjustments, sharpening and color rendition adjustments. There is automatic editing. Among the filters can be distinguished a group, so to speak, especially "atmospheric", which will look good with both color and black-and-white photos, adding a certain drama and mystery to the picture. Application in English.

Requirements:

  • iOS 5.1 or later. Compatible with iPhone, iPad and iPod touch. Optimized for iPhone 5.
  • Android version 4.0 or later

Examples:




Pixlr Express: 100% Free

For iOS and Android

The product of a major developer Autodesk has quite a few options. As with Mextures, it has a curious nice interface and design. All functionality is grouped into categories. This is one of those rare photo editors where the paid components are completely absent. A huge selection of filters, frames and other functions is interesting: you can make a photo truly archived, you can add an inscription, decorate with all sorts of bokeh and light effects like LensLight. AND another nice little thing - the program menu appears before you every time with different background, which is the previously edited frame. Application in English.

Examples:




Adobe Photoshop Express: for RAW processing

ForiOSandAndroid

Compared to other programs, there is nothing particularly remarkable here - all the same typical settings and effects, half of which are paid. On the other hand, the developers knowingly put the word "express" in the title, which speaks for itself that the program is designed for quick processing of the taken pictures, with which Photoshop Express does an excellent job. What's especially valuable is that you can process RAW files here. The application language is English.

Requirements

  • Android version 4.0.3 or later

Examples:




Rookie: versatile for every genre

For iOS and Android

In just a couple of months of its existence on the App Store, Rookie photo editor managed to gain a huge number of rave reviews and a high score. The application has both a free set of functions and a paid one. The premium version, which includes 72 filters, 142 stickers and 130 frames, can be purchased for 169 rubles. The standard application package contains many vintage filters adapted for different genres of photography: portraits, landscapes, city sketches, macro, etc. Each filter group has its own settings. For example, in filters for portraits, you can adjust the Skin Smoothing level. After processing, the photo can be sent to Instagram, Twitter, Facebook, Tumblr, Flickr, or saved to the gallery. Application in English.

Requirements:

  • iOS 6.0 or later. Compatible with iPhone 4, iPhone 4S, iPhone 5, iPhone 5c, iPhone 5s, iPad and iPod touch. Optimized for iPhone 5
  • Android version 2.3 or later

Examples:




Aviary: optimal for Android

For iOS and Android

Photo editor Aviary is considered one of the best apps for Android mobile devices. In general, it is very similar to the updated Instagram: there is also a large selection of different filters, the same standard settings brightness, contrast, saturation, but in addition to this, you can add stickers, stickers, inscriptions (although the choice of fonts is small), and create your favorite memes. The application is adapted for Russian.

Requirements:

  • iOS 7.0 or later. Compatible with iPhone, iPad and iPod touch. Optimized for iPhone 5.
  • Android version 2.3.3 or later

Examples:




Pho.to Lab: for imaginative creatives

For iOS and Android

Requirements:

  • Android is device dependent.

Examples:




3 apps to add text to photos

Over (33 rub)

For iOS and Android

Over is an app for adding text to a photo. For starters, you can see what users have already done with this application. The program is in Russian. The workflow is incredibly simple and straightforward: you select a photo, insert text, change its color, size, position and font. In a word, it is impossible to get confused. Initially, not all fonts are available to the user. For a complete set, you will need to pay about 40 rubles. At the same time, the capabilities of the program are somewhat limited: you cannot make the typeface bold or italic, or use a background for your inscription. Application in Russian.

Requirements:

  • iOS 6.0 or later. Compatible with iPhone, iPad and iPod touch. Optimized for iPhone 5.

Examples:




Phonto: the richest in functionality

For iOS and Android

In addition to the built-in fonts (and there are about 50 of them), Phonto has the ability to install any fonts you want. The program is implemented very easily: to add an inscription, just click on the photo. Then you can do absolutely anything with the text. Aligning, changing the font, color, transparency, adding symbols and background - in Phonto, unlike Over, you can embody any creative idea. By the way, you can edit the photo itself by applying one of the filters to it. An additional set of frames and filters is available for 66 rubles. Application in English.

Requirements:

  • iOS 7.0 or later. Compatible with iPhone, iPad and iPod touch. Optimized for iPhone 5.

Examples:




Typic: for those who care about friendly design

For iOS

Typic can automatically crop pictures to a square. After choosing a frame, you can apply one of 11 free filters, add text, choose one of 30 fonts and 7 colors, adjust its transparency, and, finally, decorate the result with a frame or pattern. Available fonts work correctly only with Latin characters. Perhaps we can also note the pleasant interface of the program. Large quantity fonts and filters and fonts are available in the second "version" of the program - Typic + for 33 rubles. Application in English.

Requirements:

  • Requires iOS 7.0 or later. Compatible with iPhone, iPad and iPod touch. Optimized for iPhone 5.

Examples:




3 collage maker apps

Moldiv: collages and more

For iOS and Android

Free app from the creators of PicsPlay Pro. With it, you can easily combine and edit multiple photos. Here you will find not only different frames and a wide range of options, but you can also decorate pictures with inscriptions and stickers. You can combine up to 9 pictures in one collage! In addition, you can make the corners of the photos rounded, choose a background, customize the font (the choice of fonts is simply huge, besides, they are adapted to the Cyrillic alphabet).Before starting work, you can see video about the capabilities of the application, but most likely you will figure it out without it. The program is very easy to use and understandable.The photo editing function is also at its best: out of 45 effects, you will definitely find one that will embody your creative idea.And those for whom this set is not enough will be able to purchase a premium package for 66 rubles. Application in Russian.

Requirements:

  • iOS 6.0 or later. Compatible with iPhone 4, iPhone 4S, iPhone 5, iPhone 5c, iPhone 5s, iPad and iPod touch. Optimized for iPhone 5.
  • Android version 4.0 or later

Examples:




Photo Grid: Making Ads and Video Stories

For iOS and Android

One more free app, which allows you to create not only collages, but also a kind of postcards and "message boards". Photo Grid cannot boast of the same rich functionality as Moldiv (for example, here you cannot adjust the thickness of the frames), but it has a number of other advantages. So, with this program you can create video stories using your photos and your favorite music, as well as photo stories with text and stickers. In total, the program offers about 3000 layouts and stickers. In addition, the application allows you to edit individual photos as well. The program is in English.

Requirements:

  • iOS 6.0 or later. Compatible with iPhone, iPad and iPod touch. Optimized for iPhone 5.
  • Android version 2.3 or later

Examples:




Pic Jointer: Simple and Fast

For iOS and Android

Unlike the previous two applications, Pic Jointer offers to make the most ordinary collages: simple and fast. There are 64 schemes to choose from. The thickness, roundness of frame borders and color can be adjusted to your liking. A premium account will allow you to choose the background of the scheme.

Requirements:

  • iOS 6.0 or later. Compatible with iPhone, iPad and iPod touch. Optimized for iPhone 5.
  • Android version 2.3 or later

Examples:




3 apps to create multi-exposure

MultiExpo: the first multiple exposure app

For iOS

For those looking for an interesting application for creating a multiple exposure effect, we suggest paying attention to MultiExpo. By the way, MultiExpo is the pioneer application of multiple exposure on mobile devices. And for the "discoverer" it is implemented quite well: an understandable and pleasant interface in Russian, the ability to crop each frame separately and apply filters to the already combined image.The app is completely free, there is no additional premium package.

Requirements:

  • iOS 5.0 or later. Compatible with iPhone, iPad and iPod touch. Optimized for iPhone 5.

Examples:




Instant Blend: multiple exposure as one of the functions

For iOS

Application that allows you to take pictures with double exposure. The free set of functions includes the ability to apply various filters to images, contrast correction, exposure for each frame, all kinds of frames and adding captions. A premium feature pack lets you diversify your options. In English.

Requirements:

  • Requires iOS 6.0 or later.

Examples:




Picamerge (33 rub)

For iOS

The first thing that should be noted is the friendly interface in Russian. But compared to the free photo editors above, Picamerge seems too simple: here you won't even be able to rotate and crop an image. All you can do is combine two images into one and apply a filter to them.

Requirements:

  • iOS 7.0 or later. Compatible with iPhone, iPad and iPod touch. Optimized for iPhone 5.

Examples:




The Android operating system has received the widest distribution - as of the end of 2015, more than 80% of mobile devices are running on it, and the graphs are showing steady growth. Interest in mobile applications is not fading away, judging by the number of new products in Playmarket. How to create an Android app yourself? Do I need to be a real programmer for this? We will talk about this in our article.

Building your first Android app takes a lot of work. We will need:

  • Programming books;
  • Development environment (includes many programs and plugins);
  • Additional programming manuals for Android OS;
  • Knowledge in the construction of algorithms.

Having coped with the installation of the development environment, you need to start studying books and manuals. They will help you gain knowledge about operators, classes, arrays, ways of interacting with equipment of mobile devices. Also you need to learn to read someone else's code and find the necessary knowledge and programming techniques in it... Looking at the listing of the smallest program, your head starts spinning - it seems that it is impossible to learn all this.

In fact, a lot of manuals have been written for Android programming and teaching aids... Therefore, there will be no problems with learning the basics of programming - the main thing is to have the ability to do this.

Android app builders

If you are frightened by operators, classes and algorithm development, and program listings are plunging into primitive horror, then we are ready to offer you another solution - creating applications in special constructors. Their number is growing by leaps and bounds, so there will be no problems finding them. Constructors allow you to write applications of various levels of complexity using pre-developed modules and capabilities. Based on them, you can create:

  • News applications;
  • Cooking recipes catalogs;
  • Mobile blogs;
  • Online stores;
  • Applications for ordering services;
  • Photo and video galleries;
  • Text applications and more.

Also, many builders offer tools for basic promotion of created applications.

App2b constructor

This builder is aimed at a business audience, so it can create business projects high level difficulties. On its basis, online stores, clothing catalogs, applications for discount programs, applications with notifications, news applications, promotional catalogs, video galleries and much more are implemented. Users have access to statistics of downloads of created applications, hosting and promotion tools.

Like many other business tools, App2b Maker is paid... The choice of users and developers is presented with the only payment option - 9,900 rubles for one application one-time. The payment includes access to all specified features, technical support, tools for promotion, as well as placement of applications in the Playmarket.

In fairness, it should be noted that this constructor is able to create applications not only for Android, but also for iPhone smartphones(with subsequent publication in the AppStore).

Appsmakerstore builder

It is a very powerful multifunctional constructor with a gigantic amount of templates. It is used to create applications for hotels, nightclubs, restaurants and cafes, public services, retail chains, beauty salons, radio stations, medical institutions, sports clubs, religious institutions, as well as for various events and activities. Constructor functionality:

  • Publishing news content;
  • Publishing multimedia content;
  • Automatic synchronization with sites;
  • Acceptance of online orders;
  • Acceptance of payment;
  • Booking functions;
  • GPS location of users;
  • Publishing schedules and schedules;
  • Social media integration and more.

And in order for the created applications to be unique, branding is provided here - users / developers can upload logos, their own photos and other corporate attributes. In order to start creating an application, you need to select a suitable template, and then add your own content to the project. After everything is finished, the service will help to place the application in the Play Market.

Free New Digital Times App Builder

This constructor is desktop. That is, for it to work, you need to download special application to your computer. The developers claim that all the functionality is absolutely free - there are good basic features, there are free templates and modules. In order to access the functionality, you need to register and get an account.

The program installed on the computer weighs only a few megabytes - this is a big plus. We launch the program, enter the username and password, and then proceed to the development of the application. Here we can add various components and pages, insert images and text content, view the results when different resolutions screen. The possibilities are not huge, but you can still create a simple mobile application for Android or a small online store.

This constructor is able not only to create applications, but also to publish them in the Playmarket application store. Creation of applications for iOs is also supported.

Net2Share Constructor

How to create an Android app for free and make money? To do this, use the Net2Share constructor. And don't be intimidated by the "Tariffs" section on the official website of the designer - here you can find information on affiliate program that allows developers to make money on creating their own applications (you could call this item something else).

In order to start developing, you need to go through a simple registration procedure. Application development takes place in the web interface. After publishing on Play M3arket, the developer will start receiving income depending on the number of impressions advertising banners embedded in every application. Owners of the most popular applications can receive additional bonuses.

The downside of the service is that you will have to publish the created applications on Playmarket yourself - basic capabilities for posting is not here.

Conclusion

Anyone can create an Android application using paid and free builders. The functionality of the constructors is decent, so they will solve most of the tasks.... But if you want to create something special, you will have to learn programming for Android from scratch - this is the only way to reach a more advanced level of application development. If you don't have the strength to create software yourself, you should order its development from professional programmers.

We have made Periodicals, a mobile application where you can print your photo books, pictures and postcards. To help everyone who shoots on iPhone, we've picked 8 top photo editing apps to help you adjust brightness and contrast, apply a filter, flatten perspective - and do whatever it takes to send beautiful photos to print.

VSCOcam

VSCOcam is one of the most popular image processing applications in recent years, and here's why: It owes its success to filters that are created in collaboration with photographers, art directors and creative industry companies. : color correction, cropping, white balance, brightness, contrast and more.

in VSCOcam you can process a photo once and then apply these settings to all similar photos at the same time, which greatly saves time.

VSCOcam is also a community where thousands of users share their moments. Also in VSCOcam you can keep a diary, making simple photo stories with cards and text. App adepts can be found under the tags #vsco, #vscomoscow, #vscocam, #vscorussia on Instagram.

The application is free along with a starter pack of filters, the rest are purchased separately. But before you buy, you can estimate how the photos will look in the new processing. It is difficult to recommend a specific set of effects - choose to taste. Let's share our favorites: C2, 04, 05 and F1.

Darkroom

The Darkroom app is perfect for those who need some serious color correction. The main feature of Darkroom is the "curve", the same one that professionals use when working with Adobe Lightroom. However, it is not included in the starter kit, it must be purchased separately. But you have access to a set of photo editing tools, which has everything you need for basic processing.

Afterlight

Afterlight has been popular with mobile photographers since its inception. What's the secret? A friendly interface, a bunch of editing tools and, of course, frames, textures and other decorations.
Everything else is fine with Afterlught. All the necessary editing, packs of beautiful filters from developers and mobile photographers, sets of frames, textures. Some are sold separately.

Snapseed

Snapseed is an indispensable tool if you need to make precise adjustments to a snapshot. Knows how to work with the whole photo, and with separate areas. You can lighten an area that is too dark or darken an area that is too light.
In the arsenal of the photo editor, there are basic processing tools: cropping, color correction, vignetting. Plus interesting effects: blurred grunge, noir and others.

Pixelmator

Pixelmator is the "monster" of our collection. The developers themselves position it as a full-fledged image editor. Of course, it is also suitable for photographs.
The main feature of the application is the support for layers, as in desktop photo editors. This allows you to experiment: "mix" several pictures, add text, geometric shapes. Pixelmator has some pretty good templates for creating collages, cards, and posters.

Mextures

Mextures will give you the feeling of darkroom and experimentation. The application contains cool effects that can (and should) be mixed with each other. Given that each filter has many variations, the same photo with the same effect looks different. The main thing is to stop at the right time and not overdo it with filters.

Litely

Litely is an easy-to-learn photo editor with beautiful filters. They are suitable for landscapes, nature shots, architecture. Fans of black and white shots will love this pack with noir effects.
You can try the starter kit for free, for the rest you will have to pay extra. Before buying, you can see examples of effects on real photos and decide what you need.

SKRWT

SKRWT is a cure for crooked hands. Seriously, on an iPhone without a tripod it is difficult to take an initially "straight" shot with the correct proportions of objects and an unobstructed horizon. We photograph what we see without thinking about composition and framing.

The application has tools for correcting perspective, volume of objects, vertical and horizontal frame composition. To the author of the Periodicals blog, this application has repeatedly saved what seemed to be lost frames, so he recommends SKRWT to every mobile photographer.

The possibilities of mobile photography are very wide: with the help of applications, you can take, process, layout and print a picture. We will continue to introduce you to ideas for processing photos and their further use. Stay tuned! Add us on Instagram -

Learning a new language and development environment is the minimum that is required of you if you want to write your first mobile application. It will take at least a couple of weeks to sketch out an elementary todo list for Android or iOS with understanding, without copying an example from a book. But you can skip learning Objective-C or Java and still quickly develop smartphone apps using technologies like PhoneGap.

If you have carefully studied the innovations that await us in Windows 8, you may have noticed that it will be possible to develop applications in HTML5 under it. The idea, in fact, is not new - technologies that implement the same approach for mobile platforms are developing by leaps and bounds. One of these frameworks that allows you to develop applications for smartphones using a bunch of HTML, JavaScript and CSS that are familiar to us! Is exactly PhoneGap. An application written with its help is suitable for all popular platforms: iOS, Android, Windows Phone, Blackberry, WebOS, Symbian and Bada. You will not need to learn the peculiarities of programming for each platform (for example, Objective-C in the case of iOS), deal with various APIs and development environments. All it takes to create a cross-platform mobile app is knowledge of HTML5 and the dedicated PhoneGap API. In this case, the output will not be a stupid HTML page, "framed" in the application interface, no! The API of the framework allows you to use almost all the capabilities of the phone that are used during development using native tools: access to the accelerometer, compass, camera (video recording and photography), contact list, file system, notification system (standard notifications on the phone), storages, etc. Finally, such an application can painlessly access any cross-domain address. You can recreate native controls using frameworks like jQuery Mobile or Sencha, and the final program looks like it was written in a native language on mobile (or nearly so). It is best to illustrate the above in practice, that is, to write an application, so I propose to start practicing right away. Schedule the time - everything about everything will take hardly more than half an hour.

What will we create

Let's take iOS as the target platform - yes, the money is in the AppStore, and it's best to monetize your developments there :). But I'll make it clear right away: all the same, without changes, can be done, say, for Android. I thought for a long time which example to consider, since I did not want to write another tool to keep track of the to-do list. Therefore, I decided to create an application called Geo-Reminder, a navigation program, the purpose of which can be described in one phrase: "Let me know when I am here again." There are many utilities in the AppStore that allow you to "remember" the place where the user parked the car. It's almost the same, just a little simpler. You can indicate a point on the city map, set a certain radius for it and program a message. When you next hit the circle with the specified radius, the application will notify you, and the point will be deleted. We will act according to this plan: first, we will create a simple web application, test it in a browser, and then transfer it to the iOS platform using PhoneGap. It is very important to prototype and test most of the code in a browser on a computer, since debugging an application on a phone is much more difficult. We'll use jQuery JS framework with jQuery Mobile (jquerymobile.com) as a skeleton, and Google Maps v3 as a map engine. The application will consist of two pages: a map and a list of points.

  • A marker of your current position is set on the map. By clicking on the map, a point is created to which the message is attached (like "car nearby"). The point can be deleted by clicking on it. The geosteering API is used to move the person marker across the map.
  • On the page with the list of points there should be an additional button "Delete all points", and next to each point - a button "Delete this point". If you click on an item in the list, the corresponding point will be displayed on the map. The user settings and the list of points will be saved in localStorage.

UI frameworks

jQuery Mobile is certainly not the only framework for building a mobile interface. The PhoneGap website has a huge list of libraries and frameworks you can use (phonegap.com/tools): Sencha Touch, Impact, Dojo Mobile, Zepto.js, etc.

Application framework

I'll explain right away why we are going to use jQuery Mobile. This JS library provides us with ready-made elements of the mobile application interface (as close as possible to native ones) for a variety of platforms. After all, we need a mobile application at the output, and not a page from the browser! So let's download latest version JQuery Mobile (jquerymobile.com/download) and portable to working folder the first application files we need:

  • images / (drag here all the images from the folder of the same name in the jq-mobile archive);
  • index.css;
  • index.html;
  • index.js;
  • jquery.js;
  • jquery.mobile.min.css;
  • jquery.mobile.min.js.

It is necessary to make the resources mainly local so that the user does not spend mobile Internet in the future. Now we create a wireframe for the pages in the index.html file. The code below describes the top of the page with a map, the words "Geo-Reminder" and a button "Points".

Map page

Geo-Reminder

Points

The data-dom-cache = "true" attribute of the page is required to prevent it from being unloaded from memory. For the button "Points" use data-transition = "pop" so that the page "List of Points" opens with the "Bubble" effect. You can read more about how jQuery Mobile pages work in the good manual (bit.ly/vtXX3M). By analogy, create a page with a list of points:

Point List Page

delete everything

Points

Map

For the "Map" button, we will also write data-transition = "pop", but add the attribute data-direction = "reverse" so that the "Map" page opens with the "Fade" effect. We will write the same attributes in the point template. That's it, our frame is ready.

Application creation

Now we need to display the map, for which we will take the standard Google Maps API, which is used by millions of different sites:

Var latLng = new gm.LatLng (this.options.lat, this.options.lng); this.map = new gm.Map (element, (zoom: this.options.zoom, // Select initial zoom center: latLng, // Set initial center mapTypeId: gm.MapTypeId.ROADMAP, // Normal map disableDoubleClickZoom: true, // Disable auto-zoom by tap / double click disableDefaultUI: true // Disable all interface elements));

Here Gm is a variable that refers to a Google Maps object. I have commented out the initialization parameters well in the code. The next step is to draw the human marker on the map:

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

As PERSON_SPRITE_URL, the address of the sprite of the man from Google panoramas is used. Its static address is maps.gstatic.com/mapfiles/cb/mod_cb_scout/cb_scout_sprite_api_003.png. The user will add points by clicking on the map, so to draw them we will listen for the click event:

Gm.event.addListener (this.map, "click", function (event) (self.requestMessage (function (err, message) (// Method that returns the text entered by the user if (err) return; // Method adds a dot to the list of active ones and // draws it on the map self.addPoint (event.latLng, self.options.radius, message); self.updatePointsList (); // Redraw the list of points));), false);

I provide most of the code - look for the rest on disk. Next, we need to teach the application to move the user icon across the map. In the prototype, we use the Geolocation API (the one that is also used in desktop browsers):

If (navigator.geolocation) (// Check if the browser supports geolocation function 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)); // Move the user's icon) // Request the current // user's position window.setInterval (function () (// Query the current position navigator.geolocation.getCurrentPosition (gpsSuccess, $ .noop, (enableHighAccuracy: true, maximumAge: 300000));), 3000);)

The movePerson method uses a simple procedure getPointsInBounds () to check if the user is at any hotspot. The last question is where to store the list of points? In HTML5, it became possible to use localStorage, so let's not neglect it (I leave it to you to figure it out on your own with these parts of the code, which I commented well). So, the browser application is ready!

Launching a web application

As I said, debugging mostly needs to be done on the computer. The most suitable browser for testing web applications on a computer is Safari or Chrome. After debugging in these browsers, you can be sure that your application will not "run" in the browser mobile phone... Both of these browsers are compatible with most mobile web browsers as they are built on top of the WebKit engine just like them. After eliminating all the bugs, you can proceed to launch the mobile web application directly on the phone. To do this, set up your web server (even Denwer or XAMPP) so that it serves the created page, and open it already in the browser of your mobile phone. The application should look something like the illustration. It is important to understand here that the future mobile application, built for the mobile platform using PhoneGap, will look almost one-to-one, except that the browser navigation bar will not be displayed on the screen. If all is well, you can start creating a full-fledged iOS application from the page. Note that PhoneGap and IDE for mobile development we have not even touched until this moment.

Training

In order to build an application for iOS, you need a computer with an operating Mac system OS 10.6+ (or virtual machine on Mac OS 10.6) as well as the Xcode IDE with installed iOS SDK. If you don't have the SDK installed, you will need to download a disk image that includes Xcode and the iOS SDK from Apple's website (developer.apple.com/devcenter/ios/index.action). Keep in mind that the image weighs in at about 4GB. In addition, you will need to register on the Apple website as a developer (if you are not going to publish your application in the AppStore, you can bypass this requirement). With this set, you can develop applications in the native Objective-C language for iOS. But we decided to take a workaround and use PhoneGap, so we still need to install the PhoneGap iOS package. Just download the archive from the offsite (https://github.com/callback/phonegap/zipball/1.2.0), unzip it and run the installer in the iOS folder. When the installation is complete, the PhoneGap icon should appear in the Xcode projects menu. After launching, you will have to fill out a few forms, but very soon you will see the IDE workspace with your first application. To check if everything works, press the Run button - the iPhone / iPad emulator should start with the PhoneGap templated application. The compiled program will give an error with the message that index.html was not found - this is normal. Open the folder where you saved the primary project files and find the www subfolder in it. Drag it into the editor, click on the application icon in the list on the left and in the window that appears, select "Create folder references for any added folders". If you run the program again, then everything should work. Now we can copy all our prototype files to the www folder. It's time to file our prototype for working on a smartphone in PhoneGap processing.

Moving the prototype

First of all, you need to include phonegap-1.2.0.js in your index file. PhoneGap allows you to limit the list of hosts available to visit. I suggest setting up such a "white list" right away. In the project menu, open Supporting Files / PhoneGap.plist, find the ExternalHosts item and add to it the following hosts that our application will access (this google server Maps): * .gstatic.com, * .googleapis.com, maps.google.com. If you do not specify them, the program will display a warning in the console and the map will not be displayed. To initialize the web version of our application, we used the DOMReady event or the jQuery helper: $ (document) .ready (). PhoneGap fires a deviceready event, which indicates that the mobile device is ready. I suggest using this:

Document.addEventListener ("deviceready", function () (new Notificator ($ ("# map-canvas")); // If the user does not have the Internet, // inform him about it if (navigator.network.connection.type = == Connection.NONE) (navigator.notification.alert ("No internet connection", $ .noop, TITLE);)), false);
Disable scrolling: document.addEventListener ("touchmove", function (event) (event.preventDefault ();), false);

Then we'll replace all alert and confirm calls with the native calls that PhoneGap provides us:

Navigator.notification.confirm ("Delete point?", Function (button_id) (if (button_id === 1) (// OK button clicked self.removePoint (point);)), TITLE);

The last thing we need to change is the code block that moves the user icon across the map. Our current code also works, but it works less optimally (moves the icon, even if the coordinates have not changed) and does not give as rich data as the analog in PhoneGap:

Navigator.geolocation.watchPosition (function (position) (self.movePerson (new gm.LatLng (position.coords.latitude, position.coords.longitude));), function (error) (navigator.notification.alert ("code: "+ error.code +" \ nmessage: "+ error.message, $ .noop, TITLE);), (frequency: 3000));

This code is more graceful - it only fires an event when the coordinates have changed. Click the Run button and make sure that the application we just created works fine in the simulator of the iOS device! It's time to start running on a real device.

Run on device

Connect your iPhone, iPod or iPad to the computer running Xcode. The program will detect the new device and ask for permission to use it for development. It makes no sense to refuse her :). I repeat once again: to run the written application on iOS, you need to be an authorized iOS developer (in other words, to be subscribed to the iOS Developer Program). This will have to be confused only in the case of developing applications for Apple products, with other platforms (Android, Windows Phone) everything is much simpler. Those who study at the university have a chance to access the program for free thanks to some benefits. Everyone else must pay $ 99 per year to participate in the program. Apple issues a certificate that you can use to sign your code. The signed application is allowed to run on iOS and distribute in the App Store. If you are not a student, and you still feel sorry for $ 99 for innocent experiments, then there is another way - to deceive the system. You can create a self-signed certificate for code verification and run mobile program on a jailbroken iOS device (I will not dwell on this, because everything is described in maximum detail in this article: bit.ly/tD6xAf). One way or another, you will soon see a working application on the screen of your mobile phone. Stop the stopwatch. How long did it take you?

Other platforms

Besides PhoneGap, there are other platforms that allow you to create mobile applications without using native languages. Let's list the coolest players.

Appcelerator Titanium (www.appcelerator.com).

Titanium is able to build applications primarily for Android and iPhone, but it also claims support for BlackBerry. In addition to the framework itself, the project provides a set of native widgets and IDEs. You can develop applications on Titanium for free, but you will have to pay for support and additional modules (from $ 49 per month). Some third-party modules go up to $ 120 per year. Appcelerator Titanium developers claim that more than 25 thousand applications have been written based on their framework. The source code of the project is distributed under the Apache 2 license.

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

This technology supports the main platforms - iOS and Android. The framework focuses primarily on game development. Indeed, the developers claim high-quality optimization in OpenGL. Free version the platform does not, and the price is rather biting: $ 199 per year for a license for one platform and $ 349 per year for iOS and Android. Corona offers its own IDE and device emulators. Corona applications are written in a language similar to JavaScript.

Conclusion

We have created a simple mobile web application and in a few simple steps ported it to the iOS platform using PhoneGap. We didn't write a single line of Objective-C code, but we got a decent quality program, spending a minimum of time porting and learning the PhoneGap API. If you prefer another platform like Android or Windows Mobile 7, then you can just as easily, without any changes for these platforms, be able to build our application (for each of them there is a good introductory manual and video tutorial: phonegap.com/start). To be convinced of the platform's consistency, you can look at the ready-made applications on PhoneGap, which the technology developers have collected in a special gallery (phonegap.com/apps). In fact, PhoneGap is an ideal platform for creating at least a prototype of a future application. Its main advantages are speed and minimum costs, which are actively used by startups, which in all respects are limited in resources. If the application gets trampled, and for some reason the internals in HTML + JS cease to suit you, you can always port the application to the native language. I must say that PhoneGap was originally developed by Nitobi as an open source project (the repository is located on GitHub: github.com/phonegap). The source code will continue to remain open, although in October last year, Nitobi was bought by Adobe. Needless to say, what are the prospects for the project with the support of such a giant?