iPhone Google Map API

iPhone Google Map API

The Map Kit framework provides an interface for embedding maps directly into your iPhone/iPad App. This framework also provides support for annotating the map , adding overlays, and performing reverse-geocoding lookups to determine placemark information for a given map coordinate. Google Map API is one framework that can be used in our App to make it Graphical . Using Google Webservices we can get Direction b/w two Places (if existing) and can draw that path on Map with their Distance/Time to cover that .


1) How to Render Map on iPhone/iPad
Map can be of number of Types
a) Standard Map View
[map_View setMapType:MKMapTypeStandard];
b) Hybrid Map View
[map_View setMapType:MKMapTypeHybrid];
c) Satelite Map View
[map_View setMapType:MKMapTypeSatelite];
I am going to create MapViewController Class for MapView

MapViewController.h file

@interface MapViewController : UIViewController{
MKMapView *Map_View;
UIImageView *routeView;
UIColor* lineColor;
}
@end

MapViewController.m file
#import "TaxiCompaniesMapViewController.h"
#import

@implementation TaxiCompaniesMapViewController
@synthesize Map_View;
@synthesize routeView;
@synthesize lineColor;

-(void)viewdidLoad{
Map_View = [[MKMapView alloc]initWithFrame:CGRectMake(0,40,320,460)];
[map_View setMapType:MKMapTypeStandard];
[map_View setZoomEnabled:YES];
[map_View setScrollEnabled:YES];
map_View.showsUserLocation = TRUE;
map_View.delegate = self;
MKCoordinateRegion region;
CLLocation *location = [[CLLocation alloc]initWithLatitude:26.94166
longitude:75.785065];
region.center = location.coordinate;
MKCoordinateSpan span;
span.latitudeDelta = 0.09;
span.longitudeDelta = 0.09;
region.span = span;
[Map_View setRegion:region animated:YES];
[Map_View regionThatFits:region];
[Map_View setShowsUserLocation:YES];
[self.view addsubView:map_View];


Points to Remember

1) These two files are used to Render Map on Map in My example
2) In this example , default I provided Jaipur location to be in Center , you can provide your desired location , that will be in Center.
3) I used span (zoom level ) to approximate of 2 miles , you can change it . mind that decreasing span level increases zoom level on Map and
    this span limits b/w 0 to 180.

Introduction to Oracle E-Business Suite

ORACLE E BUSSINESS SUITE

Introduction:
Oracle E-Business Suite (EBS) version 12 is an internet enabled product that can be managed from a single site. A company can operate a single data center with a single database, similar to other ERP products. This release was launched in February 2007 and contains a number of product lines which users can implement for their business. Oracle EBS includes the company's enterprise resource planning (ERP) product as well as supply chain management (SCM) and customer relationship management (CRM) applications. Each application is licensed separately so companies can select the combination that is suitable for their business processes.

The applications found in the Oracle EBS include:

  • Oracle CRM
  • Oracle Financials
  • Oracle Human Resource Management System (HRMS)
  • Oracle Logistics
  • Oracle Supply Chain Applications
  • Oracle Order Management
  • Oracle Transportation Management
  • Oracle Warehouse Management System

Oracle CRM

The Oracle CRM application provides the "front office" functions which help a business to increase customers and customer loyalty and satisfaction. The basic functionality includes marketing, order capture, contracts, field service, spares management and the call center functionality. The CRM application also includes internet focused products such as catalogs, content management, quote and order management.

Oracle Financials

The Financials applications include General Ledger, Cash Management, Payables, Receivables, Fixed Assets, Treasury, Property Management, Financial Analyzer and a self-service expenses function.

Oracle Human Resource Management System (HRMS)

The HRMS application helps companies manage the recruit-to-retire process. The application gives users a real-time view of all the HR activities, including recruiting, time management, training, compensation, benefits and payroll. The HRMS suite integrates fully with the other EBS applications and supplies the users with an analytics package that allows the extraction of HR data with ease.

Oracle Logistics

The logistics module allows users to plan, manage, and control the flow and storage of products and services within a business. It provides information to plan future demand and safety stock within the warehouse. The application can create detailed, constraint-based production schedules and material plans.

Oracle Supply Chain Applications

Supply chain applications power a business's information-driven supply chains. Companies can predict market requirements, innovate in response to volatile market conditions, and align operations across global networks. Oracle offers industry-specific solutions that includes product development, demand management, sales and operations planning, transportation management, and supply management.

Oracle Order Management

Order management applications can streamline and automate a business's entire sales order management process, from order promising and order capture to transportation and shipment. Order management also includes EDI, XML, telesales and web storefronts. Some of the business benefits that can be achieved include reduced fulfillment costs, reduced order fulfillment cycle time, increased order accuracy and greater on-time delivery.

