Use of Doxygen tool to generate documentation of a project

Documentation is one such task which we as developers, find it boring to do in spite of knowing its importance. So, like we always do, we will take help from a tool. :)

Doxygen is a tool used for writing software reference documentation.
The documentation is written within code as we develop, and is  relatively easy to keep up to date.
Doxygen is a free software and can be used with C, C++, C#, Fortran, Java, Objective-C, PHP, Python, IDL (CORBA and Microsoft flavors), VHDL, and to some extent D.

Refer this for more information [[http://en.wikipedia.org/wiki/Doxygen]] and [[http://www.stack.nl/~dimitri/doxygen/]]

In order to generate a document using Doxygen tool, one has to write the comments in a specific way in the project files.

Methods – any description about the method should be done in this way so that the parameters and the return type appear clearly in the document.

Ex:
/**
Description of the method
@param param1 The first parameter
@param param2 The second parameter
@returns the returned object description
*/

Variables/Class – description must be enclosed within the following:
/** */


Steps to generate the document

Once you are done with writing the comments in your code follow these steps on how to go about using the Doxygen tool.

1.Download the latest Doxygen version onto your machine and then install it.
You can download it from here: [[http://www.icewalkers.com/Linux/Software/57870/Doxygen.html]]

2. After installation you will see a window as shown below.

Wizard -

  • Specify the working and the source code directories i.e; the project folder (for both it will be the same)
  • Select scan recursively
  • Specify one destination folder where you want the document file to be saved
3. Expert -
  • In Project section: Select javadoc autobrief

  • In Build section: Select Extract All

  • In LaTeX section: Deselect generate latex


4. Run – Run doxygen, Close.

5.Go to the destination folder and open the index.html file.

And Ta Daa :) A complete documentation of your project is ready in a matter of few minutes.


Android Development – Know the Platform and Architecture for Android apps development

Android Inc. first open its eyes at Palo alto, California USA in Oct 2003 by Andy Rubin along with his co-founder Rich Miner, Nick Sears and Chris White with the dream of giving a world smarter mobile device which will revolutionize the mobile market. Google acquired Android Inc. on August 17, 2005, making Android Inc. a wholly owned subsidiary of Google Inc.

At Google the story begins, the team led by Rubin (one of the key co-founder of Android) developed a mobile device platform powered by the Linux kernel. Google with a vision of changing the mobile platform started promoting; the developed mobile device platform marketed to various producers of handset and carriers and assures to provide a flexible, upgradable and advance system.android development india, android application Development

The Android platform has a extensive abilities, it is a encrusted environment built upon a foundation of the Linux kernel, and it includes the UI subsystems like Windows, Views and Widgets for demonstrating common elements such as edit boxes, lists, and drop-down lists.

Android possess a healthy range of connectivity options, which includes Wi-Fi, Bluetooth, and wireless data (for example, GPRS, EDGE, and 3G). A well-liked technique in Android applications is to link to Google Maps to explicate an address directly within an application.
The data-storage burden is eased because the Android platform includes the popular open source SQLite database.

The Android application can be plotted in a very simplest way just by downloading the Android SDK and eclipse IDE. Android development can also be done by using the tools like Microsoft, Windows, Mac OS X, or Linux.

Android application development tools which are available in free can make one willing to start developing software with very little cost. Once your apps is ready to run the show and display your imagination you can just publish it to the Google’s Android market. After a quick review process apps will be avail for the customer to buy and download.

1 Comment more...

Android Reshaping the World of Communication – Android Development

Android is spreading its wings and restructuring the way people communicate. Android empowers millions of phones, tablets and other devices also android browser brings the power of Google and the web at your fingertips. It’s a new, amazing and gives almost boundless landscape for app developers, this is the new exciting, innovative world of Android everywhere for everyone! Welcome to the world’s most popular mobile platform!!

Android provides an open platform for developing any apps one can imagine which is driving strong growth in app consumption, it gives app developers an open marketplace to sell and monetize their products to a huge growing user base it can be business or any segment of users. Android gives ample and huge open platforms, tools and devices to all kinds of businesses whether it’s starting a business or any large grown businesses, any big ideas or imaginations one can have, android can make it happen with the contribution of the open-source Linux community along with more than 300 of hardware, software and carrier partners. Android is giving new shape to a mobile communications and has becomes the fastest-developing mobile OS and application development.

Using the android browser one can view multiple open pages at once, by the use of incognito mode one can browse privately and also sync the Google Chrome bookmarks, so all the favorite sites you wish to have can be enlisted easily and you can access them with you on-the-go. When you download apps, they’re delivered directly to your device—instantly. Your favorites bookmarks sites can be saved for the latter use to read when you’re not online, which can be use for multiple needs like movie tickets reading news articles, train schedules and any related details you need. The info can be access in a very fast, powerful and easy way, like on your computer.

To date, 200 million activated Android devices are being used, and every day more than 550,000 new devices are activated in more than 137 countries. In the third quarter 2011 alone, people downloaded more than 2.4 billion apps to their Android devices.


Startup Weekend – Bangalore

Startup Weekend is coming to Bangalore! Startup Weekend is proud to announce that we will be holding our next event in March on the 11th to the 13th at the Microsoft Signature Building (Embassy Golf Links Business Park Intermediate Ring Road, Domlur). The event features attendees, speakers, mentors, and judges from within local entrepreneurial community. Participants come from diverse backgrounds such as design, business development, IT, coding and developing, legal, and marketing. Judges and interested mentor volunteers are drawn from the local community and are encouraged to offer advice and mentoring to the participants throughout the weekend and following the final presentations.
Register startup weekend
Over the course of 54 hours the teams go from a basic idea through the stages of business plan development and early deployment. Some teams are even able to create working versions of their website or smart phone application, all teams are able to learn from one another and leave the event knowing more about themselves than when they arrived. The final stage of the event occurs on Sunday night when the teams come together one final time to hear final presentations and receive feedback from the panel of judges. Prizes from local sponsors support the future efforts of the startup such as cash, donations of services or goods, and opportunities for further mentorship.

Startup Weekend: An Overview

Startup Weekend is a non-profit organization based out of Seattle, WA USA. We consist of a small full time staff of eight along with community leaders in cities all over the globe. Startup Weekend’s primary mission is to be the most valuable and influential organization in startup communities around the world. Startup Weekend doesn’t have to teach entrepreneurship in a boring classroom setting, we model it in a fun, interactive, and results driven way. As a result, we have become one of the leading catalysts for startup creation, co-founder dating, and entrepreneurship education in startup ecosystems around the world.

Registration: http://bangalore.startupweekend.org/tickets/


Insert and modify Contact in Android

Android 2.0 provides new Contact API, which is defined in  android.provider.ContactsContract.  After some try on contact api I found a better and easy solution for insertion and modification of contact.

Insert contact -

Intent addContactIntent = new Intent(Intent.ACTION_INSERT, ContactsContract.Contacts.CONTENT_URI);

addContactIntent.putExtra(ContactsContract.Intents.Insert.NAME,

"xyz");

addContactIntent.putExtra(ContactsContract.Intents.Insert.EMAIL,

"abc@gmail.com");

addContactIntent.putExtra(ContactsContract.Intents.Insert.PHONE,"012345678");

startActivity(addContactIntent);

ACTION_INSERT will start .EditContact activity.

Edit contacts -
  • If _ID of contact is known -

Intent intent = new Intent(Intent.ACTION_EDIT);

intent.setData(ContentUris.withAppendedId(ContactsContract.Contacts.CONTENT_URI, _ID));

startActivity(intent);

  • If _ID of contact is not known -
i) Find out conatct _ID by phone number .
// CONTENT_FILTER_URI allow to search contact by phone number

Uri lookupUri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(getPhone()));

// This query will return NAME and ID of conatct, associated with phone //number.

Cursor mcursor = getContentResolver().query(lookupUri,new String[] { PhoneLookup.DISPLAY_NAME, PhoneLookup._ID                    },null, null, null);

//Now retrive _ID from query result

long idPhone = 0;

try {
if (mcursor != null) {
if (mcursor.moveToFirst()) {
idPhone = Long.valueOf(mcursor.getString(mcursor .getColumnIndex(PhoneLookup._ID)));
Log.d("", "Contact id::" + idPhone);
}
}
} finally {
mcursor.close();
}

ii) Then Edit contact

