Monday, September 30, 2013

BufferBox now available in San Francisco

We’ve all been there - coming home after work only to find a failed delivery notice at the door. What if you could never miss a delivery again? Today, we are expanding our pilot of the BufferBox service to San Francisco. Already available in Toronto, BufferBox joined Google last year and helps you receive your online purchases conveniently and securely.

With BufferBox, you can order from your favorite online retailers and have items delivered to a convenient BufferBox kiosk in your local coffee shop, supermarket, or retail store. You’ll receive an instant email notification when your parcel is ready for pickup. You can even use BufferBox with our recently expanded Google Shopping Express service -- simply enter your BufferBox Address as your shipping address when checking out and select the 9am-1pm delivery window to collect your items later that same evening.

You can find BufferBox kiosks at partner locations around San Francisco, including Dogpatch Cafe, Coffee Bar, Noe Hill Market, 7-Eleven and many others. San Francisco residents can start using BufferBox for free at bufferbox.com. It’s early days, but we look forward to integrating the service further, expanding to more locations, and sharing more news with you soon.

Posted by Mike McCauley, Product Manager, BufferBox

Wednesday, September 25, 2013

Google Shopping Express now available to all San Francisco and Peninsula Shoppers

Say you have a list of errands as long as your arm, but the weather couldn’t be more perfect. Run errands or run in the park? Google Shopping Express, a service that offers same-day delivery from local stores, lets you do both.

Earlier this year, we invited some Bay Area shoppers to help us test Google Shopping Express. Today, we’re excited to make Google Shopping Express available to everyone living or working in our Bay Area delivery zones, from San Francisco to San Jose. This new service brings the speed of the web to the real world by helping you shop your favorite local stores online—in a single place—and get what you need delivered the same day. We are also launching a new mobile app, available for both Android and iOS, to bring you the convenience of Google Shopping Express even when you’re on-the-go.


Your favorite stores, all in one place
Whether you’ve run out of something essential or need to get a last-minute gift, you can shop your favorite stores all in one place, and get everything delivered in just a few hours. With Google Shopping Express, you can shop national, regional, and local stores, including American Eagle, Blue Bottle Coffee, Lucky, Office Depot, Palo Alto Toy & Sport, Photojojo, Raley’s Nob Hill Foods, Staples, Target, Toys“R”Us/Babies“R”Us, and Walgreens. And starting today, you can also fill your cart with items from DODOcase, Guitar Center, L’Occitane, REI, and Whole Foods Market.

Same prices and promotions as in-store
Stores price the items on Google Shopping Express the same as they do in-store, so you’ll pay the same amount for whatever you’re buying. You can add your retailer loyalty program number at checkout to take advantage of member prices. We’re working with many more local retailers and look forward to bringing them to Google Shopping Express soon.

Shopping made simple - wherever you are
To make it easier for you to buy what you need on-the-go, we’re also launching the Google Shopping Express app for Android (v4.0+) and iOS (v6.0+). With the app, you can easily order your essentials, search for specific items, or browse different stores wherever you are—and have them delivered right to your door that day. You can download the app on the Google Play Store and the iOS App Store.


Getting it delivered on your schedule
With Google Shopping Express you can select a delivery window that’s convenient for you, starting in the morning and running as late as 9pm. To make this all work, our engineers put their heads together to figure out the most efficient way to get all the packages delivered across town in the delivery windows promised. And be sure to keep your eye out for our new hybrid fleet around town.


Want to give it a try? For a limited time, you can get six months of free, unlimited same-day delivery when you sign up for our free membership.* To get started, visit google.com/shopexpress.

We want to thank all of our early testers who shared their invaluable feedback to help us improve the service. We’re always looking to make Google Shopping Express better, so please continue to share your feedback with us. Let us know what you think and get updates by following Google Shopping Express on Google+.

Happy shopping!

Posted by Tom Fallows, Product Management Director, Google Shopping Express


*Your account must be in good standing to remain eligible. Offer expires 12/31/2013. For complete terms and conditions see g.co/shopexpressterms.

