Android’s Fragmentation – Still A Problem For Android Developers

android1Google’s Android possesses a major flaw in its OS development, which is a fragmentation issue. For this reason, one android OS version still remains isolated from other androids OS version.

It offers a wide range of hardware and software options for the developers, which in turn increases the time of development and causes complications for application design.

From the latest survey of devices in the last two weeks, Google found that only 10% of android owners are running the latest version of the OS, and almost half (47%) are still using “Gingerbread” i.e. the version 2.33.

Android Developers have been challenged by Android’s open nature from the beginning. In addition, the release of OS updates to all the available hardware is dependent on a wide range of sources.

For such reasons, Android developers have now targeted their Android application development for devices that run the Gingerbread platform and later, which is now on over 80% of Android devices.

Mobile Developers have faced even the worse fragmentation issues during the early days of development. With numerous hardware variants, developing an app for a group of devices was almost impossible.

With Android, the fragmentation issue is more troublesome because of the advanced features which only a fraction of devices support it. This situation continuously drives the developers to focus on the hardware-specific abilities of smartphones.

At Andolasoft we develop the most intriguing android mobile applications for individuals and from start-ups to established companies.

We have team of experienced android developers who are skilled to develop innovative apps for all versions of android devices. Some of our apps showcased in the Google marketplace at:

https://play.google.com/store

/apps/details?id=com.andolasoft.christmasdemo&

feature=more_from_developer

Security Flaws Persist in Java 7u10 Update

Java DevelopmentOracle has released new updates for Java with security enhancements for better performance.

This new release of Java SE 7 update 10 is now certified for both Windows 8 and Mac OS X operating systems.

These updates include the ability to use the control panel to prevent Java applications from running in browsers, as well as to set a level of security for unsigned applets, Java FX applications, and Java Web Start applications.

It also adds a dialogue box to warn people when Java plug-in updates are available for download.

But the update of JDK 7u10 has failed to fix some major security troubles and have brought only minor improvements, experts say.

Andrew Storms, the director of security operations at ncircle quoted “New features notwithstanding, Oracle still has a long way to go to improve security” referring to the fact that the hackers are aware that most people do not keep the Java plug-in up to date, hence leaving old flaws open to misuse by the trespassers and attackers.

HP’s security research division reported that in the year 2011 an attack integrated with the black hole toolkit had more than 75 percent success rate for the attackers.

According to the reports it is also said that for large businesses and Industries, only a full-time IT security staff will be able to figure out the new settings help and if managed centrally from Microsoft Active Directory or other directory servers.

Storms also stated “Without this access, the new settings will essentially be useless to enterprise IT teams” and pointed out that consumers are not worrying to update Java; they are unwilling to learn the uses control panel.

Besides the security flaws, other fixes include Windows command line issues, the ability to allow sandbox warning banner to grant access.

What is the Importance of Filters in Rails

Rails

In Ruby on Rails development, filters play a vital role. They are the methods executed ‘before’, ‘after’  or  ‘around’ a controller action.

For example, one filter might check to see if the user has the credentials to access that particular controller or action.

Filters are inherited, so if you set a filter on ‘ApplicationController’, it would run on every controller in your application.

Below is an example to explain how a filter can be used to restrict a non-logged in user to access specified actions in a controller

Step#1

  • In Application controller write the following block of code according to the requirement.
def user_login_required
 if !session[:username]
 flash[:notice] = "Oops you need to login!"
 redirect_to :controller => "user_sessions", :action => "new"
 end
end

Step#2

  • Now write the before_filter block in the controller you want to restrict the not registered users. You can also restrict particular actions of a controller by writing the action name.
class UsersController < ApplicationController
 before_filter :user_login_required, :only => [:profile]
 def profile
 [Your code block goes here]
 end
end

In the above block the ‘before_filter’ restrict the not registered user to access
the profile page and redirect them to login page. We can also restrict multiple
actions by writing like this

before_filter :user_login_required, :only => [:profile,:edit]

In this case the filter is applied to only these two methods of a particular controller.

before_filter :user_login_required, :except => [:index,:show]

In this case the filter is applied to all other actions except index and show
action of a particular controller.

If you write the before_filter block in the “ApplicationController” then the
filter will be applied to all the controllers.

Planning anything on Ruby on Rails? Talk to Andolasoft’s experts to get a clearer idea.

Apple AppStore, Google Play & Revenue Earnings

Apple Store, Google Play StoreWe all know that Google and Apple are the most dominating players in the smartphone industry and they get most of their revenues from their application stores i.e. ‘Google Play’ and ‘App Store’ respectively.

But according to a new study from App Annie Intelligence, both Google and Apple have shown interesting numbers in their respective application stores.

App Annie Intelligence has been monitoring numerous apps from Google Play and App Store to measure their performance based on the volume of apps being downloaded and the revenues being earned from their apps.

According to their report, Google Play has seen phenomenal growth in revenue in October 2012, which has increased by a staggering 311% compared to January 2012, but it’s still unable to match App Store, which attracted four times more revenues despite of growing just 12.9% in the same period.

Since the release of the report, Apple has disagreed App Annie’s numbers by saying that App Store’s revenue grew over 200% and not just 12.9%, but later it was revealed that both companies were right in their own way because the two entities were looking at the growth differently.

Practically Apple has grown around 200% every year, but according to App Annie, Apple’s growth is 12.9% in October 2012 counting from January 2012. So it turned out that both Apple and App Annie were right.

According to other findings from the study, there are other interesting statistics like:

  • 10% more free downloads are available from App Store compared to Google Play
  • Only 3.3% growth in app downloads for App Store whereas 48% growth is seen for Google Play in the last five months