if (idPhone > 0) {

Intent intent = new Intent(Intent.ACTION_EDIT);
intent.setData(ContentUris.withAppendedId( ContactsContract.Contacts.CONTENT_URI, idPhone));
startActivity(intent);
} else {
Toast.makeText(getApplicationContext(), "contact not in list",
Toast.LENGTH_SHORT).show();
}

You can also search _ID by partial name, for this instead of PhoneLookup.CONTENT_FILTER_URI use ContactsContract.Contacts.CONTENT_FILTER_URI
To work with contact, you have to define special permission in AndroidManifest.xml .

<uses-permission android:name="android.permission.READ_CONTACTS" />

<uses-permission android:name="android.permission.WRITE_CONTACTS" />


Historical timeline charts related to computer/electronics

Android

iPhone

Apple

Mac

Bill Gates

Linux

Windows CE

Various Mobile OS

Excel

Photoshop

Intel

Sony

Nokia

Social Media

Search Engines

Programming Languages

W3C(Internet)

Game Technology

NFS Car Racing Game

CellPhone

Electronics

Universe(Space)

Software

Hardware


Request Class Details

For importing Request Class use following statement
use Symfony\Component\HttpFoundation\Request;

Following statement creates object of class “Request”
$request = Request::createFromGlobals();

// the URI being requested (e.g. /about) minus any query parameters
Every Index of $_SERVER global variable can be accessed using Request object with using get method
so for example to get $_SERVER['PATH_INFO'] using Request Object use following statement.