Android Custom GridView Example

Creating a custom  GridView with Text and Image is as easy as Using a Simple GridView.
We need to just have a custom adapter and populate the GridView elements with custom adapter. It is similar to populating a ListView with Custom Adapter.

If you are not familiar with these two concepts follow my blog

Using Android GridView
ListView with  Custom Adapter

In this example I have explained how to  how to make a custom grid with Text and Image and poipulate it's content through Custom Adapter.

Steps:
  • Create Layout
  • Create Cutom Adapter and override it's getView() method.
  • Set the adapter to GridView


Custom GridView

main.xml


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

   <GridView
        android:id="@+id/gridViewCustom"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_margin="4dp"
        android:columnWidth="80dp"
        android:gravity="center"
        android:numColumns="auto_fit"
        android:stretchMode="columnWidth" />


</RelativeLayout>

grid_row.xml


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:padding="5dp" >

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_marginRight="10dp"
        android:src="@drawable/ic_launcher" >
    </ImageView>

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:textSize="15sp" >
    </TextView>

</LinearLayout>

CustomGridViewMainActivity.java

public class CustomGridViewMainActivity extends Activity
{

   
            GridView gridView;
            GridViewCustomAdapter grisViewCustomeAdapter;
           
          
            @Override
            protected void onCreate(Bundle savedInstanceState)
            {
                    super.onCreate(savedInstanceState);
                    setContentView(R.layout.main);
                   
                   
                    gridView=(GridView)findViewById(R.id.gridViewCustom);
                    // Create the Custom Adapter Object
                    grisViewCustomeAdapter = new GridViewCustomAdapter(this);
                    // Set the Adapter to GridView
                    gridView.setAdapter(grisViewCustomeAdapter);
                     
                    // Handling touch/click Event on GridView Item

                      gridView.setOnItemClickListener(new OnItemClickListener() {

                       @Override
                       public void onItemClick(AdapterView<?> arg0, View v, int position, long arg3) {
                           String selectedItem;
                           if(position%2==0)
                               selectedItem="Facebook";
                           else
                               selectedItem="Twitter";
                        Toast.makeText(getApplicationContext(),"Selected Item: "+selectedItem, Toast.LENGTH_SHORT).show();
                       
                       }
                      });


               }

}


 GridViewCustomAdapter.java


public class GridViewCustomAdapter extends ArrayAdapter
{
         Context context;
      
   

     public GridViewCustomAdapter(Context context)
     {
             super(context, 0);
             this.context=context;
            
     }
   
     public int getCount()
        {
                     return 24;
        }

     @Override
     public View getView(int position, View convertView, ViewGroup parent)
     {
             View row = convertView;
            
             if (row == null)
             {
                     LayoutInflater inflater = ((Activity) context).getLayoutInflater();
                     row = inflater.inflate(R.layout.grid_row, parent, false);


                     TextView textViewTitle = (TextView) row.findViewById(R.id.textView);
                     ImageView imageViewIte = (ImageView) row.findViewById(R.id.imageView);
                    
                     if(position%2==0)
                     {
                             textViewTitle.setText("Facebook");
                             imageViewIte.setImageResource(R.drawable.facebook);
                     }
                     else
                     {
                             textViewTitle.setText("Twitter");
                             imageViewIte.setImageResource(R.drawable.twitter);
                     }
             }

   
     
      return row;

     }

}
    



 

New Advance Topics:                   Android LiveWallpaer Tutorial
Android ImageSwitcher                    Android TextSwitcher                                Android ViewFlipper
Android Gesture Detector               Handling/Detecting Swipe Events                Gradient Drawable
Detecting Missed Calls                    Hide Title Bar                                           GridView Animation
Android AlarmManager                 Android BootReceiver                       Vibrate Phone In a Desirable Pattern    
Developing for Different Screen Sizes           Showing Toast for Longer Time       Publishing your App
How to publish Android App on Google Play
Android TextWatcher                               Android ExpandableListView

 Beginning With Android
      Android : Introduction(What is Android)                                                              Configuring Eclipse for Android Development
     Creating Your First Android Project                                           Understanding Android Manifest File of your android app

 Advance Android Topics                                                              Customizing Android Views