In the recent past USA was listed for the highest iOS app downloads with 26% than the rest of the world and the revenue collected for the same was 33% of the rest of the world.

Whereas for Android 21% of app downloads came from USA and collected around 29% of revenue from Japan. Among the free mobile game apps for iOS, companies like EA, Gameloft and Facebook pulled maximum downloads and for Google Play, the top free app publishers are Google, Facebook, Rovio, Go Launcher.

Taking revenue into consideration the grossing iOS apps were from companies like EA, Zynga, Supercell. For Google Play the leaders were DeNA, COLOPL and GungHo Online.

There are other free iPhone and Android apps which also play a major role in generating revenues and traffic to the application stores. At the same time, iPhone application development and Android application development both are improving day by day.

We at Andolasoft have team of iPhone application developers and Android application developers to provide business solutions. We have developed iOS apps like Orangewall, Andolapic and kurrentjobs and Android apps like Christmas Tree Puzzle which you can download Free from App Store and Google Play.

How to improve your Apache Web server’s performance?

Apache

The performance of web application depends upon the performance of the webserver and the database server.

You can increase your web server’s performance either by adding additional hardware resources such as RAM, faster CPU, etc. or you can get better performance on the same hardware through Cloud Management, by doing some custom configuration to the webserver.

Here are some custom configurations for better performances

  • Load only the required modules:

Apache server is a modular program which includes the functionality of selecting a set of modules. So it’s suggested to run Apache with only the required modules which will reduce the memory footprint and hence the server performance.

  • Choose appropriate MPM:

Apache comes with a number of Multi-Processing Modules (MPMs) which binds the network ports to the machine. But only one MPM can be loaded at a time, so choose the appropriate MPM for your application. It depends on various factors like, whether the OS supports threads, available memory, scalability versus stability, whether non-thread-safe third-party modules are used, etc.

  • DNS lookup:

Keep “HostnameLookups off” to reduce latency to every request since the DNS lookup has to be completed before the request is finished.

  • AllowOverride:

Make “AllowOverride all” to reduce additional file system lookups.

  • FollowSymLinks:

Add the option ‘FollowSymLinks’ to make the server follow the symbolic links in the directory.

  • Content Negotiation:

Option ‘Multiviews’ scans the directory for files, which causes latency.

  • MaxClients:

‘MaxClients’ is the limit on maximum simultaneous requests. It should be set to low so that new connections are put in queue.

  • MinSpareServers, MaxSpareServers, and StartServers:

The ‘MinSpareServers’ and ‘MaxSpareServers’ determines how many child processes should be kept waiting for request. Now you can adjust it as your requirement.

Listed below are some tweaks to help you around

StartServers—2

MinSpareServers—2

MaxSpareServers—5

ServerLimit—100

MaxClients—100

MaxRequestsPerChild—4000

  • KeepAlive and KeepAliveTimeout:

The ‘KeepAlive’ directive allows multiple requests to be sent over the same TCP connection. This is useful when HTML pages use a lot of images.

KeepAlive–on

Timeout–20

  • HTTP Compression & Caching:

Use mod_deflate module for HTTP Compression. Most of the browsers are supporting it.

  • Separate server for static and dynamic content:

For dynamic contents Apache server needs 3M to 20M of RAM, while for the static contents it consumes only 1M. To reduce latency use separate servers for static and dynamic contents.

  • Reducing network load:

Use ‘mod_gzip’ to compress the data in order to reduce bandwidth. Most of the browsers are supporting it.

Whats are the Differences in Community and Enterprise Editions

Since Magentoits mid-quarter release in 2008, Magento has been the first choice for E-commerce development and it still prevails the same effect.

Magento development is the most secure, flexible and customizable solution for business who are new to e-commerce or switching to this niche.

Upon its popularity and evolution, Magento Inc. has released two editions for Magento, the Community edition and the Enterprise edition. There is still some confusion among developers or users about these editions and their usability.

Let’s have a look at some differences between these two:

Advantages of Advanced Features and Functionality

Since its launch, Magento is open source and both editions are targeted to different audiences.

The community edition is meant for small startup e-commerce business with basic yet powerful solutions. At the same time, the Enterprise edition is meant for those retailers who require more advanced features, customization, and functionality to their e-commerce business.

Magento Team Support

With the Enterprise edition, the retailer signs a Service Level Aggrievement(SLA) with Magento support and will be having the advantage agents development team support for tiniest issues.

Neither the agreement nor the service is available to Community users. They can take care of support issues with their own development team or through Community discussion forums.

Efficient Bug Tracking

The bug Fixing service is provided to both of editions users which comes to act when you report a bug in your Magento platform to the Magento team.

Although the bug resolution service is available to both user types, however sometimes the Magento development team gives much priority to Enterprise edition users as compared to Community edition users due to SLAs.

If you’re a small startup you can manage with the Community edition, but if you’re a large retailer and switching for Magento then you got to choose the Enterprise or Enterprise Premium Edition.

With much more competition on retailing and so many new functionalities to count in for your business, you need to choose the right Magento edition.

Recently Magento also launched the Magento Go feature, where a non-techno buff can also create an e-commerce web app.

At Andolasoft, we always try to build a high quality e-commerce web app with a much higher quality interface, scalability, and customization. Magento development is one of our major expertise and we’ve developed many custom Magento based e-commerce applications, modules, and other extensions.

Whether you’re a startup e-commerce business or a large retailer switching to e-commerce, we can help you by building search friendly and secure websites as per your requirements. We’ve expert Magento developers who can provide top-notch year-round service for your e-commerce solution.