$request->getPathInfo();

// retrieve GET and POST variables respectively
$request->query->get(‘foo’);
$request->request->get(‘bar’);

// retrieves an instance of UploadedFile identified by foo
$request->files->get(‘foo’);

$request->getMethod(); // GET, POST, PUT, DELETE, HEAD
$request->getLanguages(); // an array of languages the client accepts

List of functions available in Request class can be accessed via following link\

http://api.symfony.com/2.0/Symfony/Component/HttpFoundation/Request.html


File size limit exceeded linux error

This error can be fixed by checking command uname -a.
Here it will display max limits assigned to various resources.
If even after assigning limits it is giving error it means one of your logs is having size which has exceeded the limit. Try by clearing your logs then everything must work fine.

1 Comment more...

Innovative Test Cases and Expected Results for Accelerometer, Compass And GPS

In current mobile technology, we use accelerometer, compass and GPS in latest mobile models. Here some innovative test cases and expected results of those components, when we test in some places like in the space, on any other planet, satellite, center of gravity of earth and center of magnetic field of earth. Those cases are discussed as following:

1. In space: In space, accelerometer, compass and GPS will not work. because accelerometer and compass have required gravity and magnetic field respectively. But when we use accelerometer and compass nearer any planet, then we get relative values as that planet’s field with some accuracy. and GPS will not work, if we are close to any other planet excluding earth. Because for GPS usage, we require human invented working satellites.

2. On any other planet (excluding earth): Still GPS will not work in any other planet. and we get relative values of accelerometer and compass as that planet.

3. On center of gravity of earth: We cannot predict results for accelerometer and GPS. It is possible that we get garbage values for accelerometer. and compass will work proper because location of center of gravity and location of center of magnetic field of earth are different.

4. On center of magnetic field of earth: In this case, we get garbage values for compass and get proper values for accelerometer and GPS. But still It is possible that if there is any relationship between gravity and magnetic field, then we get unknown results for accelerometer.

For all those cases, I expect results based on physics theories, but still we cannot guess exact results. Those all will work on so many parameters, planet atmosphere and other theories.

-Samir Solanki


Nine Patch Images useful for android

Android devices come in different screen sizes and density, often making it very difficult for developer to design an application for all screen sizes. Use of nine patch images can be very helpful for them. Mostly nine patch images are used as background for Buttons, Texts, Frames. Android provide a tool for creating nine patch images. It is available in android-sdk/tools directory named as draw9patch.
What is nine patch?
Nine patch images are simply PNG images with 9 patches as explained in figure -
1,3,7,9 – Not scalable area
2 – Horizontal scalable area
4 – Vertical scale area
6,8 – Text Area
For scaling purpose you have to give guideline for both area(2,4). Otherwise converted nine patch image will not be proper nine patch.
ex -
So basically the intersection of horizontal and vertical guideline’s pixels will replicate. Guidelines for text area is optional.
Nine patch images can not be scale down, so use of mdpi images are baseline for dp scaling(Ignoring ldpi). Here is a link to learn how to draw nine patch images- http://developer.android.com/guide/developing/tools/draw9patch.html

  • TechJini Solutions

  • © Copyright 2009 TechJini Solutions Private Limited. All Rights Reserved
    iDream theme by Templates Next | Powered by WordPress