Working With Layouts                                                                Working With Views

Understanding Layouts in Android                                                   Using Buttons and EditText in Android
Working with Linear Layout (With Example)                                     Using CheckBoxes in Android
Nested Linear Layout (With Example)                                              Using AutoCompleteTextView in Android                                                                                          Grid View
Relative Layout In Android                                                               ListView
Table Layout                                                                                   Android ProgressBar
Frame Layout(With Example)                                                          Customizing ProgressBar
Absolute Layout                                                                             Customizing Radio Buttons
Grid Layout                                                                                    Customizing Checkboxes In Android

Android Advance Views
Android Spinner                                                                           Android GalleryView
Android TabWidget                                                                      Android ExpandableListView

Android Components                                                                 Dialogs In Android

Activity In Android                                                                    Working With Alert Dialog
Activity Life Cycle                                                                    Adding Radio Buttons In Dialog
Starting Activity For Result                                                       Adding Check Boxes In Dialog
Sending Data from One Activity to Other in Android                    Creating Customized Dialogs in Android
Returning Result from Activity                                                   Creating Dialog To Collect User Input
Android : Service                                                                     DatePicker and TimePickerDialog
BroadcastReceiver                                                                   Using TimePickerDialog and DatePickerDialog In android

Menus In Android                                                                ListView:
Creating Option Menu                                                               Populating ListView With DataBase
Creating Context Menu In Android                                              Populating ListView with ArrayList
                                                                                               ListView with Custom Adapter

Toast                                                                                      Working With SMS
Customizing Toast In Android                                                       How to Send SMS in Android
Customizing the Display Time of Toast                                        How To Receive SMS
Customizing Toast At Runtime                                                  Accessing Inbox In Android
Adding Image in Toast
Showing Toast for Longer Time


TelephonyManager                                                            Storage: Storing Data In Android
Using Telephony Manager In Android                                          SharedPreferences In Android
                                                                                              Reading and Writing files to Internal Stoarage

Working With Incoming Calls                                       DataBase :  Introduction of SQLiteDataBase
How To Handle Incoming Calls in Android                                Working With Database in Android
How to Forward an Incoming Call In Android                            Creating Table In Android
CALL States In Android                                                          Inserting, Deleting and Updating Records In Table in Android


Miscellaneous
Notifications In Android
How To Vibrate The Android Phone
Sending Email In Android
Opening a webpage In Browser
How to Access PhoneBook In Android
Prompt User Input with an AlertDialog
How to Hide Title Bar In Android
How to show an Activity in Landscape or Portrait Mode only.
How to Set an Image as Wallpaper.






Tuesday, September 24, 2013

Go shopping with one of your favorite designers

To kick off this fall shopping season, Google is teaming up with the Council of Fashion Designers of America and popular fashion designers to experiment with a new social shopping experience. This exclusive shopping app for Google+ Hangouts On Air allows retailers to discuss trends or specific products in a publicly broadcasted multi-person video chat while customers can simultaneously browse or buy a curated selection of products available for purchase online.



The first shoppable Hangout On Air will launch with Diane von Furstenberg on October 3, 2013 at 8 pm ET. She will be inviting fans to join her on the Hangout as she shares top trends this season from her headquarters in New York City. To participate, visit: www.dvf.com/shopthehangout

This October, Rebecca Minkoff, Rachel Zoe, and Marcus Wainwright and David Neville of rag & bone will also be sharing their fall collections using the shopping app for Hangouts On Air. To learn more, follow the designers and the Council of Fashion Designers of America on Google+.

Posted by Ria Tobaccowala, Google+ Lifestyle Partnerships & Laura Jones, Shopping Product Marketing Manager

Friday, September 20, 2013

Android WebView Example

WebView is a View that displays web pages. Using his class we can display some online content within our Activity.

If you want to deliver a web application (or just a web page) as a part of a client application, you can do it using WebView. The WebView class is an extension of Android's View class that allows you to display web pages as a part of your activity layout.

