How to make a theme for android yourself. Programs for creating android applications. IbuildApp is a powerful engine for developing your own projects

Explore new language and a 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, the system of notifications (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 almost 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 the browser, and then transfer it using PhoneGap to iOS platform... 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 will use jQuery JS framework with jQuery Mobile (jquerymobile.com) as a skeleton, and as a map engine - Google maps v3. 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 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 in the future Mobile Internet... 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. More about how they work jQuery pages Mobile, you can read 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. Last question- 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.

Preparation

In order to build an application for iOS, you need a computer with operating system Mac 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 the following hosts to which our application will access (these are Google Maps servers): * .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 has no 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 pressed 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 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. Source 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 app 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?

Telegram is a unique messenger. And not only because it works quickly and stably (there are rumors that it works even when the Internet is turned off), but also because of its open platform that allows any user to create their own bots, and.

Today to this list are added themes for android- this means that you can change appearance your Telegram the way you want. For example, make a glamorous pink background and blue text, or black letters on a black background, and no one can stop you!

To switch to one of the built-in themes or create your own, go to Settings and click on the item Themes... Especially for those who want to use night theme, but does not want to create it myself or look for a ready-made one, we have included it in the list of standard ones.



By the way, about the search for topics: while there is no convenient catalog, we post best themes to our group @ThemesGroup... Come in: there you can show yourself and see others.

How to create your own theme

It's clear that not everyone likes the pre-installed set of themes - sometimes you want to do something with your own hands. So that you do not have to dig into files and manually change colors (as it was in), we have added a convenient visual editor... Just click on the palette icon and change the colors of the items on the screen.



Create your own Themes for Telegram extremely simple - even a child can handle it. For example, here are some themes created by regular users.

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.
  • Installed application- 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 like, the application is mobile browser which 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. Users mobile applications you need 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 app to keep up with updates 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 the 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 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.

Note, most mobile devices by default blocks the installation of applications from unknown sources... 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. Using the service, you can create applications different types: from software 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 different tasks from providing online commerce 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 is both the design and the functionality of the 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 for self-creation mobile application, please contact our company. We are developing mobile applications, and.

Contact us Let's discuss? Order a free consultation

Operating room Android system today it is one of the most demanded mobile platforms in the whole world. Almost every owner Android smartphone I would like to get a unique application that will suit him in a particular case, but it is not always possible to find such an application. In this article, we will talk with you about how to make an Android application yourself using free methods.

Due to the rapid development of the Android platform, some functions of the described programs may change, so to clarify any details, write in the comments. Last revised on 01/20/2018.

Naturally, progress does not stand still, and with the development of the Android OS, more and more opportunities appear for creating all sorts of applications that fit it. And if not long ago, only a specialist who studied this at the institute could create it, now this can be done any phone or tablet owner Android in online mode.

Users can create their own application in order to delight themselves with a unique program. Or they can do it in order to make some money. Today the Internet provides all the possibilities for this.

The tools described below will allow you to create your own application in several stages.

Some of the presented programs allow you not only to do, but also immediately monetize his. Also, any of the created applications can be placed in google system Play.

Four ways to make an Android app yourself

Below you will find four “tools” that will allow you to create such an application quickly and without much knowledge. Such programs are reminiscent of constructors, which allow you to create everything you need in blocks, a good analogy to assembling the familiar LEGO constructor.

All programs presented here were selected according to the following criteria:

  • Convenient use... Naturally, these offers will not be used by trained specialists, but ordinary users such as you and me. That is why the application should be very user-friendly, functional, and easy to learn.
  • Intuitively simple interface... Logically speaking, this point seems to follow from the previous one, which means the program should be not only convenient, but also intuitive.
  • Great functionality... The wide variety of ways to create an application is a definite plus. Although all the programs presented, on average, have the same functions, with the exception of some little things.

Below is a selection of tools to help you create your very first app.

App Builder is a simple tool to create apps

This option is in a good way to create your own applications quickly. Without a doubt, it is also pleasing that it can be used without investing a penny, which means is free... Although here, there are also disadvantages, at least that it is completely in English (after the update in December 2017, the Russian language was added).

Program features

  • There is a huge selection of templates for creating an application. If you have some simple application in mind, then this program will easily help you choose a template;
  • After creating an application, you can monitor its statistics;
  • If you create an application and it will be tested, then it can be placed in the Google Play store in a simple and straightforward manner.

AppsGeyser - a site for creating high-quality Android applications on your own

Official site - https://www.appsgeyser.com

This tool is of higher quality than the previous one, because there are much more opportunities for creating your own application. The site makes it possible to create your own program in just a few minutes. This editor is the simplest of all that we have come across. The list of applications that he will help you make is very large, from a regular browser to your own messenger.

AppsGeyser benefits

  • The application is written quite quickly, literally in a couple of clicks;
  • It allows you to create simple games for Android, because you must admit that not every tool can do this today;
  • After the application is ready, it can be easily placed in the Google Play store;
  • In addition, you can monetize your program directly through the AppsGeyser service. it useful function, after all, by showing your imagination, you can also make money on this;
  • Create, edit, publish the application online in your personal account (to save the results).

IbuildApp is a powerful engine for developing your own projects

This tool deserves a really close look. As we discussed above, you don't need to know a programming language to create Android apps. The development platform is so simple that it will be very easy to create your own application. The process will only take a few minutes, but the result will be obvious.

The IbuildApp website has both paid tariffs (development of an individual application, with further development) and free templates, of which there are a lot.

Russian official website - https://russia.ibuildapp.com

Let's see what it can do:

  • A huge archive of topics on a variety of topics: it can be restaurants, cafes, sports activities, as well as many other topics that allow you to choose anything you like. All you need to do is choose something specific, and then edit it to fit your needs;
  • It also has built-in ways to promote the created application. The program not only helps to quickly create an application, but also promotes it. In other cases, this process takes a very long time;
  • In addition, you will be able to connect the app to advertising network, which means you will earn money on it.

AppsMakerstore - platform for creating simple programs

Official site - https://appsmakerstore.com

The fourth cool platform that is designed for Android creation applications. Probably one of the most important advantages is that using the AppsMakerStore website, you can create programs that will be multiplatform (for example, on Android, iOS and Windows Phone)

Let's take a look at the advantages of the platform:

  • Work with the designer takes place online;
  • Possibility of free registration;
  • Writing applications using ready-made layouts, while a huge selection of templates on the topic is provided to each user.

Video instructions for creating an application using APK Creator


That's all, we hope you found what you were looking for and were happy with our selection. This set of tools will become something special for a novice programmer and will allow you to understand the intricacies of creating the simplest applications for free.