Oracle Transportation Management

Transportation management (TMS) provides transportation planning and execution capabilities to shippers and third party logistics providers. It integrates and streamlines transportation planning, execution and freight payment. The TMS function delivers functionality for all modes of transportation, from full truckload to complex air, ocean, and rail shipments. The benefits of the TMS function include reduced transportation costs, improved customer service and greater asset utilization.

Oracle Warehouse Management System

Oracle's Warehouse Management System allows the coordinated movement of goods and information throughout the extended distribution process. The module provides business processes that can deliver efficient utilization of employees, equipment, and space in the distribution process. Benefits include an acceleration of the flow of products through the supply chain while reducing lead times and releasing working capital, real time inventory management, cross-docking, pick-by-line, advanced ship notices (ASN), inbound planning and yard management.

Conclusion

Oracle's ERP product is second only to SAP in sales and its best of breed solution can be found in thousands of companies across the world. The applications that are included in the E-Business Suite cover the wide range of business processes that are found in any company. The industry-specific solutions supplied by Oracle can easily reduce time and resources required to implement the solution and provide businesses with configured business processes that will improve overall effectiveness.

Introduction to Cloud Computing

Cloud Computing

Cloud computing is all the rage. The problem is that everyone seems to have a different definition. As a metaphor for the Internet, "the cloud" is a familiar shot, but when combined with "computing," the meaning gets bigger and fuzzier. Some analysts and vendors define cloud computing narrowly as an updated version of utility computing: basically virtual servers available over the Internet. Others go very broad, arguing anything you consume outside the firewall is "in the cloud," including conventional outsourcing.

Cloud computing comes into focus only when you think about what IT always needs: a way to increase capacity or add capabilities on the fly without investing in new infrastructure, training new personnel, or licensing new software. Cloud computing encompasses any subscription-based or pay-per-use service that, in real time over the Internet, extends IT's existing capabilities.

Cloud computing is at an early stage, with a motley crew of providers large and small delivering a slew of cloud-based services, from full-blown applications to storage services to spam filtering. Yes, utility-style infrastructure providers are part of the mix, but so are SaaS (software as a service) providers such as Salesforce.com. Today, for the most part, IT must plug into cloud-based services individually, but cloud computing aggregators and integrators are already emerging.

InfoWorld talked to dozens of vendors, analysts, and IT customers to tease out the various components of cloud computing. Based on those discussions, here's a rough breakdown of what cloud computing is all about:

1. SaaS
This type of cloud computing delivers a single application through the browser to thousands of customers using a multitenant architecture. On the customer side, it means no upfront investment in servers or software licensing; on the provider side, with just one app to maintain, costs are low compared to conventional hosting. Salesforce.com is by far the best-known example among enterprise applications, but SaaS is also common for HR apps and has even worked its way up the food chain to ERP, with players such as Workday. And who could have predicted the sudden rise of SaaS "desktop" applications, such as Google Apps and Zoho Office?

2. Utility computing
The idea is not new, but this form of cloud computing is getting new life from Amazon.com, Sun, IBM, and others who now offer storage and virtual servers that IT can access on demand. Early enterprise adopters mainly use utility computing for supplemental, non-mission-critical needs, but one day, they may replace parts of the datacenter. Other providers offer solutions that help IT create virtual datacenters from commodity servers, such as 3Tera's AppLogic and Cohesive Flexible Technologies' Elastic Server on Demand. Liquid Computing's LiquidQ offers similar capabilities, enabling IT to stitch together memory, I/O, storage, and computational capacity as a virtualized resource pool available over the network.

Implement pan, zoom and click listeners on a map view in Andoid

Untitled Document

Calling onPan() method for reload Google map tiles randomly, onZoom() method is used for zoom in and zoom out the Google map and onClick() method is used for performed action on a click .These three methods are used frequently in Google map.


Solution :


Part 1: Create the interface by the name MapViewListener and declare these three method in MapViewListener interface. These methods needs to be overridden in the class where you extends MapActivity.

import com.google.android.maps.GeoPoint;

public interface MapViewListener {

void onPan(GeoPoint oldTopLeft,
GeoPoint oldCenter,
GeoPoint oldBottomRight,
GeoPoint newTopLeft,
GeoPoint newCenter,
GeoPoint newBottomRight);

void onZoom(GeoPoint oldTopLeft,
GeoPoint oldCenter,
GeoPoint oldBottomRight,
GeoPoint newTopLeft,
GeoPoint newCenter,
GeoPoint newBottomRight,
int oldZoomLevel,
int newZoomLevel);

void onClick(GeoPoint clickedPoint);
}

