Useful function to coerce value to a long, no matter what type of object is in the bundle - Android Android OS

Android examples for Android OS:Bundle

Description

Useful function to coerce value to a long, no matter what type of object is in the bundle

Demo Code

/**/*  w w w.  j  av  a 2  s .  co  m*/
 * 
 * Funf: Open Sensing Framework
 * Copyright (C) 2010-2011 Nadav Aharony, Wei Pan, Alex Pentland.
 * Acknowledgments: Alan Gardner
 * Contact: nadav@media.mit.edu
 * 
 * This file is part of Funf.
 * 
 * Funf is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as
 * published by the Free Software Foundation, either version 3 of
 * the License, or (at your option) any later version.
 * 
 * Funf is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 * See the GNU Lesser General Public License for more details.
 * 
 * You should have received a copy of the GNU Lesser General Public
 * License along with Funf. If not, see <http://www.gnu.org/licenses/>.
 * 
 */
import static edu.mit.media.funf.util.LogUtil.TAG;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import android.os.Bundle;
import android.os.Parcelable;
import android.util.Log;

public class Main{
    /**
     * Useful function to coerce value to a long, no matter what type of object is in the bundle
     * @param bundle
     * @param key
     * @param defaultValue
     * @return
     */
    public static long getLong(Bundle bundle, String key, long defaultValue) {
        Object value = bundle.get(key);
        if (value instanceof Long) {
            return (Long) value;
        } else if (value instanceof Integer) {
            return ((Integer) value).longValue();
        } else if (value instanceof String) {
            try {
                return Long.valueOf((String) value);
            } catch (NumberFormatException e) {
                // We did our best, value is not a long
            }
        }
        return defaultValue;
    }
}

Related Tutorials