In this Example you will see how to use WebView in your activity.

Do not forget to add the Internet permission in your manifest file.
 <uses-permission android:name="android.permission.INTERNET" />

main.xml 


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

    <WebView  xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/webView1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"/>
   
</RelativeLayout>

WebViewActivity

public class MainActivity extends Activity
{
   
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        WebView  webView = (WebView) findViewById(R.id.webView1);
        webView.loadUrl("http://www.google.com");

           
    }
}

Thursday, September 19, 2013

Now, a Google Wallet app for iPhone

Earlier this week we launched a new Google Wallet app for all Android phones (v2.3+). The response from users has been great, and we want iOS users to enjoy all of the benefits too. So, today we’re introducing the first Google Wallet app for iPhone (iOS v6.0+), which means even more people can easily send money to friends and store all of their loyalty cards and offers in one place.



Like the Android app, the Google Wallet iPhone app makes it easy for you to:

Send money from anywhere. 
Easily and securely send money on-the-go to any friend in the US with an email address (ages 18+). And, once you send money with the Google Wallet app you’ll also get early access to sending money within Gmail from your desktop.

Never miss another loyalty point.
Add all of your existing cards into the app by scanning the barcodes or entering your card numbers. Or, you can easily join new programs like Alaska Airlines, Belly, and Red Mango from within the app and redeem at checkout. For these merchants you can view your loyalty status and rewards balance, and you'll also see your saved loyalty cards in Google Now when there are nearby opportunities to use them. Other exciting programs that we’ll be adding soon include Avis Car Rental, BJ’s Restaurants, Cosi, Hard Rock International, InterContinental Hotels Group, Marriott International, Raley’s, and The Body Shop.

Save more with offers.
In addition to all of your loyalty cards, you can save money with offers in Google Wallet whether you found them on the Google Maps app, Google Search, or Google Offers. Starting today, you can also save offers to Google Wallet directly from merchant or couponing sites such as Valpak.com. Redeem all of your saved offers by showing your Google Wallet app to the cashier at checkout.

Add your credit card in seconds, pay online in a few clicks. Easily scan your debit and credit cards into the app and use them to send money, buy on Google Play, or shop on select mobile websites.

A secure digital wallet. And of course, shop with confidence knowing that all of your Google Wallet transactions are monitored 24/7 for fraud. With Google Wallet Purchase Protection, you’re 100% covered for eligible unauthorized Google Wallet transactions. And, if you lose your iPhone, you can easily disable the Google Wallet app online.

Get the new Google Wallet app for iPhone
Whether you have an iPhone or Android phone, we hope you enjoy the new Google Wallet app. If you’re in the US, you can download it later today from the Apple App Store or immediately from the Google Play Store.

Posted by Brian Kravitz, Product Manager - Google Wallet

Tuesday, September 17, 2013

A new Google Wallet app for all Android phones

Today, we’re introducing a new version of the Google Wallet app, which is rolling out this week to all Android phones (version 2.3 and higher), available this week in the U.S. The updated app helps you easily send money on the go, store all your loyalty cards, save money through offers, and view all your Google Wallet activity - all in one place.


Send money from anywhere
We recently announced the ability to send money in Gmail using Google Wallet. Now, with the Google Wallet app, you can easily and securely send money on the go to any friend in the US with an email address (ages 18+). It’s free to send money directly from your bank account or Google Wallet Balance, and low fees apply when using your linked credit or debit card. And as an added bonus, once you send money with the Google Wallet app, you’ll also get early access to sending money in Gmail from your desktop while we continue to roll out the feature broadly to Gmail users.

Never miss another loyalty point
With the new Google Wallet app, you can leave all your plastic loyalty cards at home and carry them on your phone. To add your cards, simply scan the barcode or input the card number into the app. The next time you’re at the store, you can earn points for your loyalty program by scanning the app at checkout. You can also easily join new programs like Alaska Airlines, Belly, and Red Mango within the Google Wallet app. For these merchants, you can view your loyalty status, rewards point balance and in the coming days, Google Now will notify you when you have a saved loyalty program nearby. And coming soon, choose from even more programs including Avis Car Rental, BJ’s Restaurants, Cosi, Hard Rock International, InterContinental Hotels Group, Marriott International, Raley’s, and The Body Shop.