So when we need these methods we only have to implements this interface in our class.

Part 2:

1. Now Create CustomizedMapView.java which extends the MapView class.
   public class CustomizedMapView extends MapView
2. Now define the constructors same as of MapView class.
   public CustomizedMapView(Context context, String apiKey) {
   super(context, apiKey);
   }

   public CustomizedMapView (Context context, AttributeSet attrs) {
   super(context, attrs);
   }

   public CustomizedMapView (Context context, AttributeSet attrs, int defStyle) {
   super(context, attrs, defStyle);
   }


3. Now define these data members globally, because every time screen zoom or panning its new geoPoint will get assign from previous points.
   private GeoPoint mOldTopLeft;    //It is a top left corner geoPoint of a Google map
   private GeoPoint mOldCenter;    // It is center geoPoint of a Google map
   private GeoPoint mOldBottomRight;    //It is a top right bottom geoPoint of a Google map
   private int mOldZoomLevel = -1;    //It is a zoomlevel of Google map

4. Now define MapViewListener interface reference mMapViewListener because interface object cannot be created and create setter and getter method.

   private MapViewListener mMapViewListener;

   public MapViewListener getMapViewListener() {
   return mMapViewListener;
   }

   public void setMapViewListener(MapViewListener value) {
   mMapViewListener = value;
   }

   When we create object of this class in our class and from that object we must call this setMapViewListener(Context of present class).

5. Now in CustomizedMapView class define override the onTouchEvent() method. Declare motionFlag and initialized.

   private boolean motionFlag=false; //declare it as global variable

   @override
   public boolean onTouchEvent(MotionEvent ev) {
   if (ev.getAction() == MotionEvent.ACTION_UP) {
   GeoPoint newTopLeft = this.getProjection().fromPixels(0,0);
   if (this.mMapViewListener != null
   && newTopLeft.getLatitudeE6() == mOldTopLeft.getLatitudeE6()
   && newTopLeft.getLongitudeE6() ==    mOldTopLeft.getLongitudeE6()) {
   mMapViewListener.onClick(this.getProjection().fromPixels((int) ev.getX(), (int) ev.getY()));
   }
   motionFlag = true;
   }
   return super.onTouchEvent(ev);
   }

   On touching the screen onTouchEvent() method is called but we restricted that the action will be performed only
   when you lift up your finger from the touch screen.
   Get the latitude and longitude of newTopLeft and oldTopLeft. If both latitude and longitude of newTopLeft and oldTopLeft
   are same and mMapViewListener is not null then onClick() method is called and change motionFlag value into true

6. Now in this method first get the geoPoint of newCenter, newTopLeft and newBottomRight and get the newZoomLevel, then assign
   those value in    mOldCenter, mOldTopLeft and mBottomRight if these are null.
   When latitude and longitude of newTopLeft and oldTopLeft are not same and zoom level is not changed and motionFlag
   is true then onPan() method is called.
   When oldZoomLevel and newZoomLevel are not same and motionFlag must be true then onZoom() method is called.

   @override
   protected void dispatchDraw(Canvas canvas) {
   super.dispatchDraw(canvas);
   GeoPoint newCenter = this.getMapCenter();
   GeoPoint newTopLeft = this.getProjection().fromPixels(0, 0);
   GeoPoint newBottomRight = this.getProjection().fromPixels(
   this.getWidth(), this.getHeight());
   int newZoomLevel = this.getZoomLevel();

   if (mOldCenter == null)
   mOldCenter = newCenter;

   if (mOldTopLeft == null)
   mOldTopLeft = newTopLeft;

   if (mOldBottomRight == null)
   mOldBottomRight = newBottomRight;

   if (motionFlag
   && (newTopLeft.getLatitudeE6() != mOldTopLeft.getLatitudeE6() || newTopLeft.getLongitudeE6() != mOldTopLeft.getLongitudeE6())

   && mOldZoomLevel == newZoomLevel) {
   if (this.mMapViewListener != null) {
   mMapViewListener.onPan(mOldTopLeft, mOldCenter,mOldBottomRight, newTopLeft, newCenter, newBottomRight);

   mOldBottomRight = newBottomRight;
   mOldTopLeft = newTopLeft;
   mOldCenter = newCenter;

   }
   }

   if (mOldZoomLevel == -1) {
   mOldZoomLevel = newZoomLevel;
   } else if (motionFlag && mOldZoomLevel != newZoomLevel
   && mMapViewListener != null) {
   int oldZoomLevel = mOldZoomLevel;

   mMapViewListener.onZoom(mOldTopLeft, mOldCenter, mOldBottomRight,
   newTopLeft, newCenter, newBottomRight, oldZoomLevel,
   newZoomLevel);

   mOldZoomLevel = newZoomLevel;
   mOldBottomRight = newBottomRight;
   mOldTopLeft = newTopLeft;
   mOldCenter = newCenter;

   }
   motionFlag = false;
   }

   At last change the motionFlag value and assign false.

