Article Side

Online Article Directory!

Hello Guest! Login or Register to submit articles!

How to utilize NDK for Android Application and Game Development

By Pradeep Hunka Subscribe to RSS | April 24th 2012 | Views:
loading
 
  



Android software development is the process by which new applications are created for the Android operating system. Android applications are generally developed in the Java programming language using the Android Software Development Kit, but other development tools like NDK are also available.

What is NDK?

NDK is a software development tool for development of android applications and games. Android development using SDK is done in Java. NDK allows the user to implement parts of applications using native code languages such as C and C++. Therefore, it is called as Native Android Development.The Android NDK is available for three platforms- Windows, Mac OS X(Intel), Linux 32-64 bit(x86).

Using NDK proves beneficial in the sense, that it allows the user to generate native code in certain class’s applications, in the form of reuse and increasing performance in certain cases. The Android NDK is always used with the Android SDK. To run the Android NDK, the user must have a complete installation of the Android SDK installation (including all dependencies) and an Android 1.5 SDK or later version. Native classes can be called from Java code running under the Dalvik VM using the System.loadLibrary call, which is part of the standard Android Java classes.

Contents of NDK

The NDK contains the APIs, documentation, and sample applications that help you write your native code.

The NDK includes a set of cross-toolchains (compilers, linkers, etc.) that can generate native ARM binaries on Linux, OS X, and Windows (with Cygwin) platforms.

It provides a set of system headers for stable native APIs that are guaranteed to be supported in all later releases of the platform:libc (C library) headers,libm (math library) headers, JNI interface headers, libz (Zlib compression)headers, liblog (Android logging) header, OpenGL ES 1.1 and OpenGL ES 2.0 (3D graphics libraries) headers, libjnigraphics (Pixel buffer access) header (for Android 2.2 and above), minimal set of headers for C++ support, OpenSL ES native audio libraries, Android native application APIS.

Ways to use native code

The Android framework provides two means in which the native code can be used for Android application development:-

1) Write your application using the Android framework and use JNI to access the APIs provided by the Android NDK. This technique allows you to take advantage of the convenience of the Android framework, but still allows you to write native code when necessary. You can install applications that use native code through the JNI on devices that run Android 1.5 or later.

2) Write a native activity, which allows you to implement the lifecycle callbacks in native code. The Android SDK provides the NativeActivity class, which is a convenience class that notifies your native code of any activity lifecycle callbacks (onCreate(), onPause(), onResume(), etc). You can implement the callbacks in your native code to handle these events when they occur. Applications that use native activities must be run on Android 2.3 (API Level 9) or later.

Required development tools

1) For all development platforms, GNU Make 3.81 or later is required. Earlier versions of GNU Make might work but have not been tested.

2) A recent version of awk (either GNU Awk or Nawk) is also required.

3) For Windows, Cygwin 1.7 or higher is required. The NDK will not work with Cygwin 1.5 installations.

It is recommended to use NDK only when it is necessary for the application. Its use should not be governed by the preference to use a certain languages the use of native code may not necessarily lead to increase in speed of the program. Using NDK will always increase the program complexity.

About Hunka Technologies

Hunka Technologies is on one of the leading mobile applications development company based in India. Hunka specializes in Apple iphone application development, android application development, windows mobile application development and HTML 5. Hunka also has a specialized team for iphone game development, ipod & ipad game development and android game development. For more information please check our website: http://hunkatech.com

Pradeep Hunka - About Author:

Share on Facebook Tweet It Stumbleupon this post This post is delicious !

Article Source:
http://www.articleside.com/software-articles/how-to-utilize-ndk-for-android-application-and-game-development.htm

Related Software Articles Subscribe to RSS

What does the software development kit assist for efficient Google's Android application development?
Published by Robert Woodard on May 14th 2012 | Software
The Google's Android SDK supports creating 2 types of mobile applications. These 2 would be the nati...
 
Mobile website development – the prevailing parameters
Published by Angel on August 24th 2012 | Software
Enthusiastic developers go all out to produce great results out of mobile web development programs. ...
 
Advantages of Custom Software development in a Small Organization
Published by Van Sanchez on June 5th 2012 | Software
Custom software development could support small businesses in some locations. These places integrate...
 
Testing is a necessary part in web development solutions that each and every developer should be able to plan well
Published by Williamsalas on June 11th 2012 | Software
Another crucial part in web development solutions is definitely testing. Testing ought to be carried...
 
Understand the Four Primary Significant Parts in the iPhone application development Methods?
Published by Jared Oates on May 14th 2012 | Computer
iPhone application development has actually obtained incredible worldwide popularity nowadays. It's ...
 
Risks associated with offshore web development services
Published by Jon on March 20th 2012 | Software
Offshore software development (OSD) has a number of specific risks that can control the choice of en...
 
Precisely what is Financial Automation Software development most relating to and just what does it embody?
Published by Josejames on June 12th 2012 | Software
As a software developer, you could present a variety of services to customers. Yet, you must bear in...
 
Reverse Osmosis Process with the development of membranes that could be used to desalt water
Published by Jamesarmstrong2011 on July 19th 2012 | Computer
Reverse osmosis is a process whereby a pump is used to pressure water through a membrane, and away f...
 
Get higher return on investment from iPhone app development
Published by Terry Littrell on May 18th 2012 | Software
The article is on the iPhone application development, the offerings and capabilities the iPhone is a...
 
Custom iPhone app development benefits businesses
Published by Terry Littrell on May 18th 2012 | Software
The article is about iPhone apps development which is a huge sector dedicated to the development of ...
 
What are the advantages offered by mobile website development?
Published by Angel on December 28th 2011 | Software
With the aid of mobile website development program, a company can build an effective mobile website ...
 
Exactly about Android Markets necessary to learn for Android Developer regarding successful app development
Published by Van Sanchez on May 29th 2012 | Computer
As android app market is increasing rapidly, it proffers excellent opportunities to android develope...
 
New Trends in Mobile application development
Published by Etisbewcorp on August 23rd 2012 | Software
Mobile Application Development methodology
With the consumer market getting giddy in anticipatio...
 
Adopt Rich Internet Application Development for web development
Published by Elan Technologies on December 26th 2011 | Software
Rich Internet Applications are web based applications that have characteristics similar to desktop a...
 
Leading company offering Custom software development services to its clients
Published by Coloprilreview on November 25th 2011 | Software
Unique Solutions of Advanced Technologies has exceptional skill and expertise to provide Custom soft...
 
Novel ways for business owners to get the best from mobile app development project
Published by Angel on May 30th 2012 | Software
A business owner can bring in more sales by making diligent use of apps, built through successful mo...
 
Offshore software development companies and various technology platforms
Published by Elan Technologies on January 2nd 2012 | Software
Software development companies have to constantly update their skills with the changing technology p...
 
Technical knowledge and innovative ideas are important application development
Published by Anoop TU on May 31st 2012 | Software
Communication section have been developing very much nowadays with the dynamic telecom sector. Smar...
 
Mobile-application-development recording a great achievement?
Published by Spassurance on December 14th 2011 | Software
The most significant feature of any smart phone is the ever developing applications. They are what m...
 
B2B website development in ASP call us now 954-397-0800
Published by Sigma Solve LLC on July 13th 2012 | Software
Sigma Solve LLC Provides Best Web Portal Development in ASP.NET Services by Experts ASP.NET Develope...