Isnin, 1 Oktober 2012

6 Best Cross platform mobile development tools


Everyone uses different kinds of mobile devices built using different mobile operating systems.The two popular mobile Operating system are iOS and Android since these two contribute majority of market share.
Not just two,windows phone 7,blackberry OS are also popular in mobile space.So if you are a developer who want to build applications for mobile ? the very first obvious question that rise in your mind would be “which platform to choose ?”
Developers often choose a platform which reaches to more people or devices hence they develop applications in one common language and deploy them to all the popular platforms at once-This is called as cross platform mobile development.
The common language is HTML5,CSS and JavaScript.You can develop applications usingHTML5 standard and deliver as native app to all mobile platforms using tools and frameworks.This is 1:N ratio which means develop for once platform deliver to all.
Here are the top cross platform development tools that are ranked based on the popularity among developers, functionality and ease of use for beginners.
Phonegap
phonegap
Phonegap
Phonegap,opensource cross platform development tool that recently released version 1.0 supports six major mobile operating systems like iOS, Android, BlackBerry, webOS, Bada and Symbian.Has wide variety of device API’s that makes different kinds apps possible.Phonegap’s maker Nitobi is acquired by adobe and it is now a part of apache software foundation. Phonegap is now called as ‘Apache callback’.
Appcelerator
appcelerator
Appcelerator
Appcelerator,opensource platform not only supporting html5 and javascript it also supports PHP,ruby and python.Supports with 300+ api’s for Android,iOS devices.
Appmobi
appmobi
appmobi
Appmobi a hybrid platform that can deliver apps for mobile and chrome web app store.Supports development on HTML5, JavaScript and css3.This platform itself delivered as web app on chrome browser,you can build apps straight from the browser.This platform provides sophistication until the app delivered to the app stores.This would be the best place for beginners.[Read our tutorial:Getting started with appmobi's phonegap SDK]
Rho mobile
rhomobile
rhomobile
Rho mobile offers rhodes,opensource framework that supports iOS, Android, Windows Mobile, RIM and Symbian devices.Rhodes can be even used to build apps that needs to access device GPS and camera data.You can use rhodes to develop apps built on html and ruby.
Mosync
mosync
mosync
Mosync sdk 2.0 can be used to build mobile applications using C and C++.Yes !.Mosync provides IDE to develop native application for iOS,android, Symbian,meego and blackberry.Its free to download for Independent developers and others have spend some bucks.
Sencha
sencha
sencha
Sencha provides high quality User Interfaces for your mobile apps that can be easily created using HTML and CSS.You can create Native app like rich UI using sencha framework for iPhone, Android, and BlackBerry devices.
Corona
corona
corona
Corona offers SDk to build game apps for iOS and Android devices seamlessly,with few lines of code you can make game apps up and running.The framework is supported by HTML and Lua programming language.
It depends on the situation & Time whether you need to go for native programming or cross platform framework.Decide wise!

Native App vs. Mobile Web App: A Quick Comparison


Native App vs. Mobile Web App: A Quick Comparison
A light bulb goes off. You have the next great idea for a mobile app that you want to develop. It’ll change lives. It’ll make you millions. What’s the next step you need to take?
One of the things you’ll need to decide early on in your mobile application development process is how you’ll build and deploy your app. There are two main directions you can go: native app or mobile web app. In this article, we’ll talk about the differences between the two so you can make an informed decision.

Native App vs. Mobile Web App: Definition

First, let’s define what we mean in this article when we say "native app" and "mobile web app".

What is a Native App?

A native app is an app for a certain mobile device (smartphone, tablet, etc.) They’re installed directly onto the device. Users typically acquire these apps through an online store or marketplace such as The App Store or Android Apps on Google Play.
Examples of native apps are Camera+ for iOS devices and KeePassDroid for Android devices.

What is a Mobile Web App?

When we talk about mobile web apps in this article, we’re referring to Internet-enabled apps that have specific functionality for mobile devices. They’re accessed through the mobile device’s web browser (i.e. on the iPhone, this is Safari by default) and they don’t need to be downloaded and installed on the device.

Comparison of Native App vs. Mobile Web App

Let’s do a quick rundown and evaluate native apps versus mobile web apps under these factors:
  • User interface
  • Development
  • Capabilities
  • Monetization
  • Method of delivery
  • Versioning of the app
  • Strengths
  • Weaknesses

User Interface

Some companies choose to develop both a native app and a mobile web app. Here’s a side-by-side look at Facebook’s native app and mobile web app:
Notice that, in terms of the general look-and-feel, there’s little difference between the two, making for a consistent user experience.

Development

Native AppsMobile Web Apps
Each mobile application development platform (e.g. iOS, Android) requires its own development processRuns in the mobile device’s web browser and each may have its own features and quirks
Each mobile application development platform has its own native programming language: Java (Android), Objective-C (iOS), and Visual C++ (Windows Mobile), etc.Mobile web apps are written in HTML5, CSS3, JavaScript and server-side languages or web application frameworks of the developer’s choice (e.g. PHP, Rails, Python)
Standardized software development kits (SDKs), development tools and common user interface elements (buttons, text input fields, etc.) are often provided by the manufacturer of the platformThere are no standard software development kits (SDKs) that developers are required to use to make a mobile web app
There are tools and frameworks to help in developing apps for deployment on multiple mobile OS platforms and web browsers (e.g. PhoneGapSencha Touch 2, Appcelerator Titanium, etc.)

Capabilities

Native AppsMobile Web Apps
Can interface with the device’s native features, information and hardware (camera, accelerometer, etc.)Mobile web apps can access a limited amount of the device’s native features and information (orientation, geolocation, media, etc.)

Monetization

Native AppsMobile Web Apps
Mobile-specific ad platforms such asAdMob (though there can berestrictions set by the mobile device’s manufacturer)Mobile web apps can monetize through site advertisement and subscription fees
Developers have the ability to charge a download price and app stores will typically handle the payment process (in exchange for a percentage of sales)Charging users to use the mobile web app requires you to set up your own paywall or subscription-based system

Method of Delivery

Native AppsMobile Web Apps
Downloaded onto a mobile deviceAccessed through a mobile device’s web browser
Installed and runs as a standalone application (no web browser needed)No need to install new software
Users must manually download and install app updatesUpdates are made to the web server without user intervention
There are stores and marketplaces to help users find your appSince there is no app store for the Mobile Web, it can be harder for users to find your app

Versioning of the App

Native AppsMobile Web Apps
Some users may choose to ignore an update, resulting in different users running different versions of the appAll users are on the same version

Strengths

Native AppsMobile Web Apps
Typically perform faster than mobile web appsHave a common code base across all platforms
App stores and marketplaces help users find native appsUsers don’t have to go to a store or marketplace, download the app and install the app
App store approval processes can help assure users of the quality and safety of the appCan be released in any form and any time as there isn’t an app store that has to approve the app
Tools, support and standard development best practices provided by device manufacturers can help speed up developmentIf you already have a web app, you can retrofit it with a responsive web design

Weaknesses

Native AppsMobile Web Apps
Are typically more expensive to develop, especially if you’re supporting multiple mobile devicesMobile web apps can’t access all of the device’s features (yet)
Supporting multiple platforms requires maintaining multiple code bases and can result in higher costs in development, maintenance, pushing out updates, etc.Supporting multiple mobile web browsers can result in higher costs in development and maintenance, etc.
Users can be on different versions and can make your app harder to maintain and provide support forUsers can be on different mobile browsers and can make your app harder to maintain and provide support for
App store approval processes can delay the launch of the app or prevent the release of the appFor users, it may be harder to find a mobile web app because of the lack of a centralized app store (though listings do exist such as Apple’s Web apps and you can request to be listed in them)

Native App vs. Mobile Web App: How Do You Choose?

To help you decide how you should build your mobile app, ask yourself these questions:
  • Does the mobile app require the use of any special device features (i.e., camera, the camera’s flash, accelerometer, etc.)?
  • What’s my budget?
  • Does the mobile app need to be Internet-enabled?
  • Do I need to target all mobile devices or just certain devices?
  • What programming languages do I already know?
  • How important is speed and performance?
  • How will this app be monetized effectively?
Answering these questions can help you make an informed decision.

Conclusion

Whether you decide to build a native app or a mobile web app depends on many factors: business objectives, target audience, technical requirements and so on.
You don’t necessarily have to choose between building a native app or a mobile web app. As mentioned earlier, companies like Facebook maintain both native apps and a mobile web app. However, for many of us, budget and resource constraints will require us to decide if we need to build a native app or a mobile web app (or, at least, will require us to prioritize which one to develop first).

Related Content

About the Author

JT Mudge is the co-founder and technical director of LitmusBox, a web development services company. He’s been involved in web development and Internet business consulting for over 15 years. You can reach JT via hiswebsiteLinkedIn and Twitter (@jtmudge).

22 Comments

Adam S
Of course, the big problem with this article is that Facebook – used as the real measure here, is actually mostly HTML5. There is an Objective C frame, but ultimately, Facebook’s content is written in HTML. It’s loaded – all the HTML, JS, and CSS – and rendered and displayed locally. That’s why the app is dog slow.
Rumors that Facebook are just days away from releasing a true native story are everywhere. Only then will I consider Facebook a “native” app. Any app that is just a wrapper around Webkit is more like a “halfway native” app.
Chris
The irony of the comparison is that the Facebook iOS app isn’t native. It’s a HTML5 wrapper. So you’re still loading a web page.
Deltina Hay
Great article, JT! Nice balanced comparison…
Charlie
Programming for Windows Phone 7/8 will let you leverage any of the .Net languages (VB.net / C# / F# etc)
MichaelC
I guess you’re not aware, but the Facebook app is just a wrapper around a web app. So, as far as representing native apps, it really doesn’t. Path would be a better example of a native app, if you want to stick with social networking. Others would be Tweetbot, Paper, or Netflix. If you’re going to try and compare the two, choosing a proper native app will make for a much better comparison.
Tavis
Great article JT!
John
This is a bad example because Facebook iPhone app is not exactly a native app. All they do is use a webview controller to display their mobile app.
They recently announced that due to the slowness of this approach, the next version of the Facebook app will actually use the native code instead of relying on the webview.
Matt Galligan
Solid info. One criticism though is that you use Facebook as your example of Native vs. Mobile Web apps. As far as Facebook’s iOS “native” app is concerned, only the chrome of the app is actually native. All of the other experiences inside of the window are actually HTML5 and not truly native. This leads to a far degraded user experience and it’s quite slow.
A better example might be to show off the Twitter native app vs. the Twitter mobile web app.
Just my $0.02.
Abdullah
Very helpful post thank you very much for these hints.
DyanGalih
How if use phonegap? http://phonegap.com/. It’s can make Mobile WebApp to Native App like. Write in html5, js, and css, but still can access all hardware device.
raybak
Nice article.. so overall it looks to me that mobile web app is more beneficial for small apps..
Amr ElGarhy
Nice article,
It will be nice to share with us some successful famous Mobile Web Apps to check.
Graham Perry
Great article JT.
Another advantage of native apps is they can store data locally – useful if you can’t connect to the internet.
K. Olsen
Great article. Very useful information.
Keep up the good work JT ;-)
Norik Davtian
The comparison is great except that the example is a hybrid app and not a native app as others mentioned here. I think if there was a hybrid app comparison in there would have made more sense. As @DyanGalih mentioned, phonegap is one of the tools to create these hybrid apps. Basically with hybrid apps you are running a mobile web app in a native code frame.
Hans Sandholt
Great article. One major advantage with native app’s is the app can be useful even if the phone is not connected to the internet. This is crusial if information stored on the phone should be available for postprocessing etc.
Mimmis
Nice overview, JT!
With a cross-platform development environment like the MoSync SDK (www.mosync.com/sdk) and with MoSync Reload (www.mosync.com/reload), you don’ have to settle for all these limitations in mobile web apps vs. native apps. You can create apps for up to nine different platforms at once using the same code base and one SDK. If you prefer to use standard web technologies (HTML5/JavaScript) for your development, you can use MoSync Reload to easily create and output true native apps, taking advantage of all the native features of modern smartphones. Check it out – it might be a good fit for all those developers out there that want to create apps for multiple platforms and who want to enter mobile.
Long Nguyen
The Facebook “native” app is even slower than the web app. Guess why? Because the UIWebView within native app doesn’t have Nitro.
Roy Smith
This is an excellent comparison of native vs. mobile apps. My only comment would be to point out that there is significant work being done by browser developers to add javascript device APIs to their browsers, which will allow web apps full access to the device’s hardware.
appMobi released “MobiUs” on iOS about a year ago, and it had full device API capability. Unfortunately Apple pulled it from the app store when it was open sourced in November. More recently, Mozilla and Dolphin have both announced or released betas of browsers with JS APIs that allow web apps full access to the device.
If you take away that distinction between Native and Web apps, the only thing left as a defining difference is UI speed, which can be an issue depending on what the app is trying to do on screen. Plenty of work going on to fix that as well – appMobi has delivered 10x speed improvement for games with directCanvas, and the jqMobi web app framework delivers native-like UI features on webkit browsers on both iOS and Android.
Probably the key advantage of web apps is the avoidance of the “Apple Tax” of 30% on all your monetization, and not having to be approved by the Apple App store before your app can be used. The downside, of course, is that you have to promote and deliver your web app yourself, as there is no central “web app store” yet.
Tom
One thing is certain. It is much easier to make a mobile web app. At least for me.
Patrick Ezell
The earlier comments are right on, Facebook isn’t a good comparison app.
The conversation of native vs web isn’t a simple one, the right choice is different for each situation – and there are times where you can roll a 80% native app and 20% might be served through mobile web, the trick is to make the entire experience feel like a native app. If a user doesn’t know then you’ve achieved your goal.
A couple high profile examples of a mobile web app:
Youtube (not what apple built/installs on iOS, visit youtube via your mobile web browser)
LinkedIn – All of LinkedIn’s native apps that you can install on your device are mobile web apps “wrapped” in a thin device specific wrapper so they can get into the devices app store. LinkedIn relies heavily on Node.js for speed and try and recreate a native app like experience. In a lot of ways they were successful, but for some users ( and if you’re looking for it ) you’ll see areas where movement, gesture interaction and loading of content that lower level of experience.
Example: On the iPad compare LinkedIn’s news section to flipboard. For the main app experience on Flipboard its all native – now there are places depending on the source of content where you will see web views pulled in – but overall the experience is of a much higher caliber. Now use LinkedIn on the iPad – this is all web app driven – its impressive what they did with mobile web – but its not the same as native.
Rey
Thanks, really good article on comparison.

Selasa, 26 Jun 2012

How to create Outlook letterheads and templates


dots Introduction

Despite the abundance of Outlook add-ons and plug-ins for adding letterheads and templates to your emails, MS-Outlook by itself offers an easy way to create and use your own letterhead and message templates. It may not be the way you imagined, but it works.

dots What's the point?

MS-Outlook offers two ways of creating message templates: using the Stationery feature or using Signatures. However, by using Stationery templates you can not insert a picture as an image within the template (not as a background picture), so you can only create templates with background images. As a result you can't have a simple letterhead image and a default greetings text inserted into every outgoing email.

TIP: you can use the Signature features to create email message templates or letterheads, although the Signature function was not necessarily designed for letterheads. 

dots How do I create my Outlook letterhead template?

The following steps explain how to create Microsoft Outlook letterhead templates, using MS-Outlook 2003.
  • Open MS-Outlook, open the menu "Tools->Options".

    Outlook Stationery
  • Select the "Mail Format" tab, then at the bottom of the window, click on "Signatures...".

    Outlook Signatures
  • Enter a name for your new template, then choose to start from a blank signature and click on "Next".

    Signature Template
  • If you wish to add a letterhead to your message template, then right click within the Signature text edit area, then select "Insert Image...".

    Outlook letterhead image
  • Browse to select the desired letterhead image, add an alternate text to it, modify the layout so the alignment is set to "top", then click on "Ok". You can use any image editor to create a simple, nice looking letterhead image.

    Picture Properties
  • If you wish to add a default text to each outgoing email, like a text signature or a default greeting message, then add the text below the letterhead image, on the signature text edit area. You can also add a link to your site, by selecting the text above which the link will apply, then right click and choose "Edit Hyperlink".

    Outlook Link
  • When you are done, click on "Finish".


  • This is how our new letterhead looks:



    Back to the Email Tips Index.
    Microsoft and Outlook are registered trademarks of Microsoft Corporation. Microsoft Corporation in no way endorses or is affiliated with EmailAddressManager.com. All other trademarks are the sole property of their respective owners.
  • Rabu, 11 Januari 2012

    How to fix image embeded from flickr using wordpress.

    1) edit ur css in admin word press like :-



    - just add width="100%" height="100%" to fix the image on ur page.

    reload. thx.

    Selasa, 6 Julai 2010

    Windows XP Crashed - Repair - Need to insert CD Windows XP Original

    This is just a screen showing you that your computer is loading enough files from the CD to actually do something, anything but that awful blue screen
    . Now when you see the screen that asks you if you want to install Windows, don't! Just hit R for recover, and you'll see the ominous Recovery Console. Don't let that intimidate you; the Recovery Console is your ugly, black-suited friend. It will have a dark, bleak screen, with the following stuff:

    Follow the steps:-

    Microsoft Windows(R) Recovery Console
    The Recovery Console provides system repair and recovery functionality.

    Type EXIT to quit the Recovery Console and restart the computer.

    1: C:WINDOWS Which Windows Installation would you like to log onto (To cancel, press ENTER)?

    Go ahead and hit the number 1 on your keyboard, or whichever number corresponds to the operating system you were using when havoc struck. Enter your administrator password, and then hit enter. You're in! Now it's time to run with the big dogs! Do not be afraid, dear reader, I am here to help you. By the way, if you don't know your administrator password, just try hitting the Enter key, and if that doesn't work, well, there's a fix for that, too.

    Just go to the following site and get the necessary tools to get you in: http://www.petri.co.il/forgot_administrator_password.htm. If you type the following commands into your computer, it will work magic, akin to going back in time. There are three parts to this process, but believe me, they take much less time than reinstalling Windows XP and all your applications. So follow along with me, and keep in mind that each command must be typed exactly as you see it here. Please note that this procedure assumes that Windows XP is installed to the C:Windows folder. Make sure to change C:Windows to the appropriate windows folder if it's at a different location. The copy commands will answer you with a little "file copied" message. The delete commands just move on to the next line. Because of the way your Web browser displays individual lines, a command might look to you like it's two lines, so I've separated each command by an empty line. But anyway, type the whole command in one line, and when you've finished typing that command, hit the Enter key. Be sure to include the spaces I've included between each word here:

    Section Addendum Note: In the following commands, we are simply copying some existing files to a temporary location. This way, if anything should go wrong down the line, you will at least still have access to the original files. These original files are not used again in this tutorial, but you should be aware that you made a backup copy of them in the following directory:

    c\windows\tmp

    md c:\windows\tmpcopy c:\windows\system32\config\system

    c:\windows\tmp\system.bak
    copy c:\windows\system32\config\software c:\windows\tmp\software.bak
    copy c:\windows\system32\config\sam c:\windows\tmp\sam.bak
    copy c:\windows\system32\config\security c:\windows\tmp\security.bak
    copy c:\windows\system32\config\default c:\windows\tmp\default.bak

    delete c:\windows\system32\config\system
    delete c:\windows\system32\config\software
    delete c:\windows\system32\config\sam
    delete c:\windows\system32\config\security
    delete c:\windows\system32\config\default

    Important Addendum Note: When attempting the copy operations above, you may encounter an error message saying basically "unable to copy". The way arround this is to simply replace the copy (and delete) commands above with the following: cd \windows\system32\config rename system system.kpp rename software software.kpp rename sam sam.kpp rename security security.kpp rename default default.kppI use the extension .kpp becuase windows XP sometimes likes to use the .bak extension itself and unlike the copy commands above, we are not putting our backup copies in the windows tmp directory, but rather we are leaving them in thier original directory (but with the .kpp extension, so that windows will ignore them.). As I said before, these are just backup files, but it is good to know where they are if the repair fails and you ever need them. Note: The delete is no longer necessary becuase rename is basically like a "copy and delete" operation in one.

    Section Addendum Note: In the following commands, we are simply copying some repair (basically default window install) files so that we can get windows XP
    to boot. (It will look awful and none of previous setup and programs will show up, but that is fine.) We simply need to make windows runnable so that we can do the next parts (that will retore our full configuration as it was prior to the crash).

    copy c:\windows\repair\system c:\windows\system32\config\system
    copy c:\windows\repair\system\software c:\windows\system32\config\software
    copy c:\windows\repair\system\sam c:\windows\system32\config\sam
    copy c:\windows\repair\system\security c:\windows\system32\config\security
    copy c:\windows\repair\system\default c:\windows\system32\config\default