Part 3: Now if we want to use onPan(), onZoom() and onClick() method then we have to implement MapViewListener interface and create object of CustomizedMapView class in our class .Then on object of CustomizedMapView call the setter method setMapViewListener() method and the pass the object if class to listen to the event.

public class ExampleClassForMapEvents extends MapActivity implements MapViewListener {

InteractiveMapView eventsMapView ;
--
---

public void creatMap(){
eventsMapView = new InteractiveMapView(this,"your_api_key ");
eventsMapView.setMapViewListener(ExampleClassForMapEvents.this);
eventsMapView.setLayoutParams(new LayoutParams(
LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
eventsMapView.setEnabled(true);
eventsMapView.setClickable(true);
eventsMapView.setBuiltInZoomControls(true);
}
}

Custom Calendar on iPhone, iPad(Objective C)

Custom Calendar on iPhone, iPad(Objective C)

Iphone Custom Calendar

There are many development related iPhone apps , but it is not very often you come across an app that is useful and works as it desired. Therefore, here is Customized Calendar in Iphone that will be useful as an iPhone developer. It provides a similar look and feel as on a portal.

Our requirement includes to display a calendar when tapped on respective UITextField, by which we can view dates with its month, year and weekday. This Customized Calendar also includes the feature to switch previous/next month and previous/next year.

Though up to certain extent Calendar class can be achieved by using UIPickerView, but PickerView does not permit fast switching to previous/next month and year.

First, create an event on textfield click, this event then uses UIPopoverController where calendar View exists.

Then , find total number of days in a particular month with respect to its year and then the weekday for first date of that month. Total number of days gives the idea about how many date UIImageView will be created and he weekday for first date of that month gives the location from where the calendar dates will start. ImageView are placed through loop till number of days of that month.

NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
[gregorian setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];
NSDateComponents *comp = [gregorian components:(NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit) fromDate:date];
[comp setDay:1];
NSDate *firstDayOfMonthDate = [gregorian dateFromComponents:comp];
NSLog(@"firstDayOfMonthDate %@",firstDayOfMonthDate);

NSCalendar *cal1=[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *comps1 = [cal1 components:NSWeekdayCalendarUnit fromDate:firstDayOfMonthDate];
// 1 for mon 7 for sun
int startWithDay=[comps1 weekday]==1?7:[comps1 weekday]-1;
NSLog(@"day numbr of first date of month is(startWithDay) %d",startWithDay);

Each ImageView is given with UITapGestureRecognizer, which is called when tapped on particular date. All ImageView are given with tag , this tag then appends with month and year at label and forms date as desired in required date formatter.

int x=0;
int y=100;
for (int d=1; d
if (d-startWithDay>=0) {
// NSLog(@"tag is %d",d-startWithDay+1);
imgView=[[UIImageView alloc]initWithImage:[UIImage imageNamed:@"weeklyTableDetails.png"]];
imgView.tag=d-startWithDay+1;
imgView.frame=CGRectMake(x, y, 57, 50);
[imgView addGestureRecognizer:tap];
[self.view addSubview:imgView];

UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(getTag:)];
[imgView setUserInteractionEnabled:YES];
[imgView addGestureRecognizer:tap];

lblForDate=[[UILabel alloc]initWithFrame:CGRectMake(20, 15, 30, 30)];
lblForDate.text=[NSString stringWithFormat:@"%d",d-startWithDay+1];
lblForDate.textColor = [UIColor colorWithRed:0/255.f green:130/255.f blue:184/255.f alpha:1];
lblForDate.font = [UIFont fontWithName:@"Verdana" size:15];
lblForDate.backgroundColor = [UIColor clearColor];
[imgView addSubview:lblForDate];
}else{
NSLog(@"next line %d",d);
}
if (d%7==0) {
x=0;
y+=50;

}else{
x+=57;
}

And this is how each date image of size 57*50 is generated according to respective month and year.

Travel Portal Software Development with API Integration Delhi Noida India

The internet is used for purposes more than one. People now use it for planning their trips and tours as well. So, if you are associated with the travel and tourism industry a trip adviser, Travel Company, tourism development organization, resort, travel agency, etc., you need to have a travel portal software with API Integration. API Integrated Travel portals help people in booking cars, flights, hotels, etc., and planning their trip. If you are already a part of the travel and tourism business, you must remember that there is a huge number of companies and people just like you associated with it too. Therefore, in order to run your business successfully and get an edge over your competitors you need to make your services more efficient and one of these will be an organized and up-to-date travel portal.
To develop a proper, organized travel portal, it is best to get professional help. If you are doing it on your own, here are a few points which must be kept in mind:
  • The home page is one which will make or mar your business. It needs to be appealing, have all the necessary information yet not be very crowded and confusing. The best pictures and themes should be allotted to the home page.
  • Next comes the detailing. If there are tour packages, they should be highlighted and mentioned separately. Details of the different packages should be provided in different pages.
  • Online bookings must be allowed. This will include booking flights, cars, or other modes of transportation as well hotels and lodges. This would make trips more hassle free.
  • Adequate search options allowing users to look up whatever information they need would give a more satisfying experience to anyone.
  • Additional information such as weather forecast, currency conversion, etc., will also be helpful. Further, one can also help users by keeping a separate category of destinations according to the ideal seasons to visit them.
  • Real-time interactions with customers by keeping Customer relationship Management (CRM) modules within the travel applications using chat or e-mail gives a satisfactory experience to users.
  • One can include CMS or Content Management Systems for better maintenance and easy editing and control of the travel portal by the staff members.
Above all, a travel portal must remain updated. It must have adequate photographs to make it more attractive and giving users an idea of the places they wish to visit. Since social networking is proving to be a great place for advertising, you can keep options for logging in using their social networking ids and create pages on these sites for publicity.

Contact Us
RASHMI KANT
RANCOR INFOTECH PVT LTD
+91 – 9999671076, 9910978602
info@rancorinfotech.com

Visit :- http://www.rancorinfotech.com

Thoughts About The Secrets of Google Sniper 2.0

Google Sniper 2.0
This post is about my reviews on Google Sniper 2.0. I really don't post reviews because I thought it was just a complete waste of time, I made this review because of the controversial results of Google Sniper gives. This is based on my own experience and others' opinion about the said product and of course I want to share to people who are interested in living their dreams.

I am an internet marketer for almost 5 years now and search engine placement is always fun and challenging. I have tried different software for backlinking purposes, they all worked at first but not for long because Google detects the quality of website's backlink. That is why manual link building and quality content is the next option and it is still the best. The only problem with building backlinks is that you don't know what is the right strategy is best for your website, you always do trial and error and it has a big chance of hurting or giving bad reputation to your website.


When I encountered Google Sniper, I was a bit shocked because the strategies used is a little different with my 5 years seo experience but what I did is I trust the program and let it flow through me. I can say the results are from good, better and best because on the first month it got good results and up to now I have best results.

Google Sniper 2 is a bestselling, world-renowned E-course that teaches you exactly how to make a full time income online, starting from scratch.  As soon as you join, you will have immediate access to all the files, videos and trainings.

Sad to say that Google Sniper program is not for everyone.  If you are completely a beginner to affiliate marketing, I would not recommend an advanced product like this.  There is nothing worst than getting excited about buying something to help you, just to find out that it was too advanced for your level.  But if you have had success with affiliate marketing before but then failed on the later part and don’t know exactly how to get back on,  I would really recommend George Brown’s Google Sniper course.  This is without a doubt the most secure affiliate method that I have learned to this day.



I really believe that all of us will succeed using this system, if you just knew the basics to web-development, search engine optimization, blogging, article marketing, and some traffic generating techniques. Now, If you don't have any idea what I am talking about, it's okay too, there's a lot of video tutorials that are right for people who doesn't have a any idea on all the details yet. What is important is you have a strong will to learn new skills and develop your talent in this field.



My conclusion on Google Sniper is that this system is absolutely amazing, especially when you already have a little experience under your belt. You really don't have to be a professional and you really don't need a website. Actually, it's really better that you don't own a website because you will really follow the system from the top and have good results.

Almost all affiliates have purchased the course, just read the whole thing and then only implement half-way of the course, acquiring only half the results. I think this is the biggest reason not having success with the course because they didn't do it all the way or they are just too stubborn, using their own techniques. Anyway, the Google Sniper is one of the greatest guides to make money as an affiliate marketer online.

Click here to visit George Brown’s Official Google Sniper site


 
Here's a little sneak preview of what to expect 
and why you should use or promote Google Sniper.
(please do listen in everything he say, you'll be sorry you didn't)



The WordStream 150: The World's Best Internet Marketing Software 2012

The World's Best Internet Marketing Software 2012

Top Internet Marketing Software Companies [Infographic]