Save more with offers
In addition to your loyalty cards, you can easily carry and use your offers with the Google Wallet app. No matter where you’ve found your offer - in the Google Maps app, Google Search, Google+ or Google Offers, they’re visible and redeemable in your Wallet app at checkout. And later this week, you’ll also be able to save offers on select merchant and couponing sites such as Valpak. Just show the offer on your app at checkout to redeem it. We’re working with many partners to bring you great offers, and will be adding more soon. It’s saving made simple.

See all your purchase activity in one place
In the new Google Wallet app, you can also see all your purchases made with Google Wallet in one place:
  • In-store purchases: If you have one of the 29 different NFC-enabled devices, you can continue to tap and pay at hundreds of thousands of US locations, while also enjoying the new Wallet features. We also have more NFC-enabled devices on the horizon as we continue to invest in NFC with our partners.
  • Online and mobile purchases: You can continue to speed through online shopping by using your Google Wallet account to pay on Google Play, select mobile websites or a growing set of Android apps.
A secure digital wallet
We take security seriously, so as always, all Google Wallet transactions are monitored 24/7 for fraud. Plus, with Google Wallet Purchase Protection, you’re 100% covered for eligible unauthorized Google Wallet transactions. And if you lose your phone, you can remotely disable the Google Wallet app online anytime. For added protection, remember to choose a strong password and enable 2-step verification for your Google Account.

Get the new Google Wallet Android app now
Download the new version of the Google Wallet app on the Google Play Store, rolling out this week in the US. Happy paying, saving and shopping!

Posted by Peter Hazlehurst, Director, Product Management - Google Wallet

Wednesday, September 11, 2013

Android MediaPlayer Example

MediaPlayer class is  used to control playback of audio/video files and streams.
Using MediaPlayer class we can control the behavioyr of player like volume control, whether to repeat the current tarck or not, stop or pause the playback etc.

Steps:

  1. Initialize the Media Player with media to play.
  2. Prepare the Media Player for playback.
  3. Start the playback. 
  4. Pause or stop the playback prior to its completing.
  5. Playback complete.
To play a media resource you need to create a new MediaPlayer object, initialize it with a media
source, and prepare it for playback.

When you have finished playing , call the release method on your Media Player object to free the resources associated with the MediaPlayer

mediaPlayer.release();

Preparing Audio for Playback


To play back audio content using the Media Player, we need to create a new Media Player object and
set the data source of the audio (pass as paarmeter).

  • A resource identifier
  • A URI to a local file using the file
  • A URI to an online audio resource as a URL 
  • A URI to a local Content Provider row
MediaPlayer filePlayer = MediaPlayer.create(appContext,
Uri.parse("file:///sdcard/localfile.mp3"));


MediaPlayer urlPlayer = MediaPlayer.create(appContext,
Uri.parse("http://site.com/audio/audio.mp3"));


MediaPlayer contentPlayer = MediaPlayer.create(appContext,
Settings.System.DEFAULT_RINGTONE_URI)



we can also use setDataSource method to specify the resource
like

myMediaPlayerObject.setDataSource("/sdcard/music/tarck1.mp3");


Controlling The PlayBack

Skip for a particular time

mediaPlayerObject.start();
int pos = mediaPlayerObject.getCurrentPosition();
int duration = mediaPlayerObject.getDuration();
mediaPlayerObject.seekTo(pos + (duration-pos)/10);

Repeating the Audio Playback track

We can use the isLooping and setLooping methods to specify if the media being played should repeat or loop when it completes.

if (!mediaPlayer.isLooping())
mediaPlayer.setLooping(true);

Controlling the Volume of Media Player


We acn also  control the volume for each channel during playback using the setVolume method. It takes
a scalar float value between 0 and 1 for both the left and right channels (where 0 is silent and 1 is
maximum volume).

mediaPlayer.setVolume(1f, 0.5f);


MediaPlayer Example:


public class MediaPalyerActivity  extends Activity
{
        @Override
        protected void onCreate(Bundle savedInstanceState)
        {
                super.onCreate(savedInstanceState);
               
                MediaPlayer  myMediaPlayer=new MediaPlayer();
               
                try
                {
                    myMediaPlayer.setDataSource("/sdcard/music/tarck1.mp3");
                    myMediaPlayer.prepare();
                    myMediaPlayer.start();
                }
                catch(Exception e)
                {
                    e.printStackTrace();
                }
        }
}

 

New Advance Topics:                   Android LiveWallpaer Tutorial
Android ImageSwitcher                    Android TextSwitcher                                Android ViewFlipper
Android Gesture Detector               Handling/Detecting Swipe Events                Gradient Drawable
Detecting Missed Calls                    Hide Title Bar                                           GridView Animation
Android AlarmManager                 Android BootReceiver                       Vibrate Phone In a Desirable Pattern    
Developing for Different Screen Sizes           Showing Toast for Longer Time       Publishing your App
How to publish Android App on Google Play
Android TextWatcher                               Android ExpandableListView

 Beginning With Android
      Android : Introduction(What is Android)                                                              Configuring Eclipse for Android Development
     Creating Your First Android Project                                           Understanding Android Manifest File of your android app

 Advance Android Topics                                                              Customizing Android Views


Working With Layouts                                                                Working With Views

Understanding Layouts in Android                                                   Using Buttons and EditText in Android
Working with Linear Layout (With Example)                                     Using CheckBoxes in Android
Nested Linear Layout (With Example)                                              Using AutoCompleteTextView in Android                                                                                          Grid View
Relative Layout In Android                                                               ListView
Table Layout                                                                                   Android ProgressBar
Frame Layout(With Example)                                                          Customizing ProgressBar
Absolute Layout                                                                             Customizing Radio Buttons
Grid Layout                                                                                    Customizing Checkboxes In Android

Android Advance Views
Android Spinner                                                                           Android GalleryView
Android TabWidget                                                                      Android ExpandableListView

Android Components                                                                 Dialogs In Android

Activity In Android                                                                    Working With Alert Dialog
Activity Life Cycle                                                                    Adding Radio Buttons In Dialog
Starting Activity For Result                                                       Adding Check Boxes In Dialog
Sending Data from One Activity to Other in Android                    Creating Customized Dialogs in Android
Returning Result from Activity                                                   Creating Dialog To Collect User Input
Android : Service                                                                     DatePicker and TimePickerDialog
BroadcastReceiver                                                                   Using TimePickerDialog and DatePickerDialog In android

Menus In Android                                                                ListView:
Creating Option Menu                                                               Populating ListView With DataBase
Creating Context Menu In Android                                              Populating ListView with ArrayList
                                                                                               ListView with Custom Adapter

Toast                                                                                      Working With SMS
Customizing Toast In Android                                                       How to Send SMS in Android
Customizing the Display Time of Toast                                        How To Receive SMS
Customizing Toast At Runtime                                                  Accessing Inbox In Android
Adding Image in Toast
Showing Toast for Longer Time


TelephonyManager                                                            Storage: Storing Data In Android
Using Telephony Manager In Android                                          SharedPreferences In Android
                                                                                              Reading and Writing files to Internal Stoarage

Working With Incoming Calls                                       DataBase :  Introduction of SQLiteDataBase
How To Handle Incoming Calls in Android                                Working With Database in Android
How to Forward an Incoming Call In Android                            Creating Table In Android
CALL States In Android                                                          Inserting, Deleting and Updating Records In Table in Android


Miscellaneous
Notifications In Android
How To Vibrate The Android Phone
Sending Email In Android
Opening a webpage In Browser
How to Access PhoneBook In Android
Prompt User Input with an AlertDialog
How to Hide Title Bar In Android
How to show an Activity in Landscape or Portrait Mode only.
How to Set an Image as Wallpaper.