Cross-platform mobile development framework

Source: Internet
Author: User
Tags network function corona sdk
The framework mentioned here. The original English version is framework. Because we are looking for a suitable mobile game engine recently, we have compared some open-source and commercial frameworks, including some of their documents, as well as the use and sharing of Forum and blog developers, with a simple harvest, record it.

Each framework has a specific user group, so it is hard to say which framework or engine is the best, it can only be selected based on the functional requirements of application development and developers' personal preferences on tools and languages. Some frameworks are not currently used, however, it does not mean that you will come back to reevaluate an application in the future.

However, the defects of some of these frameworks are worth noting. You cannot find that too many problems after using this framework for a while, the solution takes more time than independent development for each platform.

Because the previous project used unity3d (http://www.unity3d.com/), the current feeling is that this engine is quite good, especially for the art staff is quite friendly, its performance in cross-platform is also very powerful, although the mobile phone platform currently only supports iOS and Android, this is enough. Currently, 0.5 million of Unity developers are sufficient to prove its excellence, and some plug-in developers and Tool developers around it, there are also a large number of asset providers that have built unity into an industry circle.

However, Unity's strength lies in the development of 3D games. Although its UI components can also be used to build 2D games, it is still awkward and not intuitive to use.

Another very good framework cocos2d (http://www.cocos2d-iphone.org/), this is really only a framework, because it is just a set of APIS, not as well as unity has a sound development tool, and cocos2d can only be released to iOS platform and Mac platform, If you need cross-platform can use Chinese people transplanted Cocos2d-X project.

Taking a look at the project list on the cocos2d website is really exciting. So many projects that once ranked top 10 seem to have succeeded right now. Cocos2d is a framework that I have been paying attention to for a long time. It is really good to use it to write simple games.

However, the biggest problem with cocos2d lies in the lack of tools. To use cocos2d, programmers must implement scene construction, animation control, and so on. Of course, you can also use open-source tools such as tiled to edit maps. However, compared with unity, the functions can only be described in a simple way, in particular, collaboration between programs and Fine Arts is unfriendly.

Of course, it doesn't matter if you can handle all these tasks by yourself.

Sparrow framework (http://www.sparrow-framework.org), a game development framework similar to cocos2d. Sparrow is not a cross-platform development framework. It only supports IOS. It provides a set of Apis similar to flash/flex, so it is advantageous for those with Flash development experience. However, tools are also missing and difficult to use.

Torque 2D (http://www.garagegames.com/products/torque-2d) is a relatively old game engine, including a relatively complete development tool, its level editor and unity is also what you see is what you get, the horizontal pass games and 45-degree oblique map games are well supported. They use a self-implemented Script Engine and C ++-like syntax.

One of its branch iTouque-2d can publish the app to iOS, but it does not currently support publishing to Android, which should be considered torque's biggest problem at present.

Corona SDK (http://www.anscamobile.com/corona/), similar to cocos2d named another excellent framework, in the early days of Apple's third-party language development app is also strictly prohibited when this tool has appeared, when I noticed this framework, Apple began to ban third-party programming languages. At that time, Corona was still doing low-price promotions. Unfortunately, I didn't buy J.

Similarly, taking a look at the showcase list of the corona SDK will also be excited, so many excellent apps, but there are still some problems:

Without an integrated development environment, you must write an app in a row in Lua language.

Android support is still very imperfect. corona is basically transplanted to Android after IOS is mature. This porting is still in an early stage, so don't expect its performance on Android to be good. It will be nice to be able to run normally.

The biggest problem is that an application developed using corona must be submitted to its server for compilation and generation of an app. Of course, you can use a local Simulator for development, however, the final release package must be generated on the server. Therefore, you must pay an annual license fee of $349, which is much higher than Apple's annual fee.

Monkey (http://www.monkeycoder.co.nz) is a framework similar to Corona, but it is a little better than Corona, if from the developer's perspective alone.

Monkey uses the Bliz BASIC language to develop applications, compile and generate the project of the target platform, and compile the project into an app according to the normal development process. This process is basically similar to Corona, but the compilation process is performed locally. Therefore, you can modify the process after the target project is generated, in this way, functions on a specific platform can be added and modified separately.

In addition, the monkey Authorization Fee is much lower than Corona, and only one payment is required, and the authorization fee is only USD 120.

The problem with monkey is that it is still in the early stage of development. Currently, only the most basic functions are available in the released version. For game development, you also need to add physical support, particle system, if you want to add the network function, you have to do it yourself. Of course some enthusiastic users in the Community disclose part of their code, but, you know.

Phonegap (http://www.phonegap.com/), if you search for "cross platform mobile application framework" on Google, the first result is phonegap. Of course, this may be related to the selected keyword. If you change the keyword to "cross platform mobile app development", the first result is Corona, and the second result is phonegap.

Phonegap promotes the only development framework that supports six mobile platforms at the same time. That's right, because its application is based on HTML and it is easier to implement cross-platform. However, phonegap also encapsulates some system-level APIs as JavaScript APIs for application developers, and then starts a webview to load the actual applications.

This approach basically limits the application of phonegap to the Web type, which is not suitable for game applications. Of course, J is excluded for Web SNS games.

As to why you want to use phonegap instead of directly enabling players to open a URL using safari, there are basically two reasons: first, the application may need some underlying system functions, such as obtaining geographic location information, or a camera, etc. The other case is that an independent app can be put on the store for a fee, and the URL fee is not that convenient.

Titanium (http://www.appcelerator.com/), also in the above search results, you probably have noticed this name. The titanium homepage promotes m active developers, K apps, and 20 m active users. I don't know if there is any moisture, but titanium is free and open-source, therefore, it may not be surprising that there are so many registered developers. Titanium's business model relies on providing technical support and training for profit, which is a good thing for general developers.

However, like phonegap, titanium is also used for mobile application development of Web classes. However, titanium seems to have gone further and compiled some UI components into native code, this makes the application look more like it was developed for this platform. In terms of function implementation, titianium has a built-in JS script engine, which is more powerful than phonegap's direct use of webview.

However, there were a lot of complaints on the stackoverflow and titanium forums. The problems were concentrated on the document's aging and bug fixes too slowly. In addition, the cross-platform support was not complete, A large amount of specific code needs to be written for different platforms, which is critical to